2022-05-09 04:13:36

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 00/11] dt-bindings/pinctrl/arm: qcom: minor cleanups of QCOM PMIC pinctrl

Hi,

The patches are independent, so they can be picked up as is.

Not really tested on hardware (except SDM845).

Best regards,
Krzysztof

Krzysztof Kozlowski (11):
dt-bindings: pinctrl: qcom,pmic-gpio: document PM8150L and PMM8155AU
dt-bindings: pinctrl: qcom,pmic-gpio: fix matching pin config
dt-bindings: pinctrl: qcom,pmic-gpio: describe gpio-line-names
dt-bindings: pinctrl: qcom,pmic-gpio: add 'input-disable'
arm64: dts: qcom: align PMIC GPIO pin configuration with DT schema
arm64: dts: qcom: add fallback compatible to PMIC GPIOs
arm64: dts: qcom: apq8096-db820c: add PM8994 pin function
arm64: dts: qcom: msm8994-msft-lumia-octagon: add PM8994 pin
properties
ARM: dts: qcom: align PMIC GPIO pin configuration with DT schema
ARM: dts: qcom: mdm9615: add missing PMIC GPIO reg
ARM: dts: qcom: pmx65: add fallback compatible to PMIC GPIO

.../bindings/pinctrl/qcom,pmic-gpio.yaml | 230 +++++++++++++++++-
.../arm/boot/dts/qcom-apq8060-dragonboard.dts | 20 +-
arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts | 4 +-
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 8 +-
.../qcom-apq8064-sony-xperia-lagan-yuga.dts | 2 +-
arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi | 2 +-
arch/arm/boot/dts/qcom-mdm9615.dtsi | 1 +
.../qcom-msm8974-lge-nexus5-hammerhead.dts | 8 +-
.../dts/qcom-msm8974-sony-xperia-rhine.dtsi | 2 +-
.../dts/qcom-msm8974pro-fairphone-fp2.dts | 2 +-
.../boot/dts/qcom-msm8974pro-samsung-klte.dts | 14 +-
...-msm8974pro-sony-xperia-shinano-castor.dts | 10 +-
arch/arm/boot/dts/qcom-pm8941.dtsi | 2 +-
arch/arm/boot/dts/qcom-pmx65.dtsi | 2 +-
arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 10 +-
arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 17 +-
.../qcom/msm8916-samsung-a2015-common.dtsi | 2 +-
.../dts/qcom/msm8994-msft-lumia-octagon.dtsi | 19 +-
.../dts/qcom/msm8996-sony-xperia-tone.dtsi | 70 +++---
.../boot/dts/qcom/msm8996-xiaomi-common.dtsi | 8 +-
.../boot/dts/qcom/msm8996-xiaomi-gemini.dts | 2 +-
.../boot/dts/qcom/msm8998-fxtec-pro1.dts | 6 +-
.../dts/qcom/msm8998-oneplus-cheeseburger.dts | 2 +-
.../boot/dts/qcom/msm8998-oneplus-common.dtsi | 2 +-
.../msm8998-sony-xperia-yoshino-maple.dts | 2 +-
.../dts/qcom/msm8998-sony-xperia-yoshino.dtsi | 12 +-
arch/arm64/boot/dts/qcom/pm6350.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm660.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8009.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8150.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8150b.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8150l.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8350.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8350b.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8916.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pmm8155au_2.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pmr735b.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pms405.dtsi | 2 +-
arch/arm64/boot/dts/qcom/qcs404-evb.dtsi | 4 +-
arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 2 +-
arch/arm64/boot/dts/qcom/sc7180-idp.dts | 2 +-
arch/arm64/boot/dts/qcom/sc7280-idp.dtsi | 2 +-
arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi | 4 +-
arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 6 +-
.../boot/dts/qcom/sdm845-oneplus-common.dtsi | 4 +-
.../boot/dts/qcom/sdm845-shift-axolotl.dts | 2 +-
.../boot/dts/qcom/sdm845-xiaomi-beryllium.dts | 2 +-
.../boot/dts/qcom/sm7225-fairphone-fp4.dts | 2 +-
49 files changed, 373 insertions(+), 142 deletions(-)

--
2.32.0



2022-05-09 04:29:12

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 02/11] dt-bindings: pinctrl: qcom,pmic-gpio: fix matching pin config

Matching PMIC GPIOs config nodes within a '-state' node by '.*' pattern
does not work as expected because of linux,phandle in the DTB:

arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon-cityman.dtb: gpios@c000: divclk4-state: 'oneOf' conditional failed, one must be fixed:
'pins' is a required property
'function' is a required property
'pinconf' does not match any of the regexes: 'pinctrl-[0-9]+'
[[2]] is not of type 'object'

Make the schema stricter and expect such nodes to be either named
'pinconfig' or followed with '-pins' prefix.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
index 23d6b9165e20..c266aa3f05c1 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
@@ -95,8 +95,9 @@ patternProperties:
oneOf:
- $ref: "#/$defs/qcom-pmic-gpio-state"
- patternProperties:
- ".*":
+ "(pinconf|-pins)$":
$ref: "#/$defs/qcom-pmic-gpio-state"
+ additionalProperties: false

$defs:
qcom-pmic-gpio-state:
@@ -237,7 +238,7 @@ examples:
#gpio-cells = <2>;

pm8921_gpio_keys: gpio-keys-state {
- volume-keys {
+ volume-keys-pins {
pins = "gpio20", "gpio21";
function = "normal";

--
2.32.0


2022-05-09 04:48:00

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 04/11] dt-bindings: pinctrl: qcom,pmic-gpio: add 'input-disable'

'input-disable' is already used and supported by common pinctrl
bindings, so add it also here to fix warnings like:

arch/arm64/boot/dts/qcom/qrb5165-rb5.dtb: gpio@c000: lt9611-rst-state: 'oneOf' conditional failed, one must be fixed:
'input-disable' does not match any of the regexes: 'pinctrl-[0-9]+'
'function', 'input-disable', 'output-high', 'pins', 'power-source' do not match any of the regexes: '(pinconf|-pins)$', 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml | 1 +
1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
index 33eb52660291..7e74a87ccc39 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
@@ -401,6 +401,7 @@ $defs:

bias-high-impedance: true
input-enable: true
+ input-disable: true
output-high: true
output-low: true
output-enable: true
--
2.32.0


2022-05-09 05:08:26

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 09/11] ARM: dts: qcom: align PMIC GPIO pin configuration with DT schema

DT schema expects PMIC GPIO pin configuration nodes to be named with
'-state' suffix. Optional children should be either 'pinconf' or
followed with '-pins' suffix.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../arm/boot/dts/qcom-apq8060-dragonboard.dts | 20 +++++++++----------
arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts | 4 ++--
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 8 ++++----
.../qcom-apq8064-sony-xperia-lagan-yuga.dts | 2 +-
arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi | 2 +-
.../qcom-msm8974-lge-nexus5-hammerhead.dts | 8 ++++----
.../dts/qcom-msm8974-sony-xperia-rhine.dtsi | 2 +-
.../dts/qcom-msm8974pro-fairphone-fp2.dts | 2 +-
.../boot/dts/qcom-msm8974pro-samsung-klte.dts | 14 ++++++-------
...-msm8974pro-sony-xperia-shinano-castor.dts | 10 +++++-----
arch/arm/boot/dts/qcom-pm8941.dtsi | 2 +-
11 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts b/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts
index 138d6478ac84..a104acbfee05 100644
--- a/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts
+++ b/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts
@@ -273,7 +273,7 @@ MATRIX_KEY(4, 3, KEY_KBDILLUMTOGGLE)
};

