[PATCH 1/2] arm64: dts: hisilicon: Add support for Hikey 970 PMIC
Wei Xu
xuwei5 at hisilicon.com
Sat Sep 18 00:08:13 PDT 2021
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 at 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 at 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 at 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 at 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 at 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 at 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
> .
>
More information about the linux-arm-kernel
mailing list