Commit 9441d6b8 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'extcon-next-for-6.18' of...

Merge tag 'extcon-next-for-6.18' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into char-misc-next

Chanwoo writes:

Update extcon next for v6.18

Detailed description for this pull request:
- Fix wakeup source leaks on device unbind for extcon drivers

- Add new Maxim MAX14526 MUIC extcon driver and dt-binding document
 : The MAX14526 is designed to simplify interface requirements on portable
   devices by multiplexing common inputs (USB, UART, Microphone, Stereo Audio
   and Composite Video) on a single micro/mini USB connector. The USB input
   supports Hi-Speed USB and the audio/video inputs feature
 : This provides the following supported external connector detection
   - EXTCON_USB
   - EXTCON_USB_HOST
   - EXTCON_CHG_USB_FAST
   - EXTCON_DISP_MHL

- Convert legacy DT binding to YAML of richktek,rt8973a-muic.yaml

- Add missing DT binding information of that must include either id-gpios or
  vbus-gpios for linux,extcon-usb-gpio.yaml

* tag 'extcon-next-for-6.18' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon:
  dt-bindings: extcon: linux,extcon-usb-gpio: GPIO must be provided
  dt-bindings: extcon: rt8973a: Convert DT bindings to YAML
  extcon: max14526: depends on I2C to prevent build warning/errors
  extcon: max14526: avoid defined but not used warning
  extcon: Add basic support for Maxim MAX14526 MUIC
  dt-bindings: extcon: Document Maxim MAX14526 MUIC
  extcon: adc-jack: Cleanup wakeup source only if it was enabled
  extcon: qcom-spmi-misc: Fix wakeup source leaks on device unbind
  extcon: fsa9480: Fix wakeup source leaks on device unbind
  extcon: axp288: Fix wakeup source leaks on device unbind
  extcon: adc-jack: Fix wakeup source leaks on device unbind
parents 4a58aac5 94d885eb
Loading
Loading
Loading
Loading
+0 −23
Original line number Diff line number Diff line

* Richtek RT8973A - Micro USB Switch device

The Richtek RT8973A is Micro USB Switch with OVP and I2C interface. The RT8973A
is a USB port accessory detector and switch that is optimized to protect low
voltage system from abnormal high input voltage (up to 28V) and supports high
speed USB operation. Also, RT8973A support 'auto-configuration' mode.
If auto-configuration mode is enabled, RT8973A would control internal h/w patch
for USB D-/D+ switching.

Required properties:
- compatible: Should be "richtek,rt8973a-muic"
- reg: Specifies the I2C slave address of the MUIC block. It should be 0x14
- interrupts: Interrupt specifiers for detection interrupt sources.

Example:

	rt8973a@14 {
		compatible = "richtek,rt8973a-muic";
		interrupt-parent = <&gpx1>;
		interrupts = <5 0>;
		reg = <0x14>;
	};
+6 −0
Original line number Diff line number Diff line
@@ -25,6 +25,12 @@ properties:
required:
  - compatible

anyOf:
  - required:
      - id-gpios
  - required:
      - vbus-gpios

additionalProperties: false

examples:
+80 −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/extcon/maxim,max14526.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim MAX14526 MicroUSB Integrated Circuit (MUIC)

maintainers:
  - Svyatoslav Ryhel <clamor95@gmail.com>

properties:
  compatible:
    const: maxim,max14526

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  connector:
    $ref: /schemas/connector/usb-connector.yaml#

  port:
    $ref: /schemas/graph.yaml#/properties/port

required:
  - compatible
  - reg
  - interrupts
  - connector
  - port

unevaluatedProperties: false

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

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

        muic@44 {
            compatible = "maxim,max14526";
            reg = <0x44>;

            interrupt-parent = <&gpio>;
            interrupts = <72 IRQ_TYPE_EDGE_FALLING>;

            connector {
                compatible = "usb-b-connector";
                label = "micro-USB";
                type = "micro";
            };

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

                muic_to_charger: endpoint@0 {
                    reg = <0>;
                    remote-endpoint = <&charger_input>;
                };

                muic_to_usb: endpoint@1 {
                    reg = <1>;
                    remote-endpoint = <&usb_input>;
                };

                muic_to_mhl: endpoint@2 {
                    reg = <2>;
                    remote-endpoint = <&mhl_input>;
                };
            };
        };
    };
...
+49 −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/extcon/richtek,rt8973a-muic.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Richtek RT8973A MUIC

maintainers:
  - Chanwoo Choi <cw00.choi@samsung.com>

description:
  The Richtek RT8973A is Micro USB Switch with OVP and I2C interface. The RT8973A
  is a USB port accessory detector and switch that is optimized to protect low
  voltage system from abnormal high input voltage (up to 28V) and supports high
  speed USB operation. Also, RT8973A support 'auto-configuration' mode.
  If auto-configuration mode is enabled, RT8973A would control internal h/w patch
  for USB D-/D+ switching.

properties:
  compatible:
    const: richtek,rt8973a-muic

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

required:
  - compatible
  - reg
  - interrupts

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
        usb-switch@14 {
          compatible = "richtek,rt8973a-muic";
          reg = <0x14>;
          interrupt-parent = <&gpio>;
          interrupts = <1 IRQ_TYPE_EDGE_FALLING>;
        };
    };
+13 −0
Original line number Diff line number Diff line
@@ -134,6 +134,19 @@ config EXTCON_MAX8997
	  Maxim MAX8997 PMIC. The MAX8997 MUIC is a USB port accessory
	  detector and switch.

config EXTCON_MAX14526
	tristate "Maxim MAX14526 EXTCON Support"
	depends on I2C
	select IRQ_DOMAIN
	select REGMAP_I2C
	help
	  If you say yes here you get support for the Maxim MAX14526
	  MUIC device. The MAX14526 MUIC is a USB port accessory
	  detector and switch. The MAX14526 is designed to simplify
	  interface requirements on portable devices by multiplexing
	  common inputs (USB, UART, Microphone, Stereo Audio and
	  Composite Video) on a single micro/mini USB connector.

config EXTCON_PALMAS
	tristate "Palmas USB EXTCON support"
	depends on MFD_PALMAS
Loading