gpio@150 {
- dragon_ethernet_gpios: ethernet-gpios {
+ dragon_ethernet_gpios: ethernet-state {
pinconf {
pins = "gpio7";
function = "normal";
@@ -282,7 +282,7 @@ pinconf {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_bmp085_gpios: bmp085-gpios {
+ dragon_bmp085_gpios: bmp085-state {
pinconf {
pins = "gpio16";
function = "normal";
@@ -291,7 +291,7 @@ pinconf {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_mpu3050_gpios: mpu3050-gpios {
+ dragon_mpu3050_gpios: mpu3050-state {
pinconf {
pins = "gpio17";
function = "normal";
@@ -300,7 +300,7 @@ pinconf {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_sdcc3_gpios: sdcc3-gpios {
+ dragon_sdcc3_gpios: sdcc3-state {
pinconf {
pins = "gpio22";
function = "normal";
@@ -309,7 +309,7 @@ pinconf {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_sdcc5_gpios: sdcc5-gpios {
+ dragon_sdcc5_gpios: sdcc5-state {
pinconf {
pins = "gpio26";
function = "normal";
@@ -319,7 +319,7 @@ pinconf {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_ak8975_gpios: ak8975-gpios {
+ dragon_ak8975_gpios: ak8975-state {
pinconf {
pins = "gpio33";
function = "normal";
@@ -328,9 +328,9 @@ pinconf {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_cm3605_gpios: cm3605-gpios {
+ dragon_cm3605_gpios: cm3605-state {
/* Pin 34 connected to the proxy IRQ */
- pinconf_gpio34 {
+ gpio34-pins {
pins = "gpio34";
function = "normal";
input-enable;
@@ -338,7 +338,7 @@ pinconf_gpio34 {
power-source = <PM8058_GPIO_S3>;
};
/* Pin 35 connected to ASET */
- pinconf_gpio35 {
+ gpio35-pins {
pins = "gpio35";
function = "normal";
output-high;
@@ -346,7 +346,7 @@ pinconf_gpio35 {
power-source = <PM8058_GPIO_S3>;
};
};
- dragon_veth_gpios: veth-gpios {
+ dragon_veth_gpios: veth-state {
pinconf {
pins = "gpio40";
function = "normal";
diff --git a/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts b/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
index e068a8d0adf0..7e57a0750320 100644
--- a/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-cm-qs600.dts
@@ -196,8 +196,8 @@ v3p3_fixed: v3p3 {
qcom,ssbi@500000 {
pmic@0 {
gpio@150 {
- wlan_default_gpios: wlan-gpios {
- pios {
+ wlan_default_gpios: wlan-gpios-state {
+ pinconf {
pins = "gpio43";
function = "normal";
bias-disable;
diff --git a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
index 2638b380be20..77e841243646 100644
--- a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
@@ -291,8 +291,8 @@ pci@1b500000 {
qcom,ssbi@500000 {
pmic@0 {
gpio@150 {
- wlan_default_gpios: wlan-gpios {
- pios {
+ wlan_default_gpios: wlan-gpios-state {
+ pinconf {
pins = "gpio43";
function = "normal";
bias-disable;
@@ -300,8 +300,8 @@ pios {
};
};

- notify_led: nled {
- pios {
+ notify_led: nled-state {
+ pinconf {
pins = "gpio18";
function = "normal";
bias-disable;
diff --git a/arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dts b/arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dts
index 0cee62c7b8b0..3cf79cc5b539 100644
--- a/arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dts
@@ -334,7 +334,7 @@ ncp {
qcom,ssbi@500000 {
pmic@0 {
gpio@150 {
- gpio_keys_pin_a: gpio-keys-pin-active {
+ gpio_keys_pin_a: gpio-keys-active-state {
pins = "gpio3", "gpio4", "gpio29", "gpio35";
function = "normal";

diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi b/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
index 10ad929759ed..49de1821ac3a 100644
--- a/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
+++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
@@ -114,7 +114,7 @@ pins {
};

&pmicgpio {
- usb_vbus_5v_pins: usb_vbus_5v_pins {
+ usb_vbus_5v_pins: usb-vbus-5v-state {
pins = "gpio4";
function = "normal";
output-high;
diff --git a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
index 9493886a5c0d..4d8fc8689d24 100644
--- a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
@@ -272,7 +272,7 @@ phy@a {
};

&pm8941_gpios {
- gpio_keys_pin_a: gpio-keys-active {
+ gpio_keys_pin_a: gpio-keys-active-state {
pins = "gpio2", "gpio3";
function = "normal";

@@ -280,7 +280,7 @@ gpio_keys_pin_a: gpio-keys-active {
power-source = <PM8941_GPIO_S3>;
};

- fuelgauge_pin: fuelgauge-int {
+ fuelgauge_pin: fuelgauge-int-state {
pins = "gpio9";
function = "normal";

@@ -289,7 +289,7 @@ fuelgauge_pin: fuelgauge-int {
power-source = <PM8941_GPIO_S3>;
};

- wlan_sleep_clk_pin: wl-sleep-clk {
+ wlan_sleep_clk_pin: wl-sleep-clk-state {
pins = "gpio16";
function = "func2";

@@ -297,7 +297,7 @@ wlan_sleep_clk_pin: wl-sleep-clk {
power-source = <PM8941_GPIO_S3>;
};

- wlan_regulator_pin: wl-reg-active {
+ wlan_regulator_pin: wl-reg-active-state {
pins = "gpio17";
function = "normal";

diff --git a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi
index 1d21de46f85c..a4fec2d0d158 100644
--- a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-rhine.dtsi
@@ -163,7 +163,7 @@ &pm8941_coincell {
};

&pm8941_gpios {
- gpio_keys_pin_a: gpio-keys-active {
+ gpio_keys_pin_a: gpio-keys-active-state {
pins = "gpio2", "gpio3", "gpio4", "gpio5";
function = "normal";

diff --git a/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts b/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts
index 26fc2002e5c3..7bfea4a96896 100644
--- a/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts
+++ b/arch/arm/boot/dts/qcom-msm8974pro-fairphone-fp2.dts
@@ -95,7 +95,7 @@ phy@a {
};

&pm8941_gpios {
- gpio_keys_pin_a: gpio-keys-active {
+ gpio_keys_pin_a: gpio-keys-active-state {
pins = "gpio1", "gpio2", "gpio5";
function = "normal";

diff --git a/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts b/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
index d6b2300a8223..90f7a399f40b 100644
--- a/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
+++ b/arch/arm/boot/dts/qcom-msm8974pro-samsung-klte.dts
@@ -398,7 +398,7 @@ phy@a {
};

&pma8084_gpios {
- gpio_keys_pin_a: gpio-keys-active {
+ gpio_keys_pin_a: gpio-keys-active-state {
pins = "gpio2", "gpio3", "gpio5";
function = "normal";

@@ -406,7 +406,7 @@ gpio_keys_pin_a: gpio-keys-active {
power-source = <PMA8084_GPIO_S4>;
};

- touchkey_pin: touchkey-int-pin {
+ touchkey_pin: touchkey-int-state {
pins = "gpio6";
function = "normal";
bias-disable;
@@ -414,7 +414,7 @@ touchkey_pin: touchkey-int-pin {
power-source = <PMA8084_GPIO_S4>;
};

- touch_pin: touchscreen-int-pin {
+ touch_pin: touchscreen-int-state {
pins = "gpio8";
function = "normal";
bias-disable;
@@ -422,7 +422,7 @@ touch_pin: touchscreen-int-pin {
power-source = <PMA8084_GPIO_S4>;
};

- panel_en_pin: panel-en-pin {
+ panel_en_pin: panel-en-state {
pins = "gpio14";
function = "normal";
bias-pull-up;
@@ -430,7 +430,7 @@ panel_en_pin: panel-en-pin {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
};

- wlan_sleep_clk_pin: wlan-sleep-clk-pin {
+ wlan_sleep_clk_pin: wlan-sleep-clk-state {
pins = "gpio16";
function = "func2";

@@ -439,7 +439,7 @@ wlan_sleep_clk_pin: wlan-sleep-clk-pin {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
};

- panel_rst_pin: panel-rst-pin {
+ panel_rst_pin: panel-rst-state {
pins = "gpio17";
function = "normal";
bias-disable;
@@ -447,7 +447,7 @@ panel_rst_pin: panel-rst-pin {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
};

- fuelgauge_pin: fuelgauge-int-pin {
+ fuelgauge_pin: fuelgauge-int-state {
pins = "gpio21";
function = "normal";
bias-disable;
diff --git a/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts b/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
index 9bd8faea61a5..e9bcd3b4ebb3 100644
--- a/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
+++ b/arch/arm/boot/dts/qcom-msm8974pro-sony-xperia-shinano-castor.dts
@@ -244,7 +244,7 @@ &pm8941_coincell {
};

&pm8941_gpios {
- gpio_keys_pin_a: gpio-keys-active {
+ gpio_keys_pin_a: gpio-keys-active-state {
pins = "gpio2", "gpio5";
function = "normal";

@@ -252,7 +252,7 @@ gpio_keys_pin_a: gpio-keys-active {
power-source = <PM8941_GPIO_S3>;
};

- bt_reg_on_pin: bt-reg-on {
+ bt_reg_on_pin: bt-reg-on-state {
pins = "gpio16";
function = "normal";

@@ -260,7 +260,7 @@ bt_reg_on_pin: bt-reg-on {
power-source = <PM8941_GPIO_S3>;
};

- wlan_sleep_clk_pin: wl-sleep-clk {
+ wlan_sleep_clk_pin: wl-sleep-clk-state {
pins = "gpio17";
function = "func2";

@@ -268,7 +268,7 @@ wlan_sleep_clk_pin: wl-sleep-clk {
power-source = <PM8941_GPIO_S3>;
};

- wlan_regulator_pin: wl-reg-active {
+ wlan_regulator_pin: wl-reg-active-state {
pins = "gpio18";
function = "normal";

@@ -276,7 +276,7 @@ wlan_regulator_pin: wl-reg-active {
power-source = <PM8941_GPIO_S3>;
};

- lcd_dcdc_en_pin_a: lcd-dcdc-en-active {
+ lcd_dcdc_en_pin_a: lcd-dcdc-en-active-state {
pins = "gpio20";
function = "normal";

diff --git a/arch/arm/boot/dts/qcom-pm8941.dtsi b/arch/arm/boot/dts/qcom-pm8941.dtsi
index cdd2bdb77b32..a68634397938 100644
--- a/arch/arm/boot/dts/qcom-pm8941.dtsi
+++ b/arch/arm/boot/dts/qcom-pm8941.dtsi
@@ -68,7 +68,7 @@ pm8941_gpios: gpios@c000 {
interrupt-controller;
#interrupt-cells = <2>;

- boost_bypass_n_pin: boost-bypass {
+ boost_bypass_n_pin: boost-bypass-state {
pins = "gpio21";
function = "normal";
};
--
2.32.0


2022-05-09 06:30:19

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 08/11] arm64: dts: qcom: msm8994-msft-lumia-octagon: add PM8994 pin properties

The bindings require that every pin configuration comes with 'function'
property. There is also no 'drive-strength' property but
'qcom,drive-strength':

msm8994-msft-lumia-octagon-cityman.dtb: gpios@c000: amsel-high-state: 'oneOf' conditional failed, one must be fixed:
'drive-strength' does not match any of the regexes: 'pinctrl-[0-9]+'
'bias-pull-up', 'drive-strength', 'function', 'pins' do not match any of the regexes: '(pinconf|-pins)$', 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <[email protected]>

---

Not tested on hardware.
---
arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi b/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi
index 9161b9e1bda1..abe746e88ce1 100644
--- a/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi
@@ -521,19 +521,22 @@ &pmi8994_gpios {
*/
hd3ss460_pol: pol-low-state {
pins = "gpio8";
- drive-strength = <3>;
+ function = PMIC_GPIO_FUNC_NORMAL;
+ qcom,drive-strength = <3>;
bias-pull-down;
};

hd3ss460_amsel: amsel-high-state {
pins = "gpio9";
- drive-strength = <1>;
+ function = PMIC_GPIO_FUNC_NORMAL;
+ qcom,drive-strength = <1>;
bias-pull-up;
};

hd3ss460_en: en-high-state {
pins = "gpio10";
- drive-strength = <1>;
+ function = PMIC_GPIO_FUNC_NORMAL;
+ qcom,drive-strength = <1>;
bias-pull-up;
};
};
--
2.32.0


2022-05-09 06:37:43

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 07/11] arm64: dts: qcom: apq8096-db820c: add PM8994 pin function

The bindings require that every pin configuration comes with 'function'
property. Add such to PM8994 GPIO5.

Signed-off-by: Krzysztof Kozlowski <[email protected]>

---

Not tested on hardware.
---
arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
index e0e965f4dd2f..ad6780151b4f 100644
--- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
+++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
@@ -558,6 +558,7 @@ &pm8994_gpios {
ls_exp_gpio_f: pm8994-gpio5-state {
pinconf {
pins = "gpio5";
+ function = PMIC_GPIO_FUNC_NORMAL;
output-low;
power-source = <2>; // PM8994_GPIO_S4, 1.8V
};
--
2.32.0


2022-05-09 06:57:17

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 01/11] dt-bindings: pinctrl: qcom,pmic-gpio: document PM8150L and PMM8155AU

Add missing compatibles for devices: PM8150L and PMM8155AU.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml | 3 +++
1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
index 22dbcba752d0..23d6b9165e20 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml
@@ -32,6 +32,7 @@ properties:
- qcom,pm8058-gpio
- qcom,pm8150-gpio
- qcom,pm8150b-gpio
+ - qcom,pm8150l-gpio
- qcom,pm8226-gpio
- qcom,pm8350-gpio
- qcom,pm8350b-gpio
@@ -49,6 +50,7 @@ properties:
- qcom,pmi8994-gpio
- qcom,pmi8998-gpio
- qcom,pmk8350-gpio
+ - qcom,pmm8155au-gpio
- qcom,pmr735a-gpio
- qcom,pmr735b-gpio
- qcom,pms405-gpio
@@ -135,6 +137,7 @@ $defs:
- gpio1-gpio2 for pmi8950
- gpio1-gpio10 for pmi8994
- gpio1-gpio4 for pmk8350
+ - gpio1-gpio10 for pmm8155au
- gpio1-gpio4 for pmr735a
- gpio1-gpio4 for pmr735b
- gpio1-gpio12 for pms405 (holes on gpio1, gpio9
--
2.32.0


2022-05-09 07:43:10

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 10/11] ARM: dts: qcom: mdm9615: add missing PMIC GPIO reg

'reg' property is required in SSBI children:
qcom-mdm9615-wp8548-mangoh-green.dtb: gpio@150: 'reg' is a required property

Fixes: 2c5e596524e7 ("ARM: dts: Add MDM9615 dtsi")
Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
arch/arm/boot/dts/qcom-mdm9615.dtsi | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm/boot/dts/qcom-mdm9615.dtsi b/arch/arm/boot/dts/qcom-mdm9615.dtsi
index 8f0752ce1c7b..0ce0d04bd994 100644
--- a/arch/arm/boot/dts/qcom-mdm9615.dtsi
+++ b/arch/arm/boot/dts/qcom-mdm9615.dtsi
@@ -321,6 +321,7 @@ rtc@11d {

pmicgpio: gpio@150 {
compatible = "qcom,pm8018-gpio", "qcom,ssbi-gpio";
+ reg = <0x150>;
interrupt-controller;
#interrupt-cells = <2>;
gpio-controller;
--
2.32.0


2022-05-09 09:01:08

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 05/11] arm64: dts: qcom: align PMIC GPIO pin configuration with DT schema

DT schema expects PMIC GPIO pin configuration nodes to be named with
'-state' suffix. Optional children should be either 'pinconf' or
followed with '-pins' suffix. This fixes dtbs_check warnings like:

sdm845-xiaomi-beryllium.dtb: gpios@c000: 'vol-up-active' does not match any of the regexes: '-state$', 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 10 +--
arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 16 ++---
.../qcom/msm8916-samsung-a2015-common.dtsi | 2 +-
.../dts/qcom/msm8994-msft-lumia-octagon.dtsi | 10 +--
.../dts/qcom/msm8996-sony-xperia-tone.dtsi | 70 +++++++++----------
.../boot/dts/qcom/msm8996-xiaomi-common.dtsi | 8 +--
.../boot/dts/qcom/msm8996-xiaomi-gemini.dts | 2 +-
.../boot/dts/qcom/msm8998-fxtec-pro1.dts | 6 +-
.../dts/qcom/msm8998-oneplus-cheeseburger.dts | 2 +-
.../boot/dts/qcom/msm8998-oneplus-common.dtsi | 2 +-
.../msm8998-sony-xperia-yoshino-maple.dts | 2 +-
.../dts/qcom/msm8998-sony-xperia-yoshino.dtsi | 12 ++--
arch/arm64/boot/dts/qcom/qcs404-evb.dtsi | 4 +-
arch/arm64/boot/dts/qcom/qrb5165-rb5.dts | 2 +-
arch/arm64/boot/dts/qcom/sc7180-idp.dts | 2 +-
arch/arm64/boot/dts/qcom/sc7280-idp.dtsi | 2 +-
arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi | 4 +-
arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 6 +-
.../boot/dts/qcom/sdm845-oneplus-common.dtsi | 4 +-
.../boot/dts/qcom/sdm845-shift-axolotl.dts | 2 +-
.../boot/dts/qcom/sdm845-xiaomi-beryllium.dts | 2 +-
.../boot/dts/qcom/sm7225-fairphone-fp4.dts | 2 +-
22 files changed, 86 insertions(+), 86 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
index 7c1eab605c15..79254841715b 100644
--- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
+++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
@@ -773,7 +773,7 @@ &pm8916_gpios {
"USB_HUB_RESET_N_PM",
"USB_SW_SEL_PM";

- usb_hub_reset_pm: usb-hub-reset-pm {
+ usb_hub_reset_pm: usb-hub-reset-pm-state {
pins = "gpio3";
function = PMIC_GPIO_FUNC_NORMAL;

@@ -781,14 +781,14 @@ usb_hub_reset_pm: usb-hub-reset-pm {
output-high;
};

- usb_hub_reset_pm_device: usb-hub-reset-pm-device {
+ usb_hub_reset_pm_device: usb-hub-reset-pm-device-state {
pins = "gpio3";
function = PMIC_GPIO_FUNC_NORMAL;

output-low;
};

- usb_sw_sel_pm: usb-sw-sel-pm {
+ usb_sw_sel_pm: usb-sw-sel-pm-state {
pins = "gpio4";
function = PMIC_GPIO_FUNC_NORMAL;

@@ -797,7 +797,7 @@ usb_sw_sel_pm: usb-sw-sel-pm {
output-high;
};

- usb_sw_sel_pm_device: usb-sw-sel-pm-device {
+ usb_sw_sel_pm_device: usb-sw-sel-pm-device-state {
pins = "gpio4";
function = PMIC_GPIO_FUNC_NORMAL;

@@ -806,7 +806,7 @@ usb_sw_sel_pm_device: usb-sw-sel-pm-device {
output-low;
};

- pm8916_gpios_leds: pm8916-gpios-leds {
+ pm8916_gpios_leds: pm8916-gpios-leds-state {
pins = "gpio1", "gpio2";
function = PMIC_GPIO_FUNC_NORMAL;

diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
index 49afbb1a066a..e0e965f4dd2f 100644
--- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
+++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dts
@@ -555,7 +555,7 @@ &pm8994_gpios {
pinctrl-names = "default";
pinctrl-0 = <&ls_exp_gpio_f &bt_en_gpios>;

- ls_exp_gpio_f: pm8994_gpio5 {
+ ls_exp_gpio_f: pm8994-gpio5-state {
pinconf {
pins = "gpio5";
output-low;
@@ -563,7 +563,7 @@ pinconf {
};
};

- bt_en_gpios: bt_en_gpios {
+ bt_en_gpios: bt-en-pios-state {
pinconf {
pins = "gpio19";
function = PMIC_GPIO_FUNC_NORMAL;
@@ -574,7 +574,7 @@ pinconf {
};
};

- wlan_en_gpios: wlan_en_gpios {
+ wlan_en_gpios: wlan-en-gpios-state {
pinconf {
pins = "gpio8";
function = PMIC_GPIO_FUNC_NORMAL;
@@ -585,7 +585,7 @@ pinconf {
};
};

- audio_mclk: clk_div1 {
+ audio_mclk: clk-div1-state {
pinconf {
pins = "gpio15";
function = "func1";
@@ -593,7 +593,7 @@ pinconf {
};
};

- volume_up_gpio: pm8996_gpio2 {
+ volume_up_gpio: pm8996-gpio2-state {
pinconf {
pins = "gpio2";
function = "normal";
@@ -605,7 +605,7 @@ pinconf {
};
};

- divclk4_pin_a: divclk4 {
+ divclk4_pin_a: divclk4-state {
pinconf {
pins = "gpio18";
function = PMIC_GPIO_FUNC_FUNC2;
@@ -615,7 +615,7 @@ pinconf {
};
};

- usb3_vbus_det_gpio: pm8996_gpio22 {
+ usb3_vbus_det_gpio: pm8996-gpio22-state {
pinconf {
pins = "gpio22";
function = PMIC_GPIO_FUNC_NORMAL;
@@ -671,7 +671,7 @@ &pmi8994_gpios {
"NC",
"NC";

- usb2_vbus_det_gpio: pmi8996_gpio6 {
+ usb2_vbus_det_gpio: pmi8996-gpio6-state {
pinconf {
pins = "gpio6";
function = PMIC_GPIO_FUNC_NORMAL;
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi
index 9b4b7de7cec2..636a3b6ba7dc 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-a2015-common.dtsi
@@ -463,7 +463,7 @@ tsp_en_default: tsp-en-default {
};

&pm8916_gpios {
- nfc_clk_req: nfc-clk-req {
+ nfc_clk_req: nfc-clk-req-state {
pins = "gpio2";
function = "func1";

diff --git a/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi b/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi
index cc038f9b641f..9161b9e1bda1 100644
--- a/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon.dtsi
@@ -470,7 +470,7 @@ qca6174_bt: bluetooth {
};

&pm8994_gpios {
- bt_en_gpios: bt_en_gpios {
+ bt_en_gpios: bt-en-gpios-state {
pinconf {
pins = "gpio19";
function = PMIC_GPIO_FUNC_NORMAL;
@@ -481,7 +481,7 @@ pinconf {
};
};

- divclk4_pin_a: divclk4 {
+ divclk4_pin_a: divclk4-state {
pinconf {
pins = "gpio18";
function = PMIC_GPIO_FUNC_FUNC2;
@@ -519,19 +519,19 @@ &pmi8994_gpios {
* TODO: remove once a driver is available
* TODO: add VBUS GPIO 5
*/
- hd3ss460_pol: pol_low {
+ hd3ss460_pol: pol-low-state {
pins = "gpio8";
drive-strength = <3>;
bias-pull-down;
};

- hd3ss460_amsel: amsel_high {
+ hd3ss460_amsel: amsel-high-state {
pins = "gpio9";
drive-strength = <1>;
bias-pull-up;
};

- hd3ss460_en: en_high {
+ hd3ss460_en: en-high-state {
pins = "gpio10";
drive-strength = <1>;
bias-pull-up;
diff --git a/arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone.dtsi b/arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone.dtsi
index ca3c633f5a45..d0cacb7d8c2a 100644
--- a/arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8996-sony-xperia-tone.dtsi
@@ -247,14 +247,14 @@ &pm8994_gpios {
* probably a reason for it, and just to be on the safe side, we follow suit.
*/
pm8994_gpios_defaults: pm8994-gpios-default-state {
- pm8994-gpio1-nc {
+ pm8994-gpio1-nc-pins {
pins = "gpio1";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
bias-high-impedance;
};

- vol-down-n {
+ vol-down-n-pins {
pins = "gpio2";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -264,7 +264,7 @@ vol-down-n {
power-source = <PM8994_GPIO_S4>;
};

- vol-up-n {
+ vol-up-n-pins {
pins = "gpio3";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -273,7 +273,7 @@ vol-up-n {
power-source = <PM8994_GPIO_S4>;
};

- camera-snapshot-n {
+ camera-snapshot-n-pins {
pins = "gpio4";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -283,7 +283,7 @@ camera-snapshot-n {
power-source = <PM8994_GPIO_S4>;
};

- camera-focus-n {
+ camera-focus-n-pins {
pins = "gpio5";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -293,7 +293,7 @@ camera-focus-n {
power-source = <PM8994_GPIO_S4>;
};

- pm8994-gpio6-nc {
+ pm8994-gpio6-nc-pins {
pins = "gpio6";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -301,7 +301,7 @@ pm8994-gpio6-nc {
power-source = <PM8994_GPIO_VPH>;
};

- nfc-download {
+ nfc-download-pins {
pins = "gpio7";
function = PMIC_GPIO_FUNC_NORMAL;
output-low;
@@ -311,7 +311,7 @@ nfc-download {
power-source = <PM8994_GPIO_S4>;
};

- pm8994-gpio8-nc {
+ pm8994-gpio8-nc-pins {
pins = "gpio8";
function = PMIC_GPIO_FUNC_NORMAL;
output-low;
@@ -321,7 +321,7 @@ pm8994-gpio8-nc {
power-source = <PM8994_GPIO_VPH>;
};

- pm8994-gpio9-nc {
+ pm8994-gpio9-nc-pins {
pins = "gpio9";
function = PMIC_GPIO_FUNC_NORMAL;
output-high;
@@ -331,7 +331,7 @@ pm8994-gpio9-nc {
power-source = <PM8994_GPIO_VPH>;
};

- nfc-clock {
+ nfc-clock-pins {
pins = "gpio10";
function = PMIC_GPIO_FUNC_NORMAL;
input-enable;
@@ -341,7 +341,7 @@ nfc-clock {
power-source = <PM8994_GPIO_S4>;
};

- pm8994-gpio11-nc {
+ pm8994-gpio11-nc-pins {
pins = "gpio11";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -349,7 +349,7 @@ pm8994-gpio11-nc {
power-source = <PM8994_GPIO_VPH>;
};

- pm8994-gpio12-nc {
+ pm8994-gpio12-nc-pins {
pins = "gpio12";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -357,7 +357,7 @@ pm8994-gpio12-nc {
power-source = <PM8994_GPIO_VPH>;
};

- ear-enable {
+ ear-enable-pins {
pins = "gpio13";
function = PMIC_GPIO_FUNC_NORMAL;
output-high;
@@ -367,7 +367,7 @@ ear-enable {
power-source = <PM8994_GPIO_S4>;
};

- pm8994-gpio14-nc {
+ pm8994-gpio14-nc-pins {
pins = "gpio14";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -377,7 +377,7 @@ pm8994-gpio14-nc {
power-source = <PM8994_GPIO_VPH>;
};

- pm-divclk1-gpio {
+ pm-divclk1-gpio-pins {
pins = "gpio15";
function = "func1";
output-high;
@@ -387,13 +387,13 @@ pm-divclk1-gpio {
power-source = <PM8994_GPIO_VPH>;
};

- pmi-clk-gpio {
+ pmi-clk-gpio-pins {
pins = "gpio16";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
};

- pm8994-gpio17-nc {
+ pm8994-gpio17-nc-pins {
pins = "gpio17";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -401,7 +401,7 @@ pm8994-gpio17-nc {
power-source = <PM8994_GPIO_VPH>;
};

- rome-sleep {
+ rome-sleep-pins {
pins = "gpio18";
function = PMIC_GPIO_FUNC_FUNC2;
output-low;
@@ -411,7 +411,7 @@ rome-sleep {
power-source = <PM8994_GPIO_S4>;
};

- pm8994-gpio19-nc {
+ pm8994-gpio19-nc-pins {
pins = "gpio19";
function = PMIC_GPIO_FUNC_NORMAL;
output-low;
@@ -421,7 +421,7 @@ pm8994-gpio19-nc {
power-source = <PM8994_GPIO_VPH>;
};

- pm8994-gpio22-nc {
+ pm8994-gpio22-nc-pins {
pins = "gpio22";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -446,34 +446,34 @@ &pm8994_mpps {
"RF_ID";

pm8994_mpps_defaults: pm8994-mpps-default-state {
- lcd-id_adc-mpp {
+ lcd-id_adc-mpp-pins {
pins = "mpp2";
function = "analog";
input-enable;
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH6>;
};

- pm-mpp4-nc {
+ pm-mpp4-nc-pins {
pins = "mpp4";
function = "digital";
bias-high-impedance;
power-source = <PM8994_GPIO_VPH>;
};

- flash-therm-mpp {
+ flash-therm-mpp-pins {
pins = "mpp5";
function = "analog";
input-enable;
qcom,amux-route = <PMIC_MPP_AMUX_ROUTE_CH5>;
};

- mpp6-nc {
+ mpp6-nc-pins {
pins = "mpp6";
function = "digital";
bias-high-impedance;
};

- rf-id-mpp {
+ rf-id-mpp-pins {
pins = "mpp8";
function = "analog";
input-enable;
@@ -504,7 +504,7 @@ &pmi8994_gpios {
"NC";

pmi8994_gpios_defaults: pmi8994-gpios-default-state {
- vib-ldo-en-gpio {
+ vib-ldo-en-gpio-pins {
pins = "gpio1";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -513,7 +513,7 @@ vib-ldo-en-gpio {
power-source = <PM8994_GPIO_S4>;
};

- pmi-gpio2-nc {
+ pmi-gpio2-nc-pins {
pins = "gpio2";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -523,7 +523,7 @@ pmi-gpio2-nc {
power-source = <PM8994_GPIO_VPH>;
};

- pmi-gpio3-nc {
+ pmi-gpio3-nc-pins {
pins = "gpio3";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -533,7 +533,7 @@ pmi-gpio3-nc {
power-source = <PM8994_GPIO_VPH>;
};

- pmi-gpio4-nc {
+ pmi-gpio4-nc-pins {
pins = "gpio4";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -542,7 +542,7 @@ pmi-gpio4-nc {
power-source = <PM8994_GPIO_S4>;
};

- pmi-gpio5-nc {
+ pmi-gpio5-nc-pins {
pins = "gpio5";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -551,7 +551,7 @@ pmi-gpio5-nc {
power-source = <PM8994_GPIO_S4>;
};

- pmi-gpio6-nc {
+ pmi-gpio6-nc-pins {
pins = "gpio6";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -560,7 +560,7 @@ pmi-gpio6-nc {
power-source = <PM8994_GPIO_S4>;
};

- pmi-gpio7-nc {
+ pmi-gpio7-nc-pins {
pins = "gpio7";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -569,7 +569,7 @@ pmi-gpio7-nc {
power-source = <PM8994_GPIO_S4>;
};

- pmi-gpio8-nc {
+ pmi-gpio8-nc-pins {
pins = "gpio8";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
@@ -578,13 +578,13 @@ pmi-gpio8-nc {
power-source = <PM8994_GPIO_S4>;
};

- usb-switch-sel {
+ usb-switch-sel-pins {
pins = "gpio9";
function = PMIC_GPIO_FUNC_NORMAL;
drive-push-pull;
};

- pmi-gpio10-nc {
+ pmi-gpio10-nc-pins {
pins = "gpio10";
function = PMIC_GPIO_FUNC_NORMAL;
output-low;
diff --git a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
index a7090befc16f..259d2fcc6e7e 100644
--- a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi
@@ -608,7 +608,7 @@ vdd_gfx: s2 {
};

&pm8994_gpios {
- wlan_en_default: wlan-en-default {
+ wlan_en_default: wlan-en-state {
pins = "gpio8";
function = PMIC_GPIO_FUNC_NORMAL;
output-low;
@@ -617,7 +617,7 @@ wlan_en_default: wlan-en-default {
bias-disable;
};

- rome_enable_default: rome-enable-default {
+ rome_enable_default: rome-enable-state {
pins = "gpio9";
function = PMIC_GPIO_FUNC_NORMAL;
output-high;
@@ -625,7 +625,7 @@ rome_enable_default: rome-enable-default {
power-source = <PM8994_GPIO_VPH>;
};

- divclk1_default: divclk1_default {
+ divclk1_default: divclk1-state {
pins = "gpio15";
function = PMIC_GPIO_FUNC_FUNC1;
bias-disable;
@@ -633,7 +633,7 @@ divclk1_default: divclk1_default {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
};

- divclk4_pin_a: divclk4 {
+ divclk4_pin_a: divclk4-state {
pins = "gpio18";
function = PMIC_GPIO_FUNC_FUNC2;
bias-disable;
diff --git a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
index 22978d06f85b..ec68c03868db 100644
--- a/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
+++ b/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts
@@ -257,7 +257,7 @@ &pm8994_gpios {
"UIM_BATT_ALARM", /* GPIO_21 */
"NC"; /* GPIO_22 */

- divclk2_pin_a: divclk2 {
+ divclk2_pin_a: divclk2-state {
pins = "gpio16";
function = PMIC_GPIO_FUNC_FUNC2;
bias-disable;
diff --git a/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts b/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
index dc5b9b274df3..71566ecf1311 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
+++ b/arch/arm64/boot/dts/qcom/msm8998-fxtec-pro1.dts
@@ -214,7 +214,7 @@ &mmss_smmu {
};

&pm8998_gpio {
- vol_up_pin_a: vol-up-active {
+ vol_up_pin_a: vol-up-active-state {
pins = "gpio6";
function = "normal";
bias-pull-up;
@@ -222,7 +222,7 @@ vol_up_pin_a: vol-up-active {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
};

- cam_focus_pin_a: cam-focus-btn-active {
+ cam_focus_pin_a: cam-focus-btn-active-state {
pins = "gpio7";
function = "normal";
bias-pull-up;
@@ -230,7 +230,7 @@ cam_focus_pin_a: cam-focus-btn-active {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
};

- cam_snapshot_pin_a: cam-snapshot-btn-active {
+ cam_snapshot_pin_a: cam-snapshot-btn-active-state {
pins = "gpio8";
function = "normal";
bias-pull-up;
diff --git a/arch/arm64/boot/dts/qcom/msm8998-oneplus-cheeseburger.dts b/arch/arm64/boot/dts/qcom/msm8998-oneplus-cheeseburger.dts
index 9563eb62db88..ef2a88a64d32 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-oneplus-cheeseburger.dts
+++ b/arch/arm64/boot/dts/qcom/msm8998-oneplus-cheeseburger.dts
@@ -32,7 +32,7 @@ button-backlight {
};

&pmi8998_gpio {
- button_backlight_default: button-backlight-default {
+ button_backlight_default: button-backlight-state {
pinconf {
pins = "gpio5";
function = "normal";
diff --git a/arch/arm64/boot/dts/qcom/msm8998-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/msm8998-oneplus-common.dtsi
index dbaea360bffc..e49eafee0ece 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-oneplus-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8998-oneplus-common.dtsi
@@ -263,7 +263,7 @@ pm8005_s1: s1 { /* VDD_GFX supply */
};

&pm8998_gpio {
- vol_keys_default: vol-keys-default {
+ vol_keys_default: vol-keys-state {
pinconf {
pins = "gpio5", "gpio6";
function = "normal";
diff --git a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino-maple.dts b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino-maple.dts
index 978495a8a6b9..20fe0394a3c1 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino-maple.dts
+++ b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino-maple.dts
@@ -38,7 +38,7 @@ &lab {
};

&pmi8998_gpio {
- disp_dvdd_en: disp-dvdd-en-active {
+ disp_dvdd_en: disp-dvdd-en-active-state {
pins = "gpio10";
function = "normal";
bias-disable;
diff --git a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi
index 47488a1aecae..3e85e690605c 100644
--- a/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8998-sony-xperia-yoshino.dtsi
@@ -295,7 +295,7 @@ pm8005_s1: s1 {
};

&pm8998_gpio {
- vol_down_pin_a: vol-down-active {
+ vol_down_pin_a: vol-down-active-state {
pins = "gpio5";
function = PMIC_GPIO_FUNC_NORMAL;
bias-pull-up;
@@ -303,7 +303,7 @@ vol_down_pin_a: vol-down-active {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
};

- cam_focus_pin_a: cam-focus-btn-active {
+ cam_focus_pin_a: cam-focus-btn-active-state {
pins = "gpio7";
function = PMIC_GPIO_FUNC_NORMAL;
bias-pull-up;
@@ -311,7 +311,7 @@ cam_focus_pin_a: cam-focus-btn-active {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
};

- cam_snapshot_pin_a: cam-snapshot-btn-active {
+ cam_snapshot_pin_a: cam-snapshot-btn-active-state {
pins = "gpio8";
function = PMIC_GPIO_FUNC_NORMAL;
bias-pull-up;
@@ -319,7 +319,7 @@ cam_snapshot_pin_a: cam-snapshot-btn-active {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_NO>;
};

- audio_mclk_pin: audio-mclk-pin-active {
+ audio_mclk_pin: audio-mclk-pin-active-state {
pins = "gpio13";
function = "func2";
power-source = <0>;
@@ -327,7 +327,7 @@ audio_mclk_pin: audio-mclk-pin-active {
};

&pmi8998_gpio {
- cam_vio_default: cam-vio-active {
+ cam_vio_default: cam-vio-active-state {
pins = "gpio1";
function = PMIC_GPIO_FUNC_NORMAL;
bias-disable;
@@ -337,7 +337,7 @@ cam_vio_default: cam-vio-active {
power-source = <1>;
};

- vib_default: vib-en {
+ vib_default: vib-en-state {
pins = "gpio5";
function = PMIC_GPIO_FUNC_NORMAL;
bias-disable;
diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi
index 2f3104a84417..1721ebe5759b 100644
--- a/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs404-evb.dtsi
@@ -304,7 +304,7 @@ pinconf {
};

&pms405_gpios {
- usb_vbus_boost_pin: usb-vbus-boost-pin {
+ usb_vbus_boost_pin: usb-vbus-boost-state {
pinconf {
pins = "gpio3";
function = PMIC_GPIO_FUNC_NORMAL;
@@ -312,7 +312,7 @@ pinconf {
power-source = <1>;
};
};
- usb3_vbus_pin: usb3-vbus-pin {
+ usb3_vbus_pin: usb3-vbus-state {
pinconf {
pins = "gpio12";
function = PMIC_GPIO_FUNC_NORMAL;
diff --git a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts
index 0e63f707b911..9549341f98fb 100644
--- a/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts
+++ b/arch/arm64/boot/dts/qcom/qrb5165-rb5.dts
@@ -796,7 +796,7 @@ &pm8150l_gpios {
"NC",
"PM3003A_MODE";

- lt9611_rst_pin: lt9611-rst-pin {
+ lt9611_rst_pin: lt9611-rst-state {
pins = "gpio5";
function = "normal";

diff --git a/arch/arm64/boot/dts/qcom/sc7180-idp.dts b/arch/arm64/boot/dts/qcom/sc7180-idp.dts
index acdb36f4479f..33ada24ec917 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-idp.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-idp.dts
@@ -467,7 +467,7 @@ wifi-firmware {
/* PINCTRL - additions to nodes defined in sc7180.dtsi */

&pm6150l_gpio {
- disp_pins: disp-pins {
+ disp_pins: disp-state {
pinconf {
pins = "gpio3";
function = PMIC_GPIO_FUNC_FUNC1;
diff --git a/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi b/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
index 6a14259b93c4..e87e53e115cc 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-idp.dtsi
@@ -368,7 +368,7 @@ &dp_hot_plug_det {
};

&pm7325_gpios {
- key_vol_up_default: key-vol-up-default {
+ key_vol_up_default: key-vol-up-state {
pins = "gpio6";
function = "normal";
input-enable;
diff --git a/arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi b/arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi
index b833ba1e8f4a..1db90bd9a79f 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-qcard.dtsi
@@ -457,7 +457,7 @@ &sdc1_rclk {
*/

&pm8350c_gpios {
- pmic_edp_bl_en: pmic-edp-bl-en {
+ pmic_edp_bl_en: pmic-edp-bl-en-state {
pins = "gpio7";
function = "normal";
bias-disable;
@@ -467,7 +467,7 @@ pmic_edp_bl_en: pmic-edp-bl-en {
output-low;
};

- pmic_edp_bl_pwm: pmic-edp-bl-pwm {
+ pmic_edp_bl_pwm: pmic-edp-bl-pwm-state {
pins = "gpio8";
function = "func1";
bias-disable;
diff --git a/arch/arm64/boot/dts/qcom/sdm845-db845c.dts b/arch/arm64/boot/dts/qcom/sdm845-db845c.dts
index 194ebeb3259c..96a434245ed9 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-db845c.dts
+++ b/arch/arm64/boot/dts/qcom/sdm845-db845c.dts
@@ -569,7 +569,7 @@ &pm8998_gpio {
"OPTION2",
"PM845_SLB";

- cam0_dvdd_1v2_en_default: cam0-dvdd-1v2-en {
+ cam0_dvdd_1v2_en_default: cam0-dvdd-1v2-en-state {
pins = "gpio12";
function = "normal";

@@ -578,7 +578,7 @@ cam0_dvdd_1v2_en_default: cam0-dvdd-1v2-en {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
};

- cam0_avdd_2v8_en_default: cam0-avdd-2v8-en {
+ cam0_avdd_2v8_en_default: cam0-avdd-2v8-en-state {
pins = "gpio10";
function = "normal";

@@ -587,7 +587,7 @@ cam0_avdd_2v8_en_default: cam0-avdd-2v8-en {
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
};

- vol_up_pin_a: vol-up-active {
+ vol_up_pin_a: vol-up-active-state {
pins = "gpio6";
function = "normal";
input-enable;
diff --git a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
index 07b729f9fec5..c9d05e94040c 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
@@ -440,7 +440,7 @@ &mss_pil {
};

&pm8998_gpio {
- volume_down_gpio: pm8998_gpio5 {
+ volume_down_gpio: pm8998-gpio5-state {
pinconf {
pins = "gpio5";
function = "normal";
@@ -450,7 +450,7 @@ pinconf {
};
};

- volume_up_gpio: pm8998_gpio6 {
+ volume_up_gpio: pm8998-gpio6-state {
pinconf {
pins = "gpio6";
function = "normal";
diff --git a/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts b/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
index 103cc40816fd..100702883987 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
+++ b/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
@@ -508,7 +508,7 @@ &mss_pil {
};

&pm8998_gpio {
- volume_up_gpio: pm8998_gpio6 {
+ volume_up_gpio: pm8998-gpio6-state {
pinconf {
pins = "gpio6";
function = "normal";
diff --git a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
index d88dc07205f7..b5a6cdccec67 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
+++ b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
@@ -306,7 +306,7 @@ &ipa {
};

&pm8998_gpio {
- vol_up_pin_a: vol-up-active {
+ vol_up_pin_a: vol-up-active-state {
pins = "gpio6";
function = "normal";
input-enable;
diff --git a/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts b/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
index 61925216f5e3..14cc2c87a96b 100644
--- a/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
+++ b/arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts
@@ -339,7 +339,7 @@ &pm6150l_wled {
};

&pm6350_gpios {
- gpio_keys_pin: gpio-keys-pin {
+ gpio_keys_pin: gpio-keys-state {
pins = "gpio2";
function = PMIC_GPIO_FUNC_NORMAL;
bias-pull-up;
--
2.32.0


2022-05-09 09:17:22

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 06/11] arm64: dts: qcom: add fallback compatible to PMIC GPIOs

The bindings require all PMIC GPIO nodes to have two compatibles -
specific followed by SPMI or SSBI fallback. Add the fallback to fix
warnings like:

msm8916-samsung-serranove.dtb: gpios@c000: compatible: ['qcom,pm8916-gpio'] is too short

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
arch/arm64/boot/dts/qcom/pm6350.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm660.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8009.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8150.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8150b.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8150l.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8350.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8350b.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pm8916.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pmm8155au_2.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pmr735b.dtsi | 2 +-
arch/arm64/boot/dts/qcom/pms405.dtsi | 2 +-
13 files changed, 13 insertions(+), 13 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/pm6350.dtsi b/arch/arm64/boot/dts/qcom/pm6350.dtsi
index c5d85064562b..f3056845e65f 100644
--- a/arch/arm64/boot/dts/qcom/pm6350.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm6350.dtsi
@@ -36,7 +36,7 @@ pm6350_resin: resin {
};

pm6350_gpios: gpios@c000 {
- compatible = "qcom,pm6350-gpio";
+ compatible = "qcom,pm6350-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm660.dtsi b/arch/arm64/boot/dts/qcom/pm660.dtsi
index c482663aad56..d0eefbb51663 100644
--- a/arch/arm64/boot/dts/qcom/pm660.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm660.dtsi
@@ -171,7 +171,7 @@ vcoin: vcoin@83 {
};

pm660_gpios: gpios@c000 {
- compatible = "qcom,pm660-gpio";
+ compatible = "qcom,pm660-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
gpio-ranges = <&pm660_gpios 0 0 13>;
diff --git a/arch/arm64/boot/dts/qcom/pm8009.dtsi b/arch/arm64/boot/dts/qcom/pm8009.dtsi
index b126d7e7e4fb..d451922d2b95 100644
--- a/arch/arm64/boot/dts/qcom/pm8009.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8009.dtsi
@@ -19,7 +19,7 @@ pm8009_pon: pon@800 {
};

pm8009_gpios: gpio@c000 {
- compatible = "qcom,pm8005-gpio";
+ compatible = "qcom,pm8005-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm8150.dtsi b/arch/arm64/boot/dts/qcom/pm8150.dtsi
index 0df76f7b1cc1..72cd93ced4c5 100644
--- a/arch/arm64/boot/dts/qcom/pm8150.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8150.dtsi
@@ -127,7 +127,7 @@ rtc@6000 {
};

pm8150_gpios: gpio@c000 {
- compatible = "qcom,pm8150-gpio";
+ compatible = "qcom,pm8150-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm8150b.dtsi b/arch/arm64/boot/dts/qcom/pm8150b.dtsi
index 058cc5107c75..28162f6fb61d 100644
--- a/arch/arm64/boot/dts/qcom/pm8150b.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8150b.dtsi
@@ -112,7 +112,7 @@ pm8150b_adc_tm: adc-tm@3500 {
};

pm8150b_gpios: gpio@c000 {
- compatible = "qcom,pm8150b-gpio";
+ compatible = "qcom,pm8150b-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm8150l.dtsi b/arch/arm64/boot/dts/qcom/pm8150l.dtsi
index 52f094a2b713..0642e7d5be35 100644
--- a/arch/arm64/boot/dts/qcom/pm8150l.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8150l.dtsi
@@ -100,7 +100,7 @@ pm8150l_adc_tm: adc-tm@3500 {
};

pm8150l_gpios: gpio@c000 {
- compatible = "qcom,pm8150l-gpio";
+ compatible = "qcom,pm8150l-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm8350.dtsi b/arch/arm64/boot/dts/qcom/pm8350.dtsi
index b10f33afa5e3..6e91dd7a48b3 100644
--- a/arch/arm64/boot/dts/qcom/pm8350.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8350.dtsi
@@ -45,7 +45,7 @@ pm8350_temp_alarm: temp-alarm@a00 {
};

pm8350_gpios: gpio@8800 {
- compatible = "qcom,pm8350-gpio";
+ compatible = "qcom,pm8350-gpio", "qcom,spmi-gpio";
reg = <0x8800>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm8350b.dtsi b/arch/arm64/boot/dts/qcom/pm8350b.dtsi
index f1d1d4c8edf8..d9512f01ed1e 100644
--- a/arch/arm64/boot/dts/qcom/pm8350b.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8350b.dtsi
@@ -45,7 +45,7 @@ pm8350b_temp_alarm: temp-alarm@a00 {
};

pm8350b_gpios: gpio@8800 {
- compatible = "qcom,pm8350b-gpio";
+ compatible = "qcom,pm8350b-gpio", "qcom,spmi-gpio";
reg = <0x8800>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pm8916.dtsi b/arch/arm64/boot/dts/qcom/pm8916.dtsi
index d58902432812..aedc0aa5602f 100644
--- a/arch/arm64/boot/dts/qcom/pm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/pm8916.dtsi
@@ -108,7 +108,7 @@ pm8916_mpps: mpps@a000 {
};

pm8916_gpios: gpios@c000 {
- compatible = "qcom,pm8916-gpio";
+ compatible = "qcom,pm8916-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi b/arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi
index 7072e5a2e73f..68e9122363ae 100644
--- a/arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi
+++ b/arch/arm64/boot/dts/qcom/pmm8155au_1.dtsi
@@ -116,7 +116,7 @@ pmm8155au_1_rtc: rtc@6000 {
};

pmm8155au_1_gpios: gpio@c000 {
- compatible = "qcom,pmm8155au-gpio";
+ compatible = "qcom,pmm8155au-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pmm8155au_2.dtsi b/arch/arm64/boot/dts/qcom/pmm8155au_2.dtsi
index 72075964fbb9..c307fc662511 100644
--- a/arch/arm64/boot/dts/qcom/pmm8155au_2.dtsi
+++ b/arch/arm64/boot/dts/qcom/pmm8155au_2.dtsi
@@ -89,7 +89,7 @@ die-temp@6 {
};

pmm8155au_2_gpios: gpio@c000 {
- compatible = "qcom,pmm8155au-gpio";
+ compatible = "qcom,pmm8155au-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pmr735b.dtsi b/arch/arm64/boot/dts/qcom/pmr735b.dtsi
index 604324188603..93a658eb4cdd 100644
--- a/arch/arm64/boot/dts/qcom/pmr735b.dtsi
+++ b/arch/arm64/boot/dts/qcom/pmr735b.dtsi
@@ -45,7 +45,7 @@ pmr735b_temp_alarm: temp-alarm@a00 {
};

pmr735b_gpios: gpio@8800 {
- compatible = "qcom,pmr735b-gpio";
+ compatible = "qcom,pmr735b-gpio", "qcom,spmi-gpio";
reg = <0x8800>;
gpio-controller;
#gpio-cells = <2>;
diff --git a/arch/arm64/boot/dts/qcom/pms405.dtsi b/arch/arm64/boot/dts/qcom/pms405.dtsi
index 98d173a377d5..43190a5cfe33 100644
--- a/arch/arm64/boot/dts/qcom/pms405.dtsi
+++ b/arch/arm64/boot/dts/qcom/pms405.dtsi
@@ -38,7 +38,7 @@ pms405_0: pms405@0 {
#size-cells = <0>;

pms405_gpios: gpio@c000 {
- compatible = "qcom,pms405-gpio";
+ compatible = "qcom,pms405-gpio", "qcom,spmi-gpio";
reg = <0xc000>;
gpio-controller;
#gpio-cells = <2>;
--
2.32.0


2022-05-17 12:29:05

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 04/11] dt-bindings: pinctrl: qcom,pmic-gpio: add 'input-disable'

On Sat, 07 May 2022 21:49:06 +0200, Krzysztof Kozlowski wrote:
> 'input-disable' is already used and supported by common pinctrl
> bindings, so add it also here to fix warnings like:
>
> arch/arm64/boot/dts/qcom/qrb5165-rb5.dtb: gpio@c000: lt9611-rst-state: 'oneOf' conditional failed, one must be fixed:
> 'input-disable' does not match any of the regexes: 'pinctrl-[0-9]+'
> 'function', 'input-disable', 'output-high', 'pins', 'power-source' do not match any of the regexes: '(pinconf|-pins)$', 'pinctrl-[0-9]+'
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml | 1 +
> 1 file changed, 1 insertion(+)
>

Acked-by: Rob Herring <[email protected]>

2022-05-17 13:37:35

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 01/11] dt-bindings: pinctrl: qcom,pmic-gpio: document PM8150L and PMM8155AU

On Sat, 07 May 2022 21:49:03 +0200, Krzysztof Kozlowski wrote:
> Add missing compatibles for devices: PM8150L and PMM8155AU.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> Documentation/devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml | 3 +++
> 1 file changed, 3 insertions(+)
>

Acked-by: Rob Herring <[email protected]>

2022-05-17 19:12:40

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 02/11] dt-bindings: pinctrl: qcom,pmic-gpio: fix matching pin config

On Sat, 07 May 2022 21:49:04 +0200, Krzysztof Kozlowski wrote:
> Matching PMIC GPIOs config nodes within a '-state' node by '.*' pattern
> does not work as expected because of linux,phandle in the DTB:
>
> arch/arm64/boot/dts/qcom/msm8994-msft-lumia-octagon-cityman.dtb: gpios@c000: divclk4-state: 'oneOf' conditional failed, one must be fixed:
> 'pins' is a required property
> 'function' is a required property
> 'pinconf' does not match any of the regexes: 'pinctrl-[0-9]+'
> [[2]] is not of type 'object'
>
> Make the schema stricter and expect such nodes to be either named
> 'pinconfig' or followed with '-pins' prefix.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../devicetree/bindings/pinctrl/qcom,pmic-gpio.yaml | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2022-05-21 12:22:03

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH 00/11] dt-bindings/pinctrl/arm: qcom: minor cleanups of QCOM PMIC pinctrl

On Sat, May 7, 2022 at 9:49 PM Krzysztof Kozlowski
<[email protected]> wrote:

> Krzysztof Kozlowski (11):
> dt-bindings: pinctrl: qcom,pmic-gpio: document PM8150L and PMM8155AU
> dt-bindings: pinctrl: qcom,pmic-gpio: fix matching pin config
> dt-bindings: pinctrl: qcom,pmic-gpio: describe gpio-line-names
> dt-bindings: pinctrl: qcom,pmic-gpio: add 'input-disable'

These four patches applied to the pinctrl tree.

Yours,
Linus Walleij

2022-06-09 10:15:22

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 00/11] dt-bindings/pinctrl/arm: qcom: minor cleanups of QCOM PMIC pinctrl

On 07/05/2022 21:49, Krzysztof Kozlowski wrote:
> Hi,
>
> The patches are independent, so they can be picked up as is.
>
> Not really tested on hardware (except SDM845).
>

Hi Bjorn,
The pinctrl bindings part was applied. The DTS changes are waiting for
you here.

Best regards,
Krzysztof

2022-06-28 20:24:21

by Bjorn Andersson

[permalink] [raw]
Subject: Re: (subset) [PATCH 00/11] dt-bindings/pinctrl/arm: qcom: minor cleanups of QCOM PMIC pinctrl

On Sat, 7 May 2022 21:49:02 +0200, Krzysztof Kozlowski wrote:
> The patches are independent, so they can be picked up as is.
>
> Not really tested on hardware (except SDM845).
>
> Best regards,
> Krzysztof
>
> [...]

Applied, thanks!

[09/11] ARM: dts: qcom: align PMIC GPIO pin configuration with DT schema
commit: 4fcdaf4b0320f93d0ccb4d36b795ed258fb07b27
[10/11] ARM: dts: qcom: mdm9615: add missing PMIC GPIO reg
commit: dc590cdc31f636ea15658f1206c3e380a53fb78e
[11/11] ARM: dts: qcom: pmx65: add fallback compatible to PMIC GPIO
commit: 255889f4baf51e887c83333d82ac8470a11246e4

Best regards,
--
Bjorn Andersson <[email protected]>