Commit 6ac28cd2 authored by Bartosz Golaszewski's avatar Bartosz Golaszewski
Browse files

Merge tag 'ib-mfd-gpio-nvmem-v6.16' of...

Merge tag 'ib-mfd-gpio-nvmem-v6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd into gpio/for-next

Immutable branch between MFD, GPIO and NVMEM due for the v6.16 merge window
parents 3a1e0718 8824dc7f
Loading
Loading
Loading
Loading
+44 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/gpio/maxim,max77759-gpio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim Integrated MAX77759 GPIO

maintainers:
  - André Draszik <andre.draszik@linaro.org>

description: |
  This module is part of the MAX77759 PMIC. For additional information, see
  Documentation/devicetree/bindings/mfd/maxim,max77759.yaml.

  The MAX77759 is a PMIC integrating, amongst others, a GPIO controller
  including interrupt support for 2 GPIO lines.

properties:
  compatible:
    const: maxim,max77759-gpio

  "#gpio-cells":
    const: 2

  gpio-controller: true

  gpio-line-names:
    minItems: 1
    maxItems: 2

  "#interrupt-cells":
    const: 2

  interrupt-controller: true

required:
  - compatible
  - "#gpio-cells"
  - gpio-controller
  - "#interrupt-cells"
  - interrupt-controller

additionalProperties: false
+99 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/maxim,max77759.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim Integrated MAX77759 PMIC for USB Type-C applications

maintainers:
  - André Draszik <andre.draszik@linaro.org>

description: |
  This is a part of device tree bindings for the MAX77759 companion Power
  Management IC for USB Type-C applications.

  The MAX77759 includes Battery Charger, Fuel Gauge, temperature sensors, USB
  Type-C Port Controller (TCPC), NVMEM, and a GPIO expander.

properties:
  compatible:
    const: maxim,max77759

  interrupts:
    maxItems: 1

  interrupt-controller: true

  "#interrupt-cells":
    const: 2

  reg:
    maxItems: 1

  gpio:
    $ref: /schemas/gpio/maxim,max77759-gpio.yaml

  nvmem-0:
    $ref: /schemas/nvmem/maxim,max77759-nvmem.yaml

required:
  - compatible
  - interrupts
  - reg

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>

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

        pmic@66 {
            compatible = "maxim,max77759";
            reg = <0x66>;
            interrupts-extended = <&gpa8 3 IRQ_TYPE_LEVEL_LOW>;

            interrupt-controller;
            #interrupt-cells = <2>;

            gpio {
                compatible = "maxim,max77759-gpio";

                gpio-controller;
                #gpio-cells = <2>;

                interrupt-controller;
                #interrupt-cells = <2>;
            };

            nvmem-0 {
                compatible = "maxim,max77759-nvmem";

                nvmem-layout {
                    compatible = "fixed-layout";
                    #address-cells = <1>;
                    #size-cells = <1>;

                    reboot-mode@0 {
                        reg = <0x0 0x4>;
                    };

                    boot-reason@4 {
                        reg = <0x4 0x4>;
                    };

                    shutdown-user-flag@8 {
                        reg = <0x8 0x1>;
                    };

                    rsoc@10 {
                        reg = <0xa 0x2>;
                    };
                };
            };
        };
    };
+32 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/nvmem/maxim,max77759-nvmem.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim Integrated MAX77759 Non Volatile Memory

maintainers:
  - André Draszik <andre.draszik@linaro.org>

description: |
  This module is part of the MAX77759 PMIC. For additional information, see
  Documentation/devicetree/bindings/mfd/maxim,max77759.yaml.

  The MAX77759 is a PMIC integrating, amongst others, Non Volatile Memory
  (NVMEM) with 30 bytes of storage which can be used by software to store
  information or communicate with a boot loader.

properties:
  compatible:
    const: maxim,max77759-nvmem

  wp-gpios: false

required:
  - compatible

allOf:
  - $ref: nvmem.yaml#

unevaluatedProperties: false
+10 −0
Original line number Diff line number Diff line
@@ -14585,6 +14585,16 @@ F: Documentation/devicetree/bindings/mfd/maxim,max77714.yaml
F:	drivers/mfd/max77714.c
F:	include/linux/mfd/max77714.h
MAXIM MAX77759 PMIC MFD DRIVER
M:	André Draszik <andre.draszik@linaro.org>
L:	linux-kernel@vger.kernel.org
S:	Maintained
F:	Documentation/devicetree/bindings/*/maxim,max77759*.yaml
F:	drivers/gpio/gpio-max77759.c
F:	drivers/mfd/max77759.c
F:	drivers/nvmem/max77759-nvmem.c
F:	include/linux/mfd/max77759.h
MAXIM MAX77802 PMIC REGULATOR DEVICE DRIVER
M:	Javier Martinez Canillas <javier@dowhile0.org>
L:	linux-kernel@vger.kernel.org
+13 −0
Original line number Diff line number Diff line
@@ -1483,6 +1483,19 @@ config GPIO_MAX77650
	  GPIO driver for MAX77650/77651 PMIC from Maxim Semiconductor.
	  These chips have a single pin that can be configured as GPIO.

config GPIO_MAX77759
	tristate "Maxim Integrated MAX77759 GPIO support"
	depends on MFD_MAX77759
	default MFD_MAX77759
	select GPIOLIB_IRQCHIP
	help
	  GPIO driver for MAX77759 PMIC from Maxim Integrated.
	  There are two GPIOs available on these chips in total, both of
	  which can also generate interrupts.

	  This driver can also be built as a module. If so, the module will be
	  called gpio-max77759.

config GPIO_PALMAS
	bool "TI PALMAS series PMICs GPIO"
	depends on MFD_PALMAS
Loading