Message ID | 75bd73dc3a1a7a8d08eab60d4aab34e5feb2a000.1630583382.git.mchehab+huawei@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add DTS bits to enable USB3 PHY on HiKey970 | expand |
Em Thu, 2 Sep 2021 13:55:23 +0200 Mauro Carvalho Chehab <mchehab+huawei@kernel.org> escreveu: > Add a device tree for the HiSilicon 6421v600 SPMI PMIC, used > on HiKey970 board. > > As we now have support for it, change the fixed regulators > used by the SD I/O to use the proper LDO supplies. Hi Wei, Gentile ping. Now that the drivers and the DT schema are already upstreamed, could you please merge those two patches? Thank you! Mauro > > Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> > --- > .../boot/dts/hisilicon/hi3670-hikey970.dts | 22 +---- > arch/arm64/boot/dts/hisilicon/hi3670.dtsi | 2 +- > .../boot/dts/hisilicon/hikey970-pmic.dtsi | 86 +++++++++++++++++++ > 3 files changed, 90 insertions(+), 20 deletions(-) > create mode 100644 arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi > > diff --git a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts > index d8abf442ee7e..7c32f5fd5cc5 100644 > --- a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts > +++ b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts > @@ -12,6 +12,7 @@ > > #include "hi3670.dtsi" > #include "hikey970-pinctrl.dtsi" > +#include "hikey970-pmic.dtsi" > > / { > model = "HiKey970"; > @@ -39,23 +40,6 @@ memory@0 { > reg = <0x0 0x0 0x0 0x0>; > }; > > - sd_1v8: regulator-1v8 { > - compatible = "regulator-fixed"; > - regulator-name = "fixed-1.8V"; > - regulator-min-microvolt = <1800000>; > - regulator-max-microvolt = <1800000>; > - regulator-always-on; > - }; > - > - sd_3v3: regulator-3v3 { > - compatible = "regulator-fixed"; > - regulator-name = "fixed-3.3V"; > - regulator-min-microvolt = <3300000>; > - regulator-max-microvolt = <3300000>; > - regulator-boot-on; > - regulator-always-on; > - }; > - > wlan_en: wlan-en-1-8v { > compatible = "regulator-fixed"; > regulator-name = "wlan-en-regulator"; > @@ -402,8 +386,8 @@ &dwmmc1 { > pinctrl-0 = <&sd_pmx_func > &sd_clk_cfg_func > &sd_cfg_func>; > - vmmc-supply = <&sd_3v3>; > - vqmmc-supply = <&sd_1v8>; > + vmmc-supply = <&ldo16>; > + vqmmc-supply = <&ldo9>; > status = "okay"; > }; > > diff --git a/arch/arm64/boot/dts/hisilicon/hi3670.dtsi b/arch/arm64/boot/dts/hisilicon/hi3670.dtsi > index 20698cfd0637..636c8817df7e 100644 > --- a/arch/arm64/boot/dts/hisilicon/hi3670.dtsi > +++ b/arch/arm64/boot/dts/hisilicon/hi3670.dtsi > @@ -669,7 +669,7 @@ ufs: ufs@ff3c0000 { > interrupt-parent = <&gic>; > interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&crg_ctrl HI3670_CLK_GATE_UFSIO_REF>, > - <&crg_ctrl HI3670_CLK_GATE_UFS_SUBSYS>; > + <&crg_ctrl HI3670_CLK_GATE_UFS_SUBSYS>; > clock-names = "ref_clk", "phy_clk"; > freq-table-hz = <0 0 > 0 0>; > diff --git a/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi b/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi > new file mode 100644 > index 000000000000..970047f2dabd > --- /dev/null > +++ b/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi > @@ -0,0 +1,86 @@ > +// SPDX-License-Identifier: GPL-2.0 > +/* > + * dts file for Hi6421v600 SPMI PMIC used at the HiKey970 Development Board > + * > + * Copyright (C) 2020, Huawei Tech. Co., Ltd. > + */ > + > +#include <dt-bindings/spmi/spmi.h> > + > +/ { > + spmi: spmi@fff24000 { > + compatible = "hisilicon,kirin970-spmi-controller"; > + #address-cells = <2>; > + #size-cells = <0>; > + status = "okay"; > + reg = <0x0 0xfff24000 0x0 0x1000>; > + hisilicon,spmi-channel = <2>; > + > + pmic: pmic@0 { > + compatible = "hisilicon,hi6421-spmi"; > + reg = <0 SPMI_USID>; > + > + #interrupt-cells = <2>; > + interrupt-controller; > + gpios = <&gpio28 0 0>; > + > + regulators { > + #address-cells = <1>; > + #size-cells = <0>; > + > + ldo3: ldo3 { /* HDMI */ > + regulator-name = "ldo3"; > + regulator-min-microvolt = <1500000>; > + regulator-max-microvolt = <2000000>; > + regulator-boot-on; > + }; > + > + ldo4: ldo4 { /* 40 PIN */ > + regulator-name = "ldo4"; > + regulator-min-microvolt = <1725000>; > + regulator-max-microvolt = <1900000>; > + regulator-boot-on; > + }; > + > + ldo9: ldo9 { /* SDCARD I/O */ > + regulator-name = "ldo9"; > + regulator-min-microvolt = <1750000>; > + regulator-max-microvolt = <3300000>; > + regulator-boot-on; > + }; > + > + ldo15: ldo15 { /* UFS */ > + regulator-name = "ldo15"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3000000>; > + regulator-always-on; > + }; > + > + ldo16: ldo16 { /* SD */ > + regulator-name = "ldo16"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <3000000>; > + regulator-boot-on; > + }; > + > + ldo17: ldo17 { /* USB HUB */ > + regulator-name = "ldo17"; > + regulator-min-microvolt = <2500000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo33: ldo33 { /* PEX8606 */ > + regulator-name = "ldo33"; > + regulator-min-microvolt = <2500000>; > + regulator-max-microvolt = <3300000>; > + }; > + > + ldo34: ldo34 { /* GPS AUX IN VDD */ > + regulator-name = "ldo34"; > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <3300000>; > + }; > + }; > + }; > + }; > +}; Thanks, Mauro
Hi Mauro, On 2021/9/15 20:51, Mauro Carvalho Chehab wrote: > Em Thu, 2 Sep 2021 13:55:23 +0200 > Mauro Carvalho Chehab <mchehab+huawei@kernel.org> escreveu: > >> Add a device tree for the HiSilicon 6421v600 SPMI PMIC, used >> on HiKey970 board. >> >> As we now have support for it, change the fixed regulators >> used by the SD I/O to use the proper LDO supplies. > > Hi Wei, > > Gentile ping. > > Now that the drivers and the DT schema are already upstreamed, could > you please merge those two patches? Applied the patch 1 to the HiSilicon arm64 dt tree. Thanks! Best Regards, Wei > > Thank you! > Mauro > >> >> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> >> --- >> .../boot/dts/hisilicon/hi3670-hikey970.dts | 22 +---- >> arch/arm64/boot/dts/hisilicon/hi3670.dtsi | 2 +- >> .../boot/dts/hisilicon/hikey970-pmic.dtsi | 86 +++++++++++++++++++ >> 3 files changed, 90 insertions(+), 20 deletions(-) >> create mode 100644 arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi >> >> diff --git a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts >> index d8abf442ee7e..7c32f5fd5cc5 100644 >> --- a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts >> +++ b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts >> @@ -12,6 +12,7 @@ >> >> #include "hi3670.dtsi" >> #include "hikey970-pinctrl.dtsi" >> +#include "hikey970-pmic.dtsi" >> >> / { >> model = "HiKey970"; >> @@ -39,23 +40,6 @@ memory@0 { >> reg = <0x0 0x0 0x0 0x0>; >> }; >> >> - sd_1v8: regulator-1v8 { >> - compatible = "regulator-fixed"; >> - regulator-name = "fixed-1.8V"; >> - regulator-min-microvolt = <1800000>; >> - regulator-max-microvolt = <1800000>; >> - regulator-always-on; >> - }; >> - >> - sd_3v3: regulator-3v3 { >> - compatible = "regulator-fixed"; >> - regulator-name = "fixed-3.3V"; >> - regulator-min-microvolt = <3300000>; >> - regulator-max-microvolt = <3300000>; >> - regulator-boot-on; >> - regulator-always-on; >> - }; >> - >> wlan_en: wlan-en-1-8v { >> compatible = "regulator-fixed"; >> regulator-name = "wlan-en-regulator"; >> @@ -402,8 +386,8 @@ &dwmmc1 { >> pinctrl-0 = <&sd_pmx_func >> &sd_clk_cfg_func >> &sd_cfg_func>; >> - vmmc-supply = <&sd_3v3>; >> - vqmmc-supply = <&sd_1v8>; >> + vmmc-supply = <&ldo16>; >> + vqmmc-supply = <&ldo9>; >> status = "okay"; >> }; >> >> diff --git a/arch/arm64/boot/dts/hisilicon/hi3670.dtsi b/arch/arm64/boot/dts/hisilicon/hi3670.dtsi >> index 20698cfd0637..636c8817df7e 100644 >> --- a/arch/arm64/boot/dts/hisilicon/hi3670.dtsi >> +++ b/arch/arm64/boot/dts/hisilicon/hi3670.dtsi >> @@ -669,7 +669,7 @@ ufs: ufs@ff3c0000 { >> interrupt-parent = <&gic>; >> interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>; >> clocks = <&crg_ctrl HI3670_CLK_GATE_UFSIO_REF>, >> - <&crg_ctrl HI3670_CLK_GATE_UFS_SUBSYS>; >> + <&crg_ctrl HI3670_CLK_GATE_UFS_SUBSYS>; >> clock-names = "ref_clk", "phy_clk"; >> freq-table-hz = <0 0 >> 0 0>; >> diff --git a/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi b/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi >> new file mode 100644 >> index 000000000000..970047f2dabd >> --- /dev/null >> +++ b/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi >> @@ -0,0 +1,86 @@ >> +// SPDX-License-Identifier: GPL-2.0 >> +/* >> + * dts file for Hi6421v600 SPMI PMIC used at the HiKey970 Development Board >> + * >> + * Copyright (C) 2020, Huawei Tech. Co., Ltd. >> + */ >> + >> +#include <dt-bindings/spmi/spmi.h> >> + >> +/ { >> + spmi: spmi@fff24000 { >> + compatible = "hisilicon,kirin970-spmi-controller"; >> + #address-cells = <2>; >> + #size-cells = <0>; >> + status = "okay"; >> + reg = <0x0 0xfff24000 0x0 0x1000>; >> + hisilicon,spmi-channel = <2>; >> + >> + pmic: pmic@0 { >> + compatible = "hisilicon,hi6421-spmi"; >> + reg = <0 SPMI_USID>; >> + >> + #interrupt-cells = <2>; >> + interrupt-controller; >> + gpios = <&gpio28 0 0>; >> + >> + regulators { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + ldo3: ldo3 { /* HDMI */ >> + regulator-name = "ldo3"; >> + regulator-min-microvolt = <1500000>; >> + regulator-max-microvolt = <2000000>; >> + regulator-boot-on; >> + }; >> + >> + ldo4: ldo4 { /* 40 PIN */ >> + regulator-name = "ldo4"; >> + regulator-min-microvolt = <1725000>; >> + regulator-max-microvolt = <1900000>; >> + regulator-boot-on; >> + }; >> + >> + ldo9: ldo9 { /* SDCARD I/O */ >> + regulator-name = "ldo9"; >> + regulator-min-microvolt = <1750000>; >> + regulator-max-microvolt = <3300000>; >> + regulator-boot-on; >> + }; >> + >> + ldo15: ldo15 { /* UFS */ >> + regulator-name = "ldo15"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <3000000>; >> + regulator-always-on; >> + }; >> + >> + ldo16: ldo16 { /* SD */ >> + regulator-name = "ldo16"; >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <3000000>; >> + regulator-boot-on; >> + }; >> + >> + ldo17: ldo17 { /* USB HUB */ >> + regulator-name = "ldo17"; >> + regulator-min-microvolt = <2500000>; >> + regulator-max-microvolt = <3300000>; >> + }; >> + >> + ldo33: ldo33 { /* PEX8606 */ >> + regulator-name = "ldo33"; >> + regulator-min-microvolt = <2500000>; >> + regulator-max-microvolt = <3300000>; >> + }; >> + >> + ldo34: ldo34 { /* GPS AUX IN VDD */ >> + regulator-name = "ldo34"; >> + regulator-min-microvolt = <2600000>; >> + regulator-max-microvolt = <3300000>; >> + }; >> + }; >> + }; >> + }; >> +}; > > > > Thanks, > Mauro > . >
diff --git a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts index d8abf442ee7e..7c32f5fd5cc5 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts +++ b/arch/arm64/boot/dts/hisilicon/hi3670-hikey970.dts @@ -12,6 +12,7 @@ #include "hi3670.dtsi" #include "hikey970-pinctrl.dtsi" +#include "hikey970-pmic.dtsi" / { model = "HiKey970"; @@ -39,23 +40,6 @@ memory@0 { reg = <0x0 0x0 0x0 0x0>; }; - sd_1v8: regulator-1v8 { - compatible = "regulator-fixed"; - regulator-name = "fixed-1.8V"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - }; - - sd_3v3: regulator-3v3 { - compatible = "regulator-fixed"; - regulator-name = "fixed-3.3V"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-boot-on; - regulator-always-on; - }; - wlan_en: wlan-en-1-8v { compatible = "regulator-fixed"; regulator-name = "wlan-en-regulator"; @@ -402,8 +386,8 @@ &dwmmc1 { pinctrl-0 = <&sd_pmx_func &sd_clk_cfg_func &sd_cfg_func>; - vmmc-supply = <&sd_3v3>; - vqmmc-supply = <&sd_1v8>; + vmmc-supply = <&ldo16>; + vqmmc-supply = <&ldo9>; status = "okay"; }; diff --git a/arch/arm64/boot/dts/hisilicon/hi3670.dtsi b/arch/arm64/boot/dts/hisilicon/hi3670.dtsi index 20698cfd0637..636c8817df7e 100644 --- a/arch/arm64/boot/dts/hisilicon/hi3670.dtsi +++ b/arch/arm64/boot/dts/hisilicon/hi3670.dtsi @@ -669,7 +669,7 @@ ufs: ufs@ff3c0000 { interrupt-parent = <&gic>; interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>; clocks = <&crg_ctrl HI3670_CLK_GATE_UFSIO_REF>, - <&crg_ctrl HI3670_CLK_GATE_UFS_SUBSYS>; + <&crg_ctrl HI3670_CLK_GATE_UFS_SUBSYS>; clock-names = "ref_clk", "phy_clk"; freq-table-hz = <0 0 0 0>; diff --git a/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi b/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi new file mode 100644 index 000000000000..970047f2dabd --- /dev/null +++ b/arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi @@ -0,0 +1,86 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * dts file for Hi6421v600 SPMI PMIC used at the HiKey970 Development Board + * + * Copyright (C) 2020, Huawei Tech. Co., Ltd. + */ + +#include <dt-bindings/spmi/spmi.h> + +/ { + spmi: spmi@fff24000 { + compatible = "hisilicon,kirin970-spmi-controller"; + #address-cells = <2>; + #size-cells = <0>; + status = "okay"; + reg = <0x0 0xfff24000 0x0 0x1000>; + hisilicon,spmi-channel = <2>; + + pmic: pmic@0 { + compatible = "hisilicon,hi6421-spmi"; + reg = <0 SPMI_USID>; + + #interrupt-cells = <2>; + interrupt-controller; + gpios = <&gpio28 0 0>; + + regulators { + #address-cells = <1>; + #size-cells = <0>; + + ldo3: ldo3 { /* HDMI */ + regulator-name = "ldo3"; + regulator-min-microvolt = <1500000>; + regulator-max-microvolt = <2000000>; + regulator-boot-on; + }; + + ldo4: ldo4 { /* 40 PIN */ + regulator-name = "ldo4"; + regulator-min-microvolt = <1725000>; + regulator-max-microvolt = <1900000>; + regulator-boot-on; + }; + + ldo9: ldo9 { /* SDCARD I/O */ + regulator-name = "ldo9"; + regulator-min-microvolt = <1750000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + }; + + ldo15: ldo15 { /* UFS */ + regulator-name = "ldo15"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3000000>; + regulator-always-on; + }; + + ldo16: ldo16 { /* SD */ + regulator-name = "ldo16"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3000000>; + regulator-boot-on; + }; + + ldo17: ldo17 { /* USB HUB */ + regulator-name = "ldo17"; + regulator-min-microvolt = <2500000>; + regulator-max-microvolt = <3300000>; + }; + + ldo33: ldo33 { /* PEX8606 */ + regulator-name = "ldo33"; + regulator-min-microvolt = <2500000>; + regulator-max-microvolt = <3300000>; + }; + + ldo34: ldo34 { /* GPS AUX IN VDD */ + regulator-name = "ldo34"; + regulator-min-microvolt = <2600000>; + regulator-max-microvolt = <3300000>; + }; + }; + }; + }; +};
Add a device tree for the HiSilicon 6421v600 SPMI PMIC, used on HiKey970 board. As we now have support for it, change the fixed regulators used by the SD I/O to use the proper LDO supplies. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> --- .../boot/dts/hisilicon/hi3670-hikey970.dts | 22 +---- arch/arm64/boot/dts/hisilicon/hi3670.dtsi | 2 +- .../boot/dts/hisilicon/hikey970-pmic.dtsi | 86 +++++++++++++++++++ 3 files changed, 90 insertions(+), 20 deletions(-) create mode 100644 arch/arm64/boot/dts/hisilicon/hikey970-pmic.dtsi