Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1694327

Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803 for Banana Pi M64

From Icenowy Zheng <icenowy@aosc.io>
Newsgroups linux.kernel
Subject Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803 for Banana Pi M64
Date 2017-07-23 17:50 +0200
Message-ID <u6riO-Qt-13@gated-at.bofh.it> (permalink)
References (2 earlier) <u5ARb-1Up-13@gated-at.bofh.it> <u5ARc-1Up-17@gated-at.bofh.it> <u5B0R-1Xy-1@gated-at.bofh.it> <u5ErM-4gx-23@gated-at.bofh.it> <u6qPM-FU-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



于 2017年7月23日 GMT+08:00 下午11:15:04, Chen-Yu Tsai <wens@csie.org> 写到:
>On Fri, Jul 21, 2017 at 7:38 PM,  <icenowy@aosc.io> wrote:
>> 在 2017-07-21 15:49,Chen-Yu Tsai 写道:
>>>
>>> On Fri, Jul 21, 2017 at 3:44 PM, Icenowy Zheng <icenowy@aosc.io>
>wrote:
>>>>
>>>>
>>>>
>>>> 于 2017年7月21日 GMT+08:00 下午3:42:07, Chen-Yu Tsai <wens@csie.org> 写到:
>>>>>
>>>>> On Fri, Jul 21, 2017 at 7:07 AM, Icenowy Zheng <icenowy@aosc.io>
>wrote:
>>>>>>
>>>>>> Banana Pi M64 board uses an AXP803 PMIC.
>>>>>>
>>>>>> Enable the PMIC and its regulators.
>>>>>>
>>>>>> As we have now proper regulators support, missing or dummy
>regulators
>>>>>> are changed to the correct ones.
>>>>>>
>>>>>> Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
>>>>>> ---
>>>>>>  .../boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 116
>>>>>
>>>>> +++++++++++++++++++--
>>>>>>
>>>>>>  1 file changed, 106 insertions(+), 10 deletions(-)
>>>>>>
>>>>>> diff --git
>>>>>
>>>>> a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>>>>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>>>>>>
>>>>>> index 829922d077fb..51d67c0a0edf 100644
>>>>>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>>>>>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
>>>>>> @@ -58,13 +58,6 @@
>>>>>>         chosen {
>>>>>>                 stdout-path = "serial0:115200n8";
>>>>>>         };
>>>>>> -
>>>>>> -       reg_vcc3v3: vcc3v3 {
>>>>>> -               compatible = "regulator-fixed";
>>>>>> -               regulator-name = "vcc3v3";
>>>>>> -               regulator-min-microvolt = <3300000>;
>>>>>> -               regulator-max-microvolt = <3300000>;
>>>>>> -       };
>>>>>>  };
>>>>>>
>>>>>>  &ehci1 {
>>>>>> @@ -76,6 +69,7 @@
>>>>>>         pinctrl-0 = <&rgmii_pins>;
>>>>>>         phy-mode = "rgmii";
>>>>>>         phy-handle = <&ext_rgmii_phy>;
>>>>>> +       phy-supply = <&reg_dc1sw>;
>>>>>>         status = "okay";
>>>>>>  };
>>>>>>
>>>>>> @@ -99,7 +93,7 @@
>>>>>>  &mmc0 {
>>>>>>         pinctrl-names = "default";
>>>>>>         pinctrl-0 = <&mmc0_pins>;
>>>>>> -       vmmc-supply = <&reg_vcc3v3>;
>>>>>> +       vmmc-supply = <&reg_dcdc1>;
>>>>>>         cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>;
>>>>>>         cd-inverted;
>>>>>>         disable-wp;
>>>>>> @@ -110,7 +104,8 @@
>>>>>>  &mmc1 {
>>>>>>         pinctrl-names = "default";
>>>>>>         pinctrl-0 = <&mmc1_pins>;
>>>>>> -       vmmc-supply = <&reg_vcc3v3>;
>>>>>> +       vmmc-supply = <&reg_dldo2>;
>>>>>> +       vqmmc-supply = <&reg_dldo4>;
>>>>>>         bus-width = <4>;
>>>>>>         non-removable;
>>>>>>         status = "okay";
>>>>>> @@ -119,7 +114,7 @@
>>>>>>  &mmc2 {
>>>>>>         pinctrl-names = "default";
>>>>>>         pinctrl-0 = <&mmc2_pins>;
>>>>>> -       vmmc-supply = <&reg_vcc3v3>;
>>>>>> +       vmmc-supply = <&reg_dcdc1>;
>>>>>>         bus-width = <8>;
>>>>>>         non-removable;
>>>>>>         cap-mmc-hw-reset;
>>>>>> @@ -130,6 +125,107 @@
>>>>>>         status = "okay";
>>>>>>  };
>>>>>>
>>>>>> +&r_rsb {
>>>>>> +       status = "okay";
>>>>>> +
>>>>>> +       axp803: pmic@3a3 {
>>>>>> +               compatible = "x-powers,axp803";
>>>>>> +               reg = <0x3a3>;
>>>>>> +               interrupt-parent = <&r_intc>;
>>>>>> +               interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
>>>>>> +       };
>>>>>> +};
>>>>>> +
>>>>>> +#include "axp803.dtsi"
>>>>>> +
>>>>>> +&reg_aldo2 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <1800000>;
>>>>>> +       regulator-max-microvolt = <3300000>;
>>>>>> +       regulator-name = "vcc-pl";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_aldo3 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <3000000>;
>>>>>> +       regulator-max-microvolt = <3000000>;
>>>>>> +       regulator-name = "vcc-pll-avcc";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dc1sw {
>>>>>> +       regulator-name = "vcc-phy";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dcdc1 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <3300000>;
>>>>>> +       regulator-max-microvolt = <3300000>;
>>>>>> +       regulator-name = "vcc-3v3";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dcdc2 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <1000000>;
>>>>>
>>>>>
>>>>> The datasheet says the minimum voltage is 1.04V.
>>>>
>>>>
>>>> A64 datasheet?
>>>
>>>
>>> Yes. V1.1.
>>>
>>>>
>>>> Maybe I need to fix all A64 AXP patches.
>>>>
>>>>>
>>>>>> +       regulator-max-microvolt = <1300000>;
>>>>>> +       regulator-name = "vdd-cpux";
>>>>>> +};
>>>>>> +
>>>>>> +/* DCDC3 is polyphased with DCDC2 */
>>>>>> +
>>>>>> +&reg_dcdc5 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <1500000>;
>>>>>> +       regulator-max-microvolt = <1500000>;
>>>>>> +       regulator-name = "vcc-dram";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dcdc6 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <1100000>;
>>>>>> +       regulator-max-microvolt = <1100000>;
>>>>>> +       regulator-name = "vdd-sys";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dldo1 {
>>>>>> +       regulator-min-microvolt = <3300000>;
>>>>>> +       regulator-max-microvolt = <3300000>;
>>>>>> +       regulator-name = "vcc-hdmi-dsi";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dldo2 {
>>>>>> +       regulator-min-microvolt = <3300000>;
>>>>>> +       regulator-max-microvolt = <3300000>;
>>>>>> +       regulator-name = "vcc-wifi";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_dldo4 {
>>>>>> +       regulator-min-microvolt = <1800000>;
>>>>>> +       regulator-max-microvolt = <3300000>;
>>>>>> +       regulator-name = "vcc-wifi-io";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_eldo1 {
>>>>>> +       regulator-min-microvolt = <1800000>;
>>>>>> +       regulator-max-microvolt = <1800000>;
>>>>>> +       regulator-name = "cpvdd";
>>>>>> +};
>>>>>> +
>>>>>
>>>>>
>>>>> It looks like you are missing a few regulators? I assume you
>>>>> would add them once the peripherals that use them are added?
>>>>
>>>>
>>>> Yes.
>>>>
>>>> I mainly dropped CSI part, as it seems so complicate.
>>>
>>>
>>> HSIC is also missing. I know the board doesn't use the feature,
>>> but the regulator is hooked up. It would be better to set the
>>> name and constraints.
>>
>>
>> OK.
>>
>> I think maybe Pine64 and SoPine w/ baseborad also need the HSIC
>> regulator set up, right? (They're also not used but hooked)
>>
>
>Correct. If they are wired up, then they have constraints that
>need to be adhered to.

Already fixed up in Pine64/SoPine patchset v2.

>
>ChenYu
>
>>>
>>> ChenYu
>>>
>>>>
>>>>>
>>>>> Otherwise this patch looks good.
>>>>>
>>>>> ChenYu
>>>>>
>>>>>> +/*
>>>>>> + * The A64 chip cannot work without this regulator off, although
>>>>>> + * it seems to be only driving the AR100 core.
>>>>>> + * Maybe we don't still know well about CPUs domain.
>>>>>> + */
>>>>>> +&reg_fldo2 {
>>>>>> +       regulator-always-on;
>>>>>> +       regulator-min-microvolt = <1100000>;
>>>>>> +       regulator-max-microvolt = <1100000>;
>>>>>> +       regulator-name = "vdd-cpus";
>>>>>> +};
>>>>>> +
>>>>>> +&reg_rtc_ldo {
>>>>>> +       regulator-name = "vcc-rtc";
>>>>>> +};
>>>>>> +
>>>>>>  &uart0 {
>>>>>>         pinctrl-names = "default";
>>>>>>         pinctrl-0 = <&uart0_pins_a>;
>>>>>> --
>>>>>> 2.13.0
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the
>Google
>>>>>
>>>>> Groups "linux-sunxi" group.
>>>>>>
>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>
>>>>> send an email to linux-sunxi+unsubscribe@googlegroups.com.
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>Groups
>>>> "linux-sunxi" group.
>>>> To unsubscribe from this group and stop receiving emails from it,
>send an
>>>> email to linux-sunxi+unsubscribe@googlegroups.com.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>>
>>> _______________________________________________
>>> linux-arm-kernel mailing list
>>> linux-arm-kernel@lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>>
>>
>> --
>> You received this message because you are subscribed to the Google
>Groups
>> "linux-sunxi" group.
>> To unsubscribe from this group and stop receiving emails from it,
>send an
>> email to linux-sunxi+unsubscribe@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>_______________________________________________
>linux-arm-kernel mailing list
>linux-arm-kernel@lists.infradead.org
>http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH 2/3] arm64: allwinner: a64: enable AXP803 for Banana Pi M64 Icenowy Zheng <icenowy@aosc.io> - 2017-07-21 01:10 +0200
  Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803  for Banana Pi M64 Chen-Yu Tsai <wens@csie.org> - 2017-07-21 09:50 +0200
    Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803 for Banana Pi M64 Icenowy Zheng <icenowy@aosc.io> - 2017-07-21 09:50 +0200
      Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803  for Banana Pi M64 Chen-Yu Tsai <wens@csie.org> - 2017-07-21 10:00 +0200
        Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803  for Banana Pi M64 icenowy@aosc.io - 2017-07-21 13:40 +0200
          Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803  for Banana Pi M64 Chen-Yu Tsai <wens@csie.org> - 2017-07-23 17:20 +0200
            Re: [linux-sunxi] [PATCH 2/3] arm64: allwinner: a64: enable AXP803 for Banana Pi M64 Icenowy Zheng <icenowy@aosc.io> - 2017-07-23 17:50 +0200

csiph-web