[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2b1a536f-fd84-831a-8b0a-9c0cce5e6421@somainline.org>
Date: Fri, 30 Sep 2022 22:13:18 +0200
From: Konrad Dybcio <konrad.dybcio@...ainline.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
linux-arm-msm@...r.kernel.org, linux-gpio@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] arm64: dts: qcom: sdm845: align TLMM pin
configuration with DT schema
On 30.09.2022 22:05, Krzysztof Kozlowski wrote:
> DT schema expects TLMM pin configuration nodes to be named with
> '-state' suffix and their optional children with '-pins' suffix.
>
> The sdm854.dtsi file defined several pin configuration nodes which are
845
> customized by the boards. Therefore keep a additional "default-pins"
> node inside so the boards can add more of configuration nodes. Such
> additional configuration nodes always need 'function' property now
> (required by DT schema).
Would it not make more sense to drop this and keep the properties in the
root node while at it?
Konrad
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
> ---
> arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi | 344 +++++++-----------
> arch/arm64/boot/dts/qcom/sdm845-db845c.dts | 76 ++--
> .../arm64/boot/dts/qcom/sdm845-lg-common.dtsi | 60 ++-
> arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts | 2 +-
> arch/arm64/boot/dts/qcom/sdm845-mtp.dts | 60 ++-
> .../boot/dts/qcom/sdm845-oneplus-common.dtsi | 88 ++---
> .../boot/dts/qcom/sdm845-shift-axolotl.dts | 138 +++----
> .../dts/qcom/sdm845-sony-xperia-tama.dtsi | 6 +-
> .../boot/dts/qcom/sdm845-xiaomi-beryllium.dts | 26 +-
> .../boot/dts/qcom/sdm845-xiaomi-polaris.dts | 30 +-
> arch/arm64/boot/dts/qcom/sdm845.dtsi | 305 +++++++---------
> .../boot/dts/qcom/sdm850-lenovo-yoga-c630.dts | 33 +-
> .../boot/dts/qcom/sdm850-samsung-w737.dts | 96 ++---
> 13 files changed, 513 insertions(+), 751 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi b/arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi
> index b5f11fbcc300..3403cdcdd49c 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-cheza.dtsi
> @@ -993,21 +993,21 @@ &wifi {
> /* PINCTRL - additions to nodes defined in sdm845.dtsi */
>
> &qspi_cs0 {
> - pinconf {
> + default-pins {
> pins = "gpio90";
> bias-disable;
> };
> };
>
> &qspi_clk {
> - pinconf {
> + default-pins {
> pins = "gpio95";
> bias-disable;
> };
> };
>
> &qspi_data01 {
> - pinconf {
> + default-pins {
> pins = "gpio91", "gpio92";
>
> /* High-Z when no transfers; nice to park the lines */
> @@ -1016,7 +1016,7 @@ pinconf {
> };
>
> &qup_i2c3_default {
> - pinconf {
> + default-pins {
> pins = "gpio41", "gpio42";
> drive-strength = <2>;
>
> @@ -1026,7 +1026,7 @@ pinconf {
> };
>
> &qup_i2c11_default {
> - pinconf {
> + default-pins {
> pins = "gpio31", "gpio32";
> drive-strength = <2>;
>
> @@ -1036,7 +1036,7 @@ pinconf {
> };
>
> &qup_i2c12_default {
> - pinconf {
> + default-pins {
> pins = "gpio49", "gpio50";
> drive-strength = <2>;
>
> @@ -1046,7 +1046,7 @@ pinconf {
> };
>
> &qup_i2c14_default {
> - pinconf {
> + default-pins {
> pins = "gpio33", "gpio34";
> drive-strength = <2>;
>
> @@ -1056,7 +1056,7 @@ pinconf {
> };
>
> &qup_spi0_default {
> - pinconf {
> + default-pins {
> pins = "gpio0", "gpio1", "gpio2", "gpio3";
> drive-strength = <2>;
> bias-disable;
> @@ -1064,7 +1064,7 @@ pinconf {
> };
>
> &qup_spi5_default {
> - pinconf {
> + default-pins {
> pins = "gpio85", "gpio86", "gpio87", "gpio88";
> drive-strength = <2>;
> bias-disable;
> @@ -1072,7 +1072,7 @@ pinconf {
> };
>
> &qup_spi10_default {
> - pinconf {
> + default-pins {
> pins = "gpio53", "gpio54", "gpio55", "gpio56";
> drive-strength = <2>;
> bias-disable;
> @@ -1081,28 +1081,25 @@ pinconf {
>
> &qup_uart6_default {
> /* Change pinmux to all 4 pins since CTS and RTS are connected */
> - pinmux {
> - pins = "gpio45", "gpio46",
> - "gpio47", "gpio48";
> - };
> -
> - pinconf-cts {
> + cts-pins {
> /*
> * Configure a pull-down on 45 (CTS) to match the pull of
> * the Bluetooth module.
> */
> pins = "gpio45";
> + function = "qup6";
> bias-pull-down;
> };
>
> - pinconf-rts-tx {
> + rts-tx-pins {
> /* We'll drive 46 (RTS) and 47 (TX), so no pull */
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - pinconf-rx {
> + rx-pins {
> /*
> * Configure a pull-up on 48 (RX). This is needed to avoid
> * garbage data when the TX pin of the Bluetooth module is
> @@ -1110,19 +1107,22 @@ pinconf-rx {
> * signal yet).
> */
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
>
> &qup_uart9_default {
> - pinconf-tx {
> + tx-pins {
> pins = "gpio4";
> + function = "qup9";
> drive-strength = <2>;
> bias-disable;
> };
>
> - pinconf-rx {
> + rx-pins {
> pins = "gpio5";
> + function = "qup9";
> drive-strength = <2>;
> bias-pull-up;
> };
> @@ -1213,243 +1213,153 @@ ap-suspend-l-hog {
> output-low;
> };
>
> - ap_edp_bklten: ap-edp-bklten {
> - pinmux {
> - pins = "gpio37";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio37";
> - drive-strength = <2>;
> - bias-disable;
> - };
> + ap_edp_bklten: ap-edp-bklten-state {
> + pins = "gpio37";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-disable;
> };
>
> - bios_flash_wp_r_l: bios-flash-wp-r-l {
> - pinmux {
> - pins = "gpio128";
> - function = "gpio";
> - input-enable;
> - };
> -
> - pinconf {
> - pins = "gpio128";
> - bias-disable;
> - };
> + bios_flash_wp_r_l: bios-flash-wp-r-l-state {
> + pins = "gpio128";
> + function = "gpio";
> + input-enable;
> + bias-disable;
> };
>
> - ec_ap_int_l: ec-ap-int-l {
> - pinmux {
> - pins = "gpio122";
> - function = "gpio";
> - input-enable;
> - };
> -
> - pinconf {
> - pins = "gpio122";
> - bias-pull-up;
> - };
> + ec_ap_int_l: ec-ap-int-l-state {
> + pins = "gpio122";
> + function = "gpio";
> + input-enable;
> + bias-pull-up;
> };
>
> - edp_brij_en: edp-brij-en {
> - pinmux {
> - pins = "gpio102";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio102";
> - drive-strength = <2>;
> - bias-disable;
> - };
> + edp_brij_en: edp-brij-en-state {
> + pins = "gpio102";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-disable;
> };
>
> - edp_brij_irq: edp-brij-irq {
> - pinmux {
> - pins = "gpio10";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio10";
> - drive-strength = <2>;
> - bias-pull-down;
> - };
> + edp_brij_irq: edp-brij-irq-state {
> + pins = "gpio10";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-down;
> };
>
> - en_pp3300_dx_edp: en-pp3300-dx-edp {
> - pinmux {
> - pins = "gpio43";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio43";
> - drive-strength = <2>;
> - bias-disable;
> - };
> + en_pp3300_dx_edp: en-pp3300-dx-edp-state {
> + pins = "gpio43";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-disable;
> };
>
> - h1_ap_int_odl: h1-ap-int-odl {
> - pinmux {
> - pins = "gpio129";
> - function = "gpio";
> - input-enable;
> - };
> -
> - pinconf {
> - pins = "gpio129";
> - bias-pull-up;
> - };
> + h1_ap_int_odl: h1-ap-int-odl-state {
> + pins = "gpio129";
> + function = "gpio";
> + input-enable;
> + bias-pull-up;
> };
>
> - pen_eject_odl: pen-eject-odl {
> - pinmux {
> - pins = "gpio119";
> - function = "gpio";
> - bias-pull-up;
> - };
> + pen_eject_odl: pen-eject-odl-state {
> + pins = "gpio119";
> + function = "gpio";
> + bias-pull-up;
> };
>
> - pen_irq_l: pen-irq-l {
> - pinmux {
> - pins = "gpio24";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio24";
> + pen_irq_l: pen-irq-l-state {
> + pins = "gpio24";
> + function = "gpio";
>
> - /* Has external pullup */
> - bias-disable;
> - };
> + /* Has external pullup */
> + bias-disable;
> };
>
> - pen_pdct_l: pen-pdct-l {
> - pinmux {
> - pins = "gpio63";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio63";
> + pen_pdct_l: pen-pdct-l-state {
> + pins = "gpio63";
> + function = "gpio";
>
> - /* Has external pullup */
> - bias-disable;
> - };
> + /* Has external pullup */
> + bias-disable;
> };
>
> - pen_rst_l: pen-rst-l {
> - pinmux {
> - pins = "gpio23";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio23";
> - bias-disable;
> - drive-strength = <2>;
> + pen_rst_l: pen-rst-l-state {
> + pins = "gpio23";
> + function = "gpio";
> + bias-disable;
> + drive-strength = <2>;
>
> - /*
> - * The pen driver doesn't currently support
> - * driving this reset line. By specifying
> - * output-high here we're relying on the fact
> - * that this pin has a default pulldown at boot
> - * (which makes sure the pen was in reset if it
> - * was powered) and then we set it high here to
> - * take it out of reset. Better would be if the
> - * pen driver could control this and we could
> - * remove "output-high" here.
> - */
> - output-high;
> - };
> + /*
> + * The pen driver doesn't currently support
> + * driving this reset line. By specifying
> + * output-high here we're relying on the fact
> + * that this pin has a default pulldown at boot
> + * (which makes sure the pen was in reset if it
> + * was powered) and then we set it high here to
> + * take it out of reset. Better would be if the
> + * pen driver could control this and we could
> + * remove "output-high" here.
> + */
> + output-high;
> };
>
> - sdc2_clk: sdc2-clk {
> - pinconf {
> - pins = "sdc2_clk";
> - bias-disable;
> + sdc2_clk: sdc2-clk-state {
> + pins = "sdc2_clk";
> + bias-disable;
>
> - /*
> - * It seems that mmc_test reports errors if drive
> - * strength is not 16.
> - */
> - drive-strength = <16>;
> - };
> + /*
> + * It seems that mmc_test reports errors if drive
> + * strength is not 16.
> + */
> + drive-strength = <16>;
> };
>
> - sdc2_cmd: sdc2-cmd {
> - pinconf {
> - pins = "sdc2_cmd";
> - bias-pull-up;
> - drive-strength = <16>;
> - };
> + sdc2_cmd: sdc2-cmd-state {
> + pins = "sdc2_cmd";
> + bias-pull-up;
> + drive-strength = <16>;
> };
>
> - sdc2_data: sdc2-data {
> - pinconf {
> - pins = "sdc2_data";
> - bias-pull-up;
> - drive-strength = <16>;
> - };
> + sdc2_data: sdc2-data-state {
> + pins = "sdc2_data";
> + bias-pull-up;
> + drive-strength = <16>;
> };
>
> - sd_cd_odl: sd-cd-odl {
> - pinmux {
> - pins = "gpio44";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio44";
> - bias-pull-up;
> - };
> + sd_cd_odl: sd-cd-odl-state {
> + pins = "gpio44";
> + function = "gpio";
> + bias-pull-up;
> };
>
> - ts_int_l: ts-int-l {
> - pinmux {
> - pins = "gpio125";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio125";
> - bias-pull-up;
> - };
> + ts_int_l: ts-int-l-state {
> + pins = "gpio125";
> + function = "gpio";
> + bias-pull-up;
> };
>
> - ts_reset_l: ts-reset-l {
> - pinmux {
> - pins = "gpio118";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio118";
> - bias-disable;
> - drive-strength = <2>;
> - };
> + ts_reset_l: ts-reset-l-state {
> + pins = "gpio118";
> + function = "gpio";
> + bias-disable;
> + drive-strength = <2>;
> };
>
> - ap_suspend_l_assert: ap_suspend_l_assert {
> - config {
> - pins = "gpio126";
> - function = "gpio";
> - bias-disable;
> - drive-strength = <2>;
> - output-low;
> - };
> + ap_suspend_l_assert: ap-suspend-l-assert-state {
> + pins = "gpio126";
> + function = "gpio";
> + bias-disable;
> + drive-strength = <2>;
> + output-low;
> };
>
> - ap_suspend_l_deassert: ap_suspend_l_deassert {
> - config {
> - pins = "gpio126";
> - function = "gpio";
> - bias-disable;
> - drive-strength = <2>;
> - output-high;
> - };
> + ap_suspend_l_deassert: ap-suspend-l-deassert-state {
> + pins = "gpio126";
> + function = "gpio";
> + bias-disable;
> + drive-strength = <2>;
> + output-high;
> };
> };
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-db845c.dts b/arch/arm64/boot/dts/qcom/sdm845-db845c.dts
> index a157eab66dee..c5e17a718049 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-db845c.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-db845c.dts
> @@ -820,8 +820,8 @@ &spi2 {
> };
>
> &tlmm {
> - cam0_default: cam0_default {
> - rst {
> + cam0_default: cam0-default-state {
> + rst-pins {
> pins = "gpio9";
> function = "gpio";
>
> @@ -829,7 +829,7 @@ rst {
> bias-disable;
> };
>
> - mclk0 {
> + mclk0-pins {
> pins = "gpio13";
> function = "cam_mclk";
>
> @@ -838,8 +838,8 @@ mclk0 {
> };
> };
>
> - cam3_default: cam3_default {
> - rst {
> + cam3_default: cam3-default-state {
> + rst-pins {
> function = "gpio";
> pins = "gpio21";
>
> @@ -847,7 +847,7 @@ rst {
> bias-disable;
> };
>
> - mclk3 {
> + mclk3-pins {
> function = "cam_mclk";
> pins = "gpio16";
>
> @@ -856,7 +856,7 @@ mclk3 {
> };
> };
>
> - dsi_sw_sel: dsi-sw-sel {
> + dsi_sw_sel: dsi-sw-sel-state {
> pins = "gpio120";
> function = "gpio";
>
> @@ -865,20 +865,20 @@ dsi_sw_sel: dsi-sw-sel {
> output-high;
> };
>
> - lt9611_irq_pin: lt9611-irq {
> + lt9611_irq_pin: lt9611-irq-state {
> pins = "gpio84";
> function = "gpio";
> bias-disable;
> };
>
> - pcie0_default_state: pcie0-default {
> - clkreq {
> + pcie0_default_state: pcie0-default-state {
> + clkreq-pins {
> pins = "gpio36";
> function = "pci_e0";
> bias-pull-up;
> };
>
> - reset-n {
> + reset-n-pins {
> pins = "gpio35";
> function = "gpio";
>
> @@ -887,7 +887,7 @@ reset-n {
> bias-pull-down;
> };
>
> - wake-n {
> + wake-n-pins {
> pins = "gpio37";
> function = "gpio";
>
> @@ -896,7 +896,7 @@ wake-n {
> };
> };
>
> - pcie0_pwren_state: pcie0-pwren {
> + pcie0_pwren_state: pcie0-pwren-state {
> pins = "gpio90";
> function = "gpio";
>
> @@ -904,8 +904,8 @@ pcie0_pwren_state: pcie0-pwren {
> bias-disable;
> };
>
> - pcie1_default_state: pcie1-default {
> - perst-n {
> + pcie1_default_state: pcie1-default-state {
> + perst-n-pins {
> pins = "gpio102";
> function = "gpio";
>
> @@ -913,13 +913,13 @@ perst-n {
> bias-disable;
> };
>
> - clkreq {
> + clkreq-pins {
> pins = "gpio103";
> function = "pci_e1";
> bias-pull-up;
> };
>
> - wake-n {
> + wake-n-pins {
> pins = "gpio11";
> function = "gpio";
>
> @@ -927,7 +927,7 @@ wake-n {
> bias-pull-up;
> };
>
> - reset-n {
> + reset-n-pins {
> pins = "gpio75";
> function = "gpio";
>
> @@ -937,8 +937,8 @@ reset-n {
> };
> };
>
> - sdc2_default_state: sdc2-default {
> - clk {
> + sdc2_default_state: sdc2-default-state {
> + clk-pins {
> pins = "sdc2_clk";
> bias-disable;
>
> @@ -949,26 +949,26 @@ clk {
> drive-strength = <16>;
> };
>
> - cmd {
> + cmd-pins {
> pins = "sdc2_cmd";
> bias-pull-up;
> drive-strength = <10>;
> };
>
> - data {
> + data-pins {
> pins = "sdc2_data";
> bias-pull-up;
> drive-strength = <10>;
> };
> };
>
> - sdc2_card_det_n: sd-card-det-n {
> + sdc2_card_det_n: sd-card-det-n-state {
> pins = "gpio126";
> function = "gpio";
> bias-pull-up;
> };
>
> - wcd_intr_default: wcd_intr_default {
> + wcd_intr_default: wcd-intr-default-state {
> pins = <54>;
> function = "gpio";
>
> @@ -1123,20 +1123,20 @@ &wifi {
>
> /* PINCTRL - additions to nodes defined in sdm845.dtsi */
> &qup_spi2_default {
> - pinmux {
> + default-pins {
> drive-strength = <16>;
> };
> };
>
> &qup_uart3_default{
> - pinmux {
> + default-pins {
> pins = "gpio41", "gpio42", "gpio43", "gpio44";
> function = "qup3";
> };
> };
>
> &qup_i2c10_default {
> - pinconf {
> + default-pins {
> pins = "gpio55", "gpio56";
> drive-strength = <2>;
> bias-disable;
> @@ -1144,37 +1144,37 @@ pinconf {
> };
>
> &qup_uart6_default {
> - pinmux {
> - pins = "gpio45", "gpio46", "gpio47", "gpio48";
> - function = "qup6";
> - };
> -
> - cts {
> + cts-pins {
> pins = "gpio45";
> + function = "qup6";
> bias-disable;
> };
>
> - rts-tx {
> + rts-tx-pins {
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - rx {
> + rx-pins {
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
>
> &qup_uart9_default {
> - pinconf-tx {
> + tx-pins {
> pins = "gpio4";
> + function = "qup9";
> drive-strength = <2>;
> bias-disable;
> };
>
> - pinconf-rx {
> + rx-pins {
> pins = "gpio5";
> + function = "qup9";
> drive-strength = <2>;
> bias-pull-up;
> };
> @@ -1285,7 +1285,7 @@ ov7251_ep: endpoint {
>
> /* PINCTRL - additions to nodes defined in sdm845.dtsi */
> &qup_spi0_default {
> - config {
> + default-pins {
> drive-strength = <6>;
> bias-disable;
> };
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
> index 1eb423e4be24..3ccfbdb2880e 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
> @@ -558,48 +558,36 @@ &usb_1_qmpphy {
> &tlmm {
> gpio-reserved-ranges = <28 4>, <81 4>;
>
> - sdc2_clk: sdc2-clk {
> - pinconf {
> - pins = "sdc2_clk";
> - bias-disable;
> -
> - /*
> - * It seems that mmc_test reports errors if drive
> - * strength is not 16 on clk, cmd, and data pins.
> - *
> - * TODO: copy-pasted from mtp, try other values
> - * on these devices.
> - */
> - drive-strength = <16>;
> - };
> + sdc2_clk: sdc2-clk-state {
> + pins = "sdc2_clk";
> + bias-disable;
> +
> + /*
> + * It seems that mmc_test reports errors if drive
> + * strength is not 16 on clk, cmd, and data pins.
> + *
> + * TODO: copy-pasted from mtp, try other values
> + * on these devices.
> + */
> + drive-strength = <16>;
> };
>
> - sdc2_cmd: sdc2-cmd {
> - pinconf {
> - pins = "sdc2_cmd";
> - bias-pull-up;
> - drive-strength = <16>;
> - };
> + sdc2_cmd: sdc2-cmd-state {
> + pins = "sdc2_cmd";
> + bias-pull-up;
> + drive-strength = <16>;
> };
>
> - sdc2_data: sdc2-data {
> - pinconf {
> - pins = "sdc2_data";
> - bias-pull-up;
> - drive-strength = <16>;
> - };
> + sdc2_data: sdc2-data-state {
> + pins = "sdc2_data";
> + bias-pull-up;
> + drive-strength = <16>;
> };
>
> - sd_card_det_n: sd-card-det-n {
> - pinmux {
> - pins = "gpio126";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio126";
> - bias-pull-up;
> - };
> + sd_card_det_n: sd-card-det-n-state {
> + pins = "gpio126";
> + function = "gpio";
> + bias-pull-up;
> };
> };
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts b/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts
> index 7d967a104b3e..a12723310c8b 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts
> @@ -58,7 +58,7 @@ &mss_pil {
> };
>
> &tlmm {
> - thinq_key_default: thinq-key-default {
> + thinq_key_default: thinq-key-default-state {
> pins = "gpio89";
> function = "gpio";
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-mtp.dts b/arch/arm64/boot/dts/qcom/sdm845-mtp.dts
> index de2d10e0315a..b36befe60b08 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-mtp.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-mtp.dts
> @@ -719,7 +719,7 @@ &wifi {
> /* PINCTRL - additions to nodes defined in sdm845.dtsi */
>
> &qup_i2c10_default {
> - pinconf {
> + default-pins {
> pins = "gpio55", "gpio56";
> drive-strength = <2>;
> bias-disable;
> @@ -727,14 +727,16 @@ pinconf {
> };
>
> &qup_uart9_default {
> - pinconf-tx {
> + tx-pins {
> pins = "gpio4";
> + function = "qup9";
> drive-strength = <2>;
> bias-disable;
> };
>
> - pinconf-rx {
> + rx-pins {
> pins = "gpio5";
> + function = "qup9";
> drive-strength = <2>;
> bias-pull-up;
> };
> @@ -743,44 +745,32 @@ pinconf-rx {
> &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> - sdc2_clk: sdc2-clk {
> - pinconf {
> - pins = "sdc2_clk";
> - bias-disable;
> + sdc2_clk: sdc2-clk-state {
> + pins = "sdc2_clk";
> + bias-disable;
>
> - /*
> - * It seems that mmc_test reports errors if drive
> - * strength is not 16 on clk, cmd, and data pins.
> - */
> - drive-strength = <16>;
> - };
> + /*
> + * It seems that mmc_test reports errors if drive
> + * strength is not 16 on clk, cmd, and data pins.
> + */
> + drive-strength = <16>;
> };
>
> - sdc2_cmd: sdc2-cmd {
> - pinconf {
> - pins = "sdc2_cmd";
> - bias-pull-up;
> - drive-strength = <16>;
> - };
> + sdc2_cmd: sdc2-cmd-state {
> + pins = "sdc2_cmd";
> + bias-pull-up;
> + drive-strength = <16>;
> };
>
> - sdc2_data: sdc2-data {
> - pinconf {
> - pins = "sdc2_data";
> - bias-pull-up;
> - drive-strength = <16>;
> - };
> + sdc2_data: sdc2-data-state {
> + pins = "sdc2_data";
> + bias-pull-up;
> + drive-strength = <16>;
> };
>
> - sd_card_det_n: sd-card-det-n {
> - pinmux {
> - pins = "gpio126";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio126";
> - bias-pull-up;
> - };
> + sd_card_det_n: sd-card-det-n-state {
> + pins = "gpio126";
> + function = "gpio";
> + bias-pull-up;
> };
> };
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> index 392461c29e76..02a1e056f465 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-oneplus-common.dtsi
> @@ -470,7 +470,7 @@ &qupv3_id_0 {
> };
>
> &qup_i2c12_default {
> - mux {
> + default-pins {
> pins = "gpio49", "gpio50";
> function = "qup12";
> drive-strength = <2>;
> @@ -479,7 +479,7 @@ mux {
> };
>
> &qup_i2c10_default {
> - pinconf {
> + default-pins {
> pins = "gpio55", "gpio56";
> drive-strength = <2>;
> bias-disable;
> @@ -487,14 +487,16 @@ pinconf {
> };
>
> &qup_uart9_default {
> - pinconf-tx {
> + tx-pins {
> pins = "gpio4";
> + function = "qup9";
> drive-strength = <2>;
> bias-disable;
> };
>
> - pinconf-rx {
> + rx-pins {
> pins = "gpio5";
> + function = "qup9";
> drive-strength = <2>;
> bias-pull-up;
> };
> @@ -504,24 +506,22 @@ pinconf-rx {
> * Prevent garbage data on bluetooth UART lines
> */
> &qup_uart6_default {
> - pinmux {
> - pins = "gpio45", "gpio46", "gpio47", "gpio48";
> - function = "qup6";
> - };
> -
> - cts {
> + cts-pins {
> pins = "gpio45";
> + function = "qup6";
> bias-pull-down;
> };
>
> - rts-tx {
> + rts-tx-pins {
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - rx {
> + rx-pins {
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
> @@ -607,51 +607,41 @@ &usb_1_hsphy {
> &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> - tri_state_key_default: tri_state_key_default {
> - mux {
> - pins = "gpio40", "gpio42", "gpio26";
> - function = "gpio";
> - drive-strength = <2>;
> - bias-disable;
> - };
> + tri_state_key_default: tri-state-key-default-state {
> + pins = "gpio40", "gpio42", "gpio26";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-disable;
> };
>
> - ts_default_pins: ts-int {
> - mux {
> - pins = "gpio99", "gpio125";
> - function = "gpio";
> - drive-strength = <16>;
> - bias-pull-up;
> - };
> + ts_default_pins: ts-int-state {
> + pins = "gpio99", "gpio125";
> + function = "gpio";
> + drive-strength = <16>;
> + bias-pull-up;
> };
>
> - panel_reset_pins: panel-reset {
> - mux {
> - pins = "gpio6", "gpio25", "gpio26";
> - function = "gpio";
> - drive-strength = <8>;
> - bias-disable;
> - };
> + panel_reset_pins: panel-reset-state {
> + pins = "gpio6", "gpio25", "gpio26";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-disable;
> };
>
> - panel_te_pin: panel-te {
> - mux {
> - pins = "gpio10";
> - function = "mdp_vsync";
> - drive-strength = <2>;
> - bias-disable;
> - input-enable;
> - };
> + panel_te_pin: panel-te-state {
> + pins = "gpio10";
> + function = "mdp_vsync";
> + drive-strength = <2>;
> + bias-disable;
> + input-enable;
> };
>
> - panel_esd_pin: panel-esd {
> - mux {
> - pins = "gpio30";
> - function = "gpio";
> - drive-strength = <2>;
> - bias-pull-down;
> - input-enable;
> - };
> + panel_esd_pin: panel-esd-state {
> + pins = "gpio30";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-down;
> + input-enable;
> };
> };
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts b/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
> index 83261c9bb4f2..7c752f621a23 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-shift-axolotl.dts
> @@ -559,14 +559,16 @@ led@5 {
> };
>
> &qup_uart9_default {
> - pinconf-rx {
> + rx-pins {
> pins = "gpio5";
> + function = "qup9";
> drive-strength = <2>;
> bias-pull-up;
> };
>
> - pinconf-tx {
> + tx-pins {
> pins = "gpio4";
> + function = "qup9";
> drive-strength = <2>;
> bias-disable;
> };
> @@ -583,110 +585,62 @@ &qupv3_id_1 {
> &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> - sde_dsi_active: sde-dsi-active {
> - mux {
> - pins = "gpio6", "gpio11";
> - function = "gpio";
> - };
> -
> - config {
> - pins = "gpio6", "gpio11";
> - drive-strength = <8>;
> - bias-disable;
> - };
> + sde_dsi_active: sde-dsi-active-state {
> + pins = "gpio6", "gpio11";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-disable;
> };
>
> - sde_dsi_suspend: sde-dsi-suspend {
> - mux {
> - pins = "gpio6", "gpio11";
> - function = "gpio";
> - };
> -
> - config {
> - pins = "gpio6", "gpio11";
> - drive-strength = <2>;
> - bias-pull-down;
> - };
> + sde_dsi_suspend: sde-dsi-suspend-state {
> + pins = "gpio6", "gpio11";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-down;
> };
>
> - sde_te_active: sde-te-active {
> - mux {
> - pins = "gpio10";
> - function = "mdp_vsync";
> - };
> -
> - config {
> - pins = "gpio10";
> - drive-strength = <2>;
> - bias-pull-down;
> - };
> + sde_te_active: sde-te-active-state {
> + pins = "gpio10";
> + function = "mdp_vsync";
> + drive-strength = <2>;
> + bias-pull-down;
> };
>
> - sde_te_suspend: sde-te-suspend {
> - mux {
> - pins = "gpio10";
> - function = "mdp_vsync";
> - };
> -
> - config {
> - pins = "gpio10";
> - drive-strength = <2>;
> - bias-pull-down;
> - };
> + sde_te_suspend: sde-te-suspend-state {
> + pins = "gpio10";
> + function = "mdp_vsync";
> + drive-strength = <2>;
> + bias-pull-down;
> };
>
> - ts_int_active: ts-int-active {
> - mux {
> - pins = "gpio125";
> - function = "gpio";
> - };
> -
> - config {
> - pins = "gpio125";
> - drive-strength = <8>;
> - bias-pull-up;
> - input-enable;
> - };
> + ts_int_active: ts-int-active-state {
> + pins = "gpio125";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-pull-up;
> + input-enable;
> };
>
> - ts_int_suspend: ts-int-suspend {
> - mux {
> - pins = "gpio125";
> - function = "gpio";
> - };
> -
> - config {
> - pins = "gpio125";
> - drive-strength = <2>;
> - bias-pull-down;
> - input-enable;
> - };
> + ts_int_suspend: ts-int-suspend-state {
> + pins = "gpio125";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-down;
> + input-enable;
> };
>
> - ts_reset_active: ts-reset-active {
> - mux {
> - pins = "gpio99";
> - function = "gpio";
> - };
> -
> - config {
> - pins = "gpio99";
> - drive-strength = <8>;
> - bias-pull-up;
> - };
> + ts_reset_active: ts-reset-active-state {
> + pins = "gpio99";
> + function = "gpio";
> + drive-strength = <8>;
> + bias-pull-up;
> };
>
> - ts_reset_suspend: ts-reset-suspend {
> - mux {
> - pins = "gpio99";
> - function = "gpio";
> - };
> -
> - config {
> - pins = "gpio99";
> - drive-strength = <2>;
> - bias-pull-down;
> - };
> + ts_reset_suspend: ts-reset-suspend-state {
> + pins = "gpio99";
> + function = "gpio";
> + drive-strength = <2>;
> + bias-pull-down;
> };
> };
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> index 51ee42e3c995..3a920275dda3 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi
> @@ -383,19 +383,19 @@ &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> sdc2_default_state: sdc2-default-state {
> - clk {
> + clk-pins {
> pins = "sdc2_clk";
> drive-strength = <16>;
> bias-disable;
> };
>
> - cmd {
> + cmd-pins {
> pins = "sdc2_cmd";
> drive-strength = <10>;
> bias-pull-up;
> };
>
> - data {
> + data-pins {
> pins = "sdc2_data";
> drive-strength = <10>;
> bias-pull-up;
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
> index 0f470cf1ed1c..d6392f3486ae 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-beryllium.dts
> @@ -442,33 +442,33 @@ codec {
> &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> - sdc2_default_state: sdc2-default {
> - clk {
> + sdc2_default_state: sdc2-default-state {
> + clk-pins {
> pins = "sdc2_clk";
> bias-disable;
> drive-strength = <16>;
> };
>
> - cmd {
> + cmd-pins {
> pins = "sdc2_cmd";
> bias-pull-up;
> drive-strength = <10>;
> };
>
> - data {
> + data-pins {
> pins = "sdc2_data";
> bias-pull-up;
> drive-strength = <10>;
> };
> };
>
> - sdc2_card_det_n: sd-card-det-n {
> + sdc2_card_det_n: sd-card-det-n-state {
> pins = "gpio126";
> function = "gpio";
> bias-pull-up;
> };
>
> - wcd_intr_default: wcd_intr_default {
> + wcd_intr_default: wcd-intr-default-state {
> pins = <54>;
> function = "gpio";
>
> @@ -571,24 +571,22 @@ &wifi {
> /* PINCTRL - additions to nodes defined in sdm845.dtsi */
>
> &qup_uart6_default {
> - pinmux {
> - pins = "gpio45", "gpio46", "gpio47", "gpio48";
> - function = "qup6";
> - };
> -
> - cts {
> + cts-pins {
> pins = "gpio45";
> + function = "qup6";
> bias-disable;
> };
>
> - rts-tx {
> + rts-tx-pins {
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - rx {
> + rx-pins {
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
> diff --git a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-polaris.dts b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-polaris.dts
> index f98259489679..9a4e1ff1d3ba 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845-xiaomi-polaris.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm845-xiaomi-polaris.dts
> @@ -573,7 +573,7 @@ &qupv3_id_1 {
> };
>
> &qup_i2c14_default {
> - pinconf {
> + default-pins {
> pins = "gpio33", "gpio34";
> drive-strength = <2>;
> bias-disable;
> @@ -583,14 +583,14 @@ pinconf {
> &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> - ts_reset_default: ts-reset-default {
> + ts_reset_default: ts-reset-default-state {
> pins = "gpio99";
> function = "gpio";
> drive-strength = <16>;
> output-high;
> };
>
> - ts_int_default: ts-int-default {
> + ts_int_default: ts-int-default-state {
> pins = "gpio125";
> function = "gpio";
> bias-pull-down;
> @@ -598,14 +598,14 @@ ts_int_default: ts-int-default {
> input-enable;
> };
>
> - ts_reset_sleep: ts-reset-sleep {
> + ts_reset_sleep: ts-reset-sleep-state {
> pins = "gpio99";
> function = "gpio";
> bias-disable;
> drive-strength = <2>;
> };
>
> - ts_int_sleep: ts-int-sleep {
> + ts_int_sleep: ts-int-sleep-state {
> pins = "gpio125";
> function = "gpio";
> bias-pull-down;
> @@ -613,21 +613,21 @@ ts_int_sleep: ts-int-sleep {
> input-enable;
> };
>
> - sde_dsi_active: sde-dsi-active {
> + sde_dsi_active: sde-dsi-active-state {
> pins = "gpio6", "gpio10";
> function = "gpio";
> drive-strength = <8>;
> bias-disable;
> };
>
> - sde_dsi_suspend: sde-dsi-suspend {
> + sde_dsi_suspend: sde-dsi-suspend-state {
> pins = "gpio6", "gpio10";
> function = "gpio";
> drive-strength = <2>;
> bias-pull-down;
> };
>
> - wcd_intr_default: wcd-intr-default {
> + wcd_intr_default: wcd-intr-default-state {
> pins = "gpio54";
> function = "gpio";
> input-enable;
> @@ -739,24 +739,22 @@ &wifi {
> /* PINCTRL - additions to nodes defined in sdm845.dtsi */
>
> &qup_uart6_default {
> - pinmux {
> - pins = "gpio45", "gpio46", "gpio47", "gpio48";
> - function = "qup6";
> - };
> -
> - cts {
> + cts-pins {
> pins = "gpio45";
> + function = "qup6";
> bias-disable;
> };
>
> - rts-tx {
> + rts-tx-pins {
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - rx {
> + rx-pins {
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
> diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi
> index d761da47220d..915ef8dda023 100644
> --- a/arch/arm64/boot/dts/qcom/sdm845.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi
> @@ -2641,7 +2641,7 @@ tlmm: pinctrl@...0000 {
> gpio-ranges = <&tlmm 0 0 151>;
> wakeup-parent = <&pdc_intc>;
>
> - cci0_default: cci0-default {
> + cci0_default: cci0-default-state {
> /* SDA, SCL */
> pins = "gpio17", "gpio18";
> function = "cci_i2c";
> @@ -2650,7 +2650,7 @@ cci0_default: cci0-default {
> drive-strength = <2>; /* 2 mA */
> };
>
> - cci0_sleep: cci0-sleep {
> + cci0_sleep: cci0-sleep-state {
> /* SDA, SCL */
> pins = "gpio17", "gpio18";
> function = "cci_i2c";
> @@ -2659,7 +2659,7 @@ cci0_sleep: cci0-sleep {
> bias-pull-down;
> };
>
> - cci1_default: cci1-default {
> + cci1_default: cci1-default-state {
> /* SDA, SCL */
> pins = "gpio19", "gpio20";
> function = "cci_i2c";
> @@ -2668,7 +2668,7 @@ cci1_default: cci1-default {
> drive-strength = <2>; /* 2 mA */
> };
>
> - cci1_sleep: cci1-sleep {
> + cci1_sleep: cci1-sleep-state {
> /* SDA, SCL */
> pins = "gpio19", "gpio20";
> function = "cci_i2c";
> @@ -2677,531 +2677,486 @@ cci1_sleep: cci1-sleep {
> bias-pull-down;
> };
>
> - qspi_clk: qspi-clk {
> - pinmux {
> + qspi_clk: qspi-clk-state {
> + default-pins {
> pins = "gpio95";
> function = "qspi_clk";
> };
> };
>
> - qspi_cs0: qspi-cs0 {
> - pinmux {
> + qspi_cs0: qspi-cs0-state {
> + default-pins {
> pins = "gpio90";
> function = "qspi_cs";
> };
> };
>
> - qspi_cs1: qspi-cs1 {
> - pinmux {
> + qspi_cs1: qspi-cs1-state {
> + default-pins {
> pins = "gpio89";
> function = "qspi_cs";
> };
> };
>
> - qspi_data01: qspi-data01 {
> - pinmux-data {
> + qspi_data01: qspi-data01-state {
> + default-pins {
> pins = "gpio91", "gpio92";
> function = "qspi_data";
> };
> };
>
> - qspi_data12: qspi-data12 {
> - pinmux-data {
> + qspi_data12: qspi-data12-state {
> + default-pins {
> pins = "gpio93", "gpio94";
> function = "qspi_data";
> };
> };
>
> - qup_i2c0_default: qup-i2c0-default {
> - pinmux {
> + qup_i2c0_default: qup-i2c0-default-state {
> + default-pins {
> pins = "gpio0", "gpio1";
> function = "qup0";
> };
> };
>
> - qup_i2c1_default: qup-i2c1-default {
> - pinmux {
> + qup_i2c1_default: qup-i2c1-default-state {
> + default-pins {
> pins = "gpio17", "gpio18";
> function = "qup1";
> };
> };
>
> - qup_i2c2_default: qup-i2c2-default {
> - pinmux {
> + qup_i2c2_default: qup-i2c2-default-state {
> + default-pins {
> pins = "gpio27", "gpio28";
> function = "qup2";
> };
> };
>
> - qup_i2c3_default: qup-i2c3-default {
> - pinmux {
> + qup_i2c3_default: qup-i2c3-default-state {
> + default-pins {
> pins = "gpio41", "gpio42";
> function = "qup3";
> };
> };
>
> - qup_i2c4_default: qup-i2c4-default {
> - pinmux {
> + qup_i2c4_default: qup-i2c4-default-state {
> + default-pins {
> pins = "gpio89", "gpio90";
> function = "qup4";
> };
> };
>
> - qup_i2c5_default: qup-i2c5-default {
> - pinmux {
> + qup_i2c5_default: qup-i2c5-default-state {
> + default-pins {
> pins = "gpio85", "gpio86";
> function = "qup5";
> };
> };
>
> - qup_i2c6_default: qup-i2c6-default {
> - pinmux {
> + qup_i2c6_default: qup-i2c6-default-state {
> + default-pins {
> pins = "gpio45", "gpio46";
> function = "qup6";
> };
> };
>
> - qup_i2c7_default: qup-i2c7-default {
> - pinmux {
> + qup_i2c7_default: qup-i2c7-default-state {
> + default-pins {
> pins = "gpio93", "gpio94";
> function = "qup7";
> };
> };
>
> - qup_i2c8_default: qup-i2c8-default {
> - pinmux {
> + qup_i2c8_default: qup-i2c8-default-state {
> + default-pins {
> pins = "gpio65", "gpio66";
> function = "qup8";
> };
> };
>
> - qup_i2c9_default: qup-i2c9-default {
> - pinmux {
> + qup_i2c9_default: qup-i2c9-default-state {
> + default-pins {
> pins = "gpio6", "gpio7";
> function = "qup9";
> };
> };
>
> - qup_i2c10_default: qup-i2c10-default {
> - pinmux {
> + qup_i2c10_default: qup-i2c10-default-state {
> + default-pins {
> pins = "gpio55", "gpio56";
> function = "qup10";
> };
> };
>
> - qup_i2c11_default: qup-i2c11-default {
> - pinmux {
> + qup_i2c11_default: qup-i2c11-default-state {
> + default-pins {
> pins = "gpio31", "gpio32";
> function = "qup11";
> };
> };
>
> - qup_i2c12_default: qup-i2c12-default {
> - pinmux {
> + qup_i2c12_default: qup-i2c12-default-state {
> + default-pins {
> pins = "gpio49", "gpio50";
> function = "qup12";
> };
> };
>
> - qup_i2c13_default: qup-i2c13-default {
> - pinmux {
> + qup_i2c13_default: qup-i2c13-default-state {
> + default-pins {
> pins = "gpio105", "gpio106";
> function = "qup13";
> };
> };
>
> - qup_i2c14_default: qup-i2c14-default {
> - pinmux {
> + qup_i2c14_default: qup-i2c14-default-state {
> + default-pins {
> pins = "gpio33", "gpio34";
> function = "qup14";
> };
> };
>
> - qup_i2c15_default: qup-i2c15-default {
> - pinmux {
> + qup_i2c15_default: qup-i2c15-default-state {
> + default-pins {
> pins = "gpio81", "gpio82";
> function = "qup15";
> };
> };
>
> - qup_spi0_default: qup-spi0-default {
> - pinmux {
> + qup_spi0_default: qup-spi0-default-state {
> + default-pins {
> pins = "gpio0", "gpio1",
> "gpio2", "gpio3";
> function = "qup0";
> - };
> -
> - config {
> - pins = "gpio0", "gpio1",
> - "gpio2", "gpio3";
> drive-strength = <6>;
> bias-disable;
> };
> };
>
> - qup_spi1_default: qup-spi1-default {
> - pinmux {
> + qup_spi1_default: qup-spi1-default-state {
> + default-pins {
> pins = "gpio17", "gpio18",
> "gpio19", "gpio20";
> function = "qup1";
> };
> };
>
> - qup_spi2_default: qup-spi2-default {
> - pinmux {
> + qup_spi2_default: qup-spi2-default-state {
> + default-pins {
> pins = "gpio27", "gpio28",
> "gpio29", "gpio30";
> function = "qup2";
> };
> };
>
> - qup_spi3_default: qup-spi3-default {
> - pinmux {
> + qup_spi3_default: qup-spi3-default-state {
> + default-pins {
> pins = "gpio41", "gpio42",
> "gpio43", "gpio44";
> function = "qup3";
> };
> };
>
> - qup_spi4_default: qup-spi4-default {
> - pinmux {
> + qup_spi4_default: qup-spi4-default-state {
> + default-pins {
> pins = "gpio89", "gpio90",
> "gpio91", "gpio92";
> function = "qup4";
> };
> };
>
> - qup_spi5_default: qup-spi5-default {
> - pinmux {
> + qup_spi5_default: qup-spi5-default-state {
> + default-pins {
> pins = "gpio85", "gpio86",
> "gpio87", "gpio88";
> function = "qup5";
> };
> };
>
> - qup_spi6_default: qup-spi6-default {
> - pinmux {
> + qup_spi6_default: qup-spi6-default-state {
> + default-pins {
> pins = "gpio45", "gpio46",
> "gpio47", "gpio48";
> function = "qup6";
> };
> };
>
> - qup_spi7_default: qup-spi7-default {
> - pinmux {
> + qup_spi7_default: qup-spi7-default-state {
> + default-pins {
> pins = "gpio93", "gpio94",
> "gpio95", "gpio96";
> function = "qup7";
> };
> };
>
> - qup_spi8_default: qup-spi8-default {
> - pinmux {
> + qup_spi8_default: qup-spi8-default-state {
> + default-pins {
> pins = "gpio65", "gpio66",
> "gpio67", "gpio68";
> function = "qup8";
> };
> };
>
> - qup_spi9_default: qup-spi9-default {
> - pinmux {
> + qup_spi9_default: qup-spi9-default-state {
> + default-pins {
> pins = "gpio6", "gpio7",
> "gpio4", "gpio5";
> function = "qup9";
> };
> };
>
> - qup_spi10_default: qup-spi10-default {
> - pinmux {
> + qup_spi10_default: qup-spi10-default-state {
> + default-pins {
> pins = "gpio55", "gpio56",
> "gpio53", "gpio54";
> function = "qup10";
> };
> };
>
> - qup_spi11_default: qup-spi11-default {
> - pinmux {
> + qup_spi11_default: qup-spi11-default-state {
> + default-pins {
> pins = "gpio31", "gpio32",
> "gpio33", "gpio34";
> function = "qup11";
> };
> };
>
> - qup_spi12_default: qup-spi12-default {
> - pinmux {
> + qup_spi12_default: qup-spi12-default-state {
> + default-pins {
> pins = "gpio49", "gpio50",
> "gpio51", "gpio52";
> function = "qup12";
> };
> };
>
> - qup_spi13_default: qup-spi13-default {
> - pinmux {
> + qup_spi13_default: qup-spi13-default-state {
> + default-pins {
> pins = "gpio105", "gpio106",
> "gpio107", "gpio108";
> function = "qup13";
> };
> };
>
> - qup_spi14_default: qup-spi14-default {
> - pinmux {
> + qup_spi14_default: qup-spi14-default-state {
> + default-pins {
> pins = "gpio33", "gpio34",
> "gpio31", "gpio32";
> function = "qup14";
> };
> };
>
> - qup_spi15_default: qup-spi15-default {
> - pinmux {
> + qup_spi15_default: qup-spi15-default-state {
> + default-pins {
> pins = "gpio81", "gpio82",
> "gpio83", "gpio84";
> function = "qup15";
> };
> };
>
> - qup_uart0_default: qup-uart0-default {
> - pinmux {
> + qup_uart0_default: qup-uart0-default-state {
> + default-pins {
> pins = "gpio2", "gpio3";
> function = "qup0";
> };
> };
>
> - qup_uart1_default: qup-uart1-default {
> - pinmux {
> + qup_uart1_default: qup-uart1-default-state {
> + default-pins {
> pins = "gpio19", "gpio20";
> function = "qup1";
> };
> };
>
> - qup_uart2_default: qup-uart2-default {
> - pinmux {
> + qup_uart2_default: qup-uart2-default-state {
> + default-pins {
> pins = "gpio29", "gpio30";
> function = "qup2";
> };
> };
>
> - qup_uart3_default: qup-uart3-default {
> - pinmux {
> + qup_uart3_default: qup-uart3-default-state {
> + default-pins {
> pins = "gpio43", "gpio44";
> function = "qup3";
> };
> };
>
> - qup_uart4_default: qup-uart4-default {
> - pinmux {
> + qup_uart4_default: qup-uart4-default-state {
> + default-pins {
> pins = "gpio91", "gpio92";
> function = "qup4";
> };
> };
>
> - qup_uart5_default: qup-uart5-default {
> - pinmux {
> + qup_uart5_default: qup-uart5-default-state {
> + default-pins {
> pins = "gpio87", "gpio88";
> function = "qup5";
> };
> };
>
> - qup_uart6_default: qup-uart6-default {
> - pinmux {
> + qup_uart6_default: qup-uart6-default-state {
> + default-pins {
> pins = "gpio47", "gpio48";
> function = "qup6";
> };
> };
>
> - qup_uart7_default: qup-uart7-default {
> - pinmux {
> + qup_uart7_default: qup-uart7-default-state {
> + default-pins {
> pins = "gpio95", "gpio96";
> function = "qup7";
> };
> };
>
> - qup_uart8_default: qup-uart8-default {
> - pinmux {
> + qup_uart8_default: qup-uart8-default-state {
> + default-pins {
> pins = "gpio67", "gpio68";
> function = "qup8";
> };
> };
>
> - qup_uart9_default: qup-uart9-default {
> - pinmux {
> + qup_uart9_default: qup-uart9-default-state {
> + default-pins {
> pins = "gpio4", "gpio5";
> function = "qup9";
> };
> };
>
> - qup_uart10_default: qup-uart10-default {
> - pinmux {
> + qup_uart10_default: qup-uart10-default-state {
> + default-pins {
> pins = "gpio53", "gpio54";
> function = "qup10";
> };
> };
>
> - qup_uart11_default: qup-uart11-default {
> - pinmux {
> + qup_uart11_default: qup-uart11-default-state {
> + default-pins {
> pins = "gpio33", "gpio34";
> function = "qup11";
> };
> };
>
> - qup_uart12_default: qup-uart12-default {
> - pinmux {
> + qup_uart12_default: qup-uart12-default-state {
> + default-pins {
> pins = "gpio51", "gpio52";
> function = "qup12";
> };
> };
>
> - qup_uart13_default: qup-uart13-default {
> - pinmux {
> + qup_uart13_default: qup-uart13-default-state {
> + default-pins {
> pins = "gpio107", "gpio108";
> function = "qup13";
> };
> };
>
> - qup_uart14_default: qup-uart14-default {
> - pinmux {
> + qup_uart14_default: qup-uart14-default-state {
> + default-pins {
> pins = "gpio31", "gpio32";
> function = "qup14";
> };
> };
>
> - qup_uart15_default: qup-uart15-default {
> - pinmux {
> + qup_uart15_default: qup-uart15-default-state {
> + default-pins {
> pins = "gpio83", "gpio84";
> function = "qup15";
> };
> };
>
> - quat_mi2s_sleep: quat_mi2s_sleep {
> - mux {
> + quat_mi2s_sleep: quat-mi2s-sleep-state {
> + default-pins {
> pins = "gpio58", "gpio59";
> function = "gpio";
> - };
> -
> - config {
> - pins = "gpio58", "gpio59";
> drive-strength = <2>;
> bias-pull-down;
> input-enable;
> };
> };
>
> - quat_mi2s_active: quat_mi2s_active {
> - mux {
> + quat_mi2s_active: quat-mi2s-active-state {
> + default-pins {
> pins = "gpio58", "gpio59";
> function = "qua_mi2s";
> - };
> -
> - config {
> - pins = "gpio58", "gpio59";
> drive-strength = <8>;
> bias-disable;
> output-high;
> };
> };
>
> - quat_mi2s_sd0_sleep: quat_mi2s_sd0_sleep {
> - mux {
> + quat_mi2s_sd0_sleep: quat-mi2s-sd0-sleep-state {
> + default-pins {
> pins = "gpio60";
> function = "gpio";
> - };
> -
> - config {
> - pins = "gpio60";
> drive-strength = <2>;
> bias-pull-down;
> input-enable;
> };
> };
>
> - quat_mi2s_sd0_active: quat_mi2s_sd0_active {
> - mux {
> + quat_mi2s_sd0_active: quat-mi2s-sd0-active-state {
> + default-pins {
> pins = "gpio60";
> function = "qua_mi2s";
> - };
> -
> - config {
> - pins = "gpio60";
> drive-strength = <8>;
> bias-disable;
> };
> };
>
> - quat_mi2s_sd1_sleep: quat_mi2s_sd1_sleep {
> - mux {
> + quat_mi2s_sd1_sleep: quat-mi2s-sd1-sleep-state {
> + default-pins {
> pins = "gpio61";
> function = "gpio";
> - };
> -
> - config {
> - pins = "gpio61";
> drive-strength = <2>;
> bias-pull-down;
> input-enable;
> };
> };
>
> - quat_mi2s_sd1_active: quat_mi2s_sd1_active {
> - mux {
> + quat_mi2s_sd1_active: quat-mi2s-sd1-active-state {
> + default-pins {
> pins = "gpio61";
> function = "qua_mi2s";
> - };
> -
> - config {
> - pins = "gpio61";
> drive-strength = <8>;
> bias-disable;
> };
> };
>
> - quat_mi2s_sd2_sleep: quat_mi2s_sd2_sleep {
> - mux {
> + quat_mi2s_sd2_sleep: quat-mi2s-sd2-sleep-state {
> + default-pins {
> pins = "gpio62";
> function = "gpio";
> - };
> -
> - config {
> - pins = "gpio62";
> drive-strength = <2>;
> bias-pull-down;
> input-enable;
> };
> };
>
> - quat_mi2s_sd2_active: quat_mi2s_sd2_active {
> - mux {
> + quat_mi2s_sd2_active: quat-mi2s-sd2-active-state {
> + default-pins {
> pins = "gpio62";
> function = "qua_mi2s";
> - };
> -
> - config {
> - pins = "gpio62";
> drive-strength = <8>;
> bias-disable;
> };
> };
>
> - quat_mi2s_sd3_sleep: quat_mi2s_sd3_sleep {
> - mux {
> + quat_mi2s_sd3_sleep: quat-mi2s-sd3-sleep-state {
> + default-pins {
> pins = "gpio63";
> function = "gpio";
> - };
> -
> - config {
> - pins = "gpio63";
> drive-strength = <2>;
> bias-pull-down;
> input-enable;
> };
> };
>
> - quat_mi2s_sd3_active: quat_mi2s_sd3_active {
> - mux {
> + quat_mi2s_sd3_active: quat-mi2s-sd3-active-state {
> + default-pins {
> pins = "gpio63";
> function = "qua_mi2s";
> - };
> -
> - config {
> - pins = "gpio63";
> drive-strength = <8>;
> bias-disable;
> };
> diff --git a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> index 74f43da51fa5..e4473b31cea9 100644
> --- a/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts
> @@ -479,7 +479,7 @@ &mss_pil {
> };
>
> &qup_i2c10_default {
> - pinconf {
> + default-pins {
> pins = "gpio55", "gpio56";
> drive-strength = <2>;
> bias-disable;
> @@ -487,31 +487,29 @@ pinconf {
> };
>
> &qup_i2c12_default {
> - pinmux {
> + default-pins {
> drive-strength = <2>;
> bias-disable;
> };
> };
>
> &qup_uart6_default {
> - pinmux {
> - pins = "gpio45", "gpio46", "gpio47", "gpio48";
> - function = "qup6";
> - };
> -
> - cts {
> + cts-pins {
> pins = "gpio45";
> + function = "qup6";
> bias-pull-down;
> };
>
> - rts-tx {
> + rts-tx-pins {
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - rx {
> + rx-pins {
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
> @@ -621,13 +619,14 @@ codec {
> &tlmm {
> gpio-reserved-ranges = <0 4>, <81 4>;
>
> - sn65dsi86_pin_active: sn65dsi86-enable {
> + sn65dsi86_pin_active: sn65dsi86-enable-state {
> pins = "gpio96";
> + function = "gpio";
> drive-strength = <2>;
> bias-disable;
> };
>
> - i2c3_hid_active: i2c2-hid-active {
> + i2c3_hid_active: i2c2-hid-active-state {
> pins = "gpio37";
> function = "gpio";
>
> @@ -636,7 +635,7 @@ i2c3_hid_active: i2c2-hid-active {
> drive-strength = <2>;
> };
>
> - i2c5_hid_active: i2c5-hid-active {
> + i2c5_hid_active: i2c5-hid-active-state {
> pins = "gpio125";
> function = "gpio";
>
> @@ -645,7 +644,7 @@ i2c5_hid_active: i2c5-hid-active {
> drive-strength = <2>;
> };
>
> - i2c11_hid_active: i2c11-hid-active {
> + i2c11_hid_active: i2c11-hid-active-state {
> pins = "gpio92";
> function = "gpio";
>
> @@ -654,7 +653,7 @@ i2c11_hid_active: i2c11-hid-active {
> drive-strength = <2>;
> };
>
> - wcd_intr_default: wcd_intr_default {
> + wcd_intr_default: wcd-intr-default-state {
> pins = "gpio54";
> function = "gpio";
>
> @@ -663,7 +662,7 @@ wcd_intr_default: wcd_intr_default {
> drive-strength = <2>;
> };
>
> - lid_pin_active: lid-pin {
> + lid_pin_active: lid-pin-state {
> pins = "gpio124";
> function = "gpio";
>
> @@ -671,7 +670,7 @@ lid_pin_active: lid-pin {
> bias-disable;
> };
>
> - mode_pin_active: mode-pin {
> + mode_pin_active: mode-pin-state {
> pins = "gpio95";
> function = "gpio";
>
> diff --git a/arch/arm64/boot/dts/qcom/sdm850-samsung-w737.dts b/arch/arm64/boot/dts/qcom/sdm850-samsung-w737.dts
> index d028a7eb364a..75b612fb4775 100644
> --- a/arch/arm64/boot/dts/qcom/sdm850-samsung-w737.dts
> +++ b/arch/arm64/boot/dts/qcom/sdm850-samsung-w737.dts
> @@ -399,7 +399,7 @@ &mss_pil {
> };
>
> &qup_i2c10_default {
> - pinconf {
> + default-pins {
> pins = "gpio55", "gpio56";
> drive-strength = <2>;
> bias-disable;
> @@ -407,7 +407,7 @@ pinconf {
> };
>
> &qup_i2c11_default {
> - pinconf {
> + default-pins {
> pins = "gpio31", "gpio32";
> drive-strength = <2>;
> bias-disable;
> @@ -415,31 +415,29 @@ pinconf {
> };
>
> &qup_i2c12_default {
> - pinmux {
> + default-pins {
> drive-strength = <2>;
> bias-disable;
> };
> };
>
> &qup_uart6_default {
> - pinmux {
> - pins = "gpio45", "gpio46", "gpio47", "gpio48";
> - function = "qup6";
> - };
> -
> - cts {
> + cts-pins {
> pins = "gpio45";
> + function = "qup6";
> bias-pull-down;
> };
>
> - rts-tx {
> + rts-tx-pins {
> pins = "gpio46", "gpio47";
> + function = "qup6";
> drive-strength = <2>;
> bias-disable;
> };
>
> - rx {
> + rx-pins {
> pins = "gpio48";
> + function = "qup6";
> bias-pull-up;
> };
> };
> @@ -549,59 +547,41 @@ codec {
> &tlmm {
> gpio-reserved-ranges = <0 6>, <85 4>;
>
> - pen_irq_l: pen-irq-l {
> - pinmux {
> - pins = "gpio119";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio119";
> - bias-disable;
> - };
> + pen_irq_l: pen-irq-l-state {
> + pins = "gpio119";
> + function = "gpio";
> + bias-disable;
> };
>
> - pen_pdct_l: pen-pdct-l {
> - pinmux {
> - pins = "gpio124";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio124";
> - bias-disable;
> - drive-strength = <2>;
> - output-high;
> - };
> + pen_pdct_l: pen-pdct-l-state {
> + pins = "gpio124";
> + function = "gpio";
> + bias-disable;
> + drive-strength = <2>;
> + output-high;
> };
>
> - pen_rst_l: pen-rst-l {
> - pinmux {
> - pins = "gpio21";
> - function = "gpio";
> - };
> -
> - pinconf {
> - pins = "gpio21";
> - bias-disable;
> - drive-strength = <2>;
> -
> - /*
> - * The pen driver doesn't currently support
> - * driving this reset line. By specifying
> - * output-high here we're relying on the fact
> - * that this pin has a default pulldown at boot
> - * (which makes sure the pen was in reset if it
> - * was powered) and then we set it high here to
> - * take it out of reset. Better would be if the
> - * pen driver could control this and we could
> - * remove "output-high" here.
> - */
> - output-high;
> - };
> + pen_rst_l: pen-rst-l-state {
> + pins = "gpio21";
> + function = "gpio";
> + bias-disable;
> + drive-strength = <2>;
> +
> + /*
> + * The pen driver doesn't currently support
> + * driving this reset line. By specifying
> + * output-high here we're relying on the fact
> + * that this pin has a default pulldown at boot
> + * (which makes sure the pen was in reset if it
> + * was powered) and then we set it high here to
> + * take it out of reset. Better would be if the
> + * pen driver could control this and we could
> + * remove "output-high" here.
> + */
> + output-high;
> };
>
> - wcd_intr_default: wcd_intr_default {
> + wcd_intr_default: wcd-intr-default-state {
> pins = "gpio54";
> function = "gpio";
>
Powered by blists - more mailing lists