Commit cc52dc2f authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull pwm updates from Uwe Kleine-König:
 "This contains some cleanups to the core and some mostly minor updates
  to a bunch of drivers and device tree bindings. One thing worth
  pointing out is that it contains an immutable branch containing
  support for a new mfd chip (Analog Devices ADP5585) with several sub
  drivers.

  Thanks go to Andrew Kreimer, Clark Wang, Conor Dooley, David Lechner,
  Dmitry Rokosov, Frank Li, Geert Uytterhoeven, George Stark, Jiapeng
  Chong, Krzysztof Kozlowski, Laurent Pinchart, Liao Chen, Liu Ying, Rob
  Herring and Wolfram Sang for code contributions and reviews and to Lee
  Jones for preparing the above mentioned immutable branch"

* tag 'pwm/for-6.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ukleinek/linux: (21 commits)
  pwm: stm32: Fix a typo
  dt-bindings: pwm: amlogic: Add new bindings for meson A1 PWM
  dt-bindings: pwm: amlogic: Add optional power-domains
  pwm: Switch back to struct platform_driver::remove()
  dt-bindings: pwm: allwinner,sun4i-a10-pwm: add top-level constraints
  pwm: axi-pwmgen: use shared macro for version reg
  pwm: atmel-hlcdc: Drop trailing comma
  pwm: atmel-hlcdc: Enable module autoloading
  pwm: omap-dmtimer: Use of_property_read_bool()
  pwm: adp5585: Set OSC_EN bit to 1 when PWM state is enabled
  pwm: lp3943: Fix an incorrect type in lp3943_pwm_parse_dt()
  pwm: Simplify pwm_capture()
  pwm: lp3943: Use of_property_count_u32_elems() to get property length
  pwm: Don't export pwm_capture()
  pwm: Make info in traces about affected pwm more useful
  dt-bindings: pwm: renesas,tpu: Add r8a779h0 support
  dt-bindings: pwm: renesas,pwm-rcar: Add r8a779h0 support
  pwm: adp5585: Add Analog Devices ADP5585 support
  gpio: adp5585: Add Analog Devices ADP5585 support
  mfd: adp5585: Add Analog Devices ADP5585 core support
  ...
parents 7fced2a7 d242feaf
Loading
Loading
Loading
Loading
+92 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/adi,adp5585.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices ADP5585 Keypad Decoder and I/O Expansion

maintainers:
  - Laurent Pinchart <laurent.pinchart@ideasonboard.com>

description:
  The ADP5585 is a 10/11 input/output port expander with a built in keypad
  matrix decoder, programmable logic, reset generator, and PWM generator.

properties:
  compatible:
    items:
      - enum:
          - adi,adp5585-00  # Default
          - adi,adp5585-01  # 11 GPIOs
          - adi,adp5585-02  # No pull-up resistors by default on special pins
          - adi,adp5585-03  # Alternate I2C address
          - adi,adp5585-04  # Pull-down resistors on all pins by default
      - const: adi,adp5585

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  vdd-supply: true

  gpio-controller: true

  '#gpio-cells':
    const: 2

  gpio-reserved-ranges: true

  "#pwm-cells":
    const: 3

required:
  - compatible
  - reg
  - gpio-controller
  - "#gpio-cells"
  - "#pwm-cells"

allOf:
  - if:
      properties:
        compatible:
          contains:
            const: adi,adp5585-01
    then:
      properties:
        gpio-reserved-ranges: false
    else:
      properties:
        gpio-reserved-ranges:
          maxItems: 1
          items:
            items:
              - const: 5
              - const: 1

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        io-expander@34 {
            compatible = "adi,adp5585-00", "adi,adp5585";
            reg = <0x34>;

            vdd-supply = <&reg_3v3>;

            gpio-controller;
            #gpio-cells = <2>;
            gpio-reserved-ranges = <5 1>;

            #pwm-cells = <3>;
        };
    };

...
+5 −4
Original line number Diff line number Diff line
@@ -46,10 +46,11 @@ properties:
      - description: Module Clock
      - description: Bus Clock

  # Even though it only applies to subschemas under the conditionals,
  # not listing them here will trigger a warning because of the
  # additionalsProperties set to false.
  clock-names: true
  clock-names:
    minItems: 1
    items:
      - const: mod
      - const: bus

  resets:
    maxItems: 1
+17 −0
Original line number Diff line number Diff line
@@ -37,6 +37,10 @@ properties:
      - enum:
          - amlogic,meson8-pwm-v2
          - amlogic,meson-s4-pwm
      - items:
          - enum:
              - amlogic,meson-a1-pwm
          - const: amlogic,meson-s4-pwm
      - items:
          - enum:
              - amlogic,meson8b-pwm-v2
@@ -56,6 +60,9 @@ properties:
    minItems: 1
    maxItems: 2

  power-domains:
    maxItems: 1

  "#pwm-cells":
    const: 3

@@ -136,6 +143,16 @@ allOf:
      required:
        - clocks

  - if:
      properties:
        compatible:
          contains:
            enum:
              - amlogic,meson-a1-pwm
    then:
      required:
        - power-domains

additionalProperties: false

examples:
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ properties:
          - renesas,pwm-r8a77995  # R-Car D3
          - renesas,pwm-r8a779a0  # R-Car V3U
          - renesas,pwm-r8a779g0  # R-Car V4H
          - renesas,pwm-r8a779h0  # R-Car V4M
      - const: renesas,pwm-rcar

  reg:
+1 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ properties:
          - renesas,tpu-r8a77980  # R-Car V3H
          - renesas,tpu-r8a779a0  # R-Car V3U
          - renesas,tpu-r8a779g0  # R-Car V4H
          - renesas,tpu-r8a779h0  # R-Car V4M
      - const: renesas,tpu

  reg:
Loading