From: Andre Przywara <andre.przywara@arm.com>
To: Icenowy Zheng <icenowy@aosc.io>,
Thomas Gleixner <tglx@linutronix.de>,
Jason Cooper <jason@lakedaemon.net>,
Marc Zyngier <marc.zyngier@arm.com>,
Rob Herring <robh+dt@kernel.org>,
Maxime Ripard <maxime.ripard@free-electrons.com>,
Chen-Yu Tsai <wens@csie.org>, Lee Jones <lee.jones@linaro.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>
Cc: linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-sunxi@googlegroups.com
Subject: Re: [linux-sunxi] [PATCH v6 8/9] arm64: allwinner: a64: enable AXP803 regulators for Pine64
Date: Fri, 19 May 2017 09:55:32 +0100 [thread overview]
Message-ID: <77045320-c19a-6c18-ed68-108fa5416c2a@arm.com> (raw)
In-Reply-To: <4B129FD0-4AEB-4DC3-AF33-C279468BD197@aosc.io>
Hi,
On 19/05/17 09:29, Icenowy Zheng wrote:
>
>
> 于 2017年5月19日 GMT+08:00 下午4:27:21, Andre Przywara <andre.przywara@arm.com> 写到:
>> Hi,
>>
>> On 18/05/17 08:16, Icenowy Zheng wrote:
>>> Add support of AXP803 regulators in the Pine64 device tree, in order
>> to
>>> enable many future functionalities, e.g. Wi-Fi.
>>>
>>> Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
>>> ---
>>> Changes in v6:
>>> - Rebased on next-20170517.
>>>
>>> .../arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 109
>> +++++++++++++++++++++
>>> 1 file changed, 109 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>> b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>>> index 36001884ed33..40921bacb39c 100644
>>> --- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>>> +++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
>>> @@ -118,6 +118,115 @@
>>> };
>>> };
>>>
>>> +#include "axp803.dtsi"
>>> +
>>> +®_aldo1 {
>>> + regulator-min-microvolt = <2800000>;
>>> + regulator-max-microvolt = <2800000>;
>>> + regulator-name = "vcc-csi";
>>> +};
>>> +
>>> +®_aldo2 {
>>> + regulator-always-on;
>>> + regulator-min-microvolt = <1800000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "vcc-pl";
>>> +};
>>> +
>>> +®_aldo3 {
>>> + regulator-always-on;
>>> + regulator-min-microvolt = <2700000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "vcc-pll-avcc";
>>> +};
The schematic puts this at a fixed 3.0V, so why the range here? Are we
expected to tune the voltage of the PLLs?
>>> +
>>> +®_dc1sw {
>>> + regulator-name = "vcc-phy";
>>> +};
>>> +
>>> +®_dcdc1 {
>>> + regulator-always-on;
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "vcc-3v3";
>>> +};
>>> +
>>> +®_dcdc2 {
>>> + regulator-always-on;
>>> + regulator-min-microvolt = <1000000>;
>>> + regulator-max-microvolt = <1300000>;
>>> + regulator-name = "vdd-cpux";
>>> +};
>>> +
>>> +/* DCDC3 is polyphased with DCDC2 */
>>> +
>>> +®_dcdc5 {
>>> + regulator-always-on;
>>> + regulator-min-microvolt = <1500000>;
>>> + regulator-max-microvolt = <1500000>;
>>> + regulator-name = "vcc-dram";
>>> +};
>>
>> I think I mentioned this before, but the Pine64 has DDR3L DRAM, which
>> is
>> specified to run at 1.35V (1.36V with the 20mV granularity of the AXP).
>> The reset value is even (wrongly?) configured to 1.24V.
>>
>> So is there any reason you set the voltage to 1.5V? Is that what the
>> BSP
>> does? Or did you see any problems with 1.36V?
>
> I just set it based on the schematics.
I wouldn't trust the schematics too much. They are rather generic, see
the Ethernet page, for instance, showing *different* PHYs, not just the
ones used.
For the DRAM the Pine64 schematic does not even tell the DRAM chip used,
the name under the chip is just describing the package.
> And 1.35v cannot be accurately achieved by dcdc5 and it's a problem whether to use 1.34v or 1.36v ;-)
Well, as I wrote above, 1.36V is the voltage to go with. I think 10mV
more is well within the tolerance ;-)
>>> +®_dcdc6 {
>>> + regulator-always-on;
>>> + regulator-min-microvolt = <1100000>;
>>> + regulator-max-microvolt = <1100000>;
>>> + regulator-name = "vdd-sys";
>>> +};
>>> +
>>> +®_dldo1 {
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "vcc-hdmi";
>>> +};
>>> +
>>> +®_dldo2 {
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "vcc-mipi";
>>> +};
>>> +
>>> +®_dldo3 {
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "avdd-csi";
>>> +};
If you stick to the schematic, this should be 2.8V.
>>> +
>>> +®_dldo4 {
>>> + regulator-min-microvolt = <3300000>;
>>> + regulator-max-microvolt = <3300000>;
>>> + regulator-name = "vcc-wifi";
>>> +};
>>> +
>>> +®_eldo1 {
>>> + regulator-min-microvolt = <1800000>;
>>> + regulator-max-microvolt = <1800000>;
>>> + regulator-name = "cpvdd";
>>> +};
>>> +
>>> +®_eldo3 {
>>> + regulator-min-microvolt = <1800000>;
>>> + regulator-max-microvolt = <1800000>;
>>> + regulator-name = "vdd-1v8-csi";
>>> +};
The schematic lists 1.2V/1.5V/1.8V here, so should we have a range?
>>> +
>>> +®_fldo1 {
>>> + regulator-min-microvolt = <1200000>;
>>> + regulator-max-microvolt = <1200000>;
>>> + regulator-name = "vcc-1v2-hsic";
>>> +};
>>> +
>>> +®_fldo2 {
>>> + regulator-always-on;
Why do we need to turn this on? Upstream firmware does not use the
arisc, so it can stay off.
Also in general I think Linux should not tinker with the management
processor at all.
Cheers,
Andre.
>>> + regulator-min-microvolt = <1100000>;
>>> + regulator-max-microvolt = <1100000>;
>>> + regulator-name = "vdd-cpus";
>>> +};
>>> +
>>> +®_rtc_ldo {
>>> + regulator-name = "vcc-rtc";
>>> +};
>>> +
>>> /* On Exp and Euler connectors */
>>> &uart0 {
>>> pinctrl-names = "default";
>>>
next prev parent reply other threads:[~2017-05-19 8:55 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-18 7:16 [PATCH v6 0/9] AXP803 PMIC support " Icenowy Zheng
2017-05-18 7:16 ` [PATCH v6 1/9] irqchip/sunxi-nmi: add A64 R_INTC to the binding doc Icenowy Zheng
2017-05-18 7:40 ` [linux-sunxi] " Chen-Yu Tsai
2017-05-18 7:52 ` Maxime Ripard
2017-05-18 7:16 ` [PATCH v6 2/9] irqchip/sunxi-nmi: add support for the NMI in A64 R_INTC Icenowy Zheng
2017-05-18 7:52 ` Maxime Ripard
2017-05-19 2:27 ` Chen-Yu Tsai
2017-05-22 9:39 ` Marc Zyngier
2017-05-22 9:41 ` Icenowy Zheng
2017-05-22 14:25 ` [linux-sunxi] " Chen-Yu Tsai
2017-06-05 5:57 ` Chen-Yu Tsai
2017-06-05 7:53 ` Marc Zyngier
2017-06-05 7:56 ` Icenowy Zheng
2017-06-05 8:05 ` Marc Zyngier
2017-05-18 7:16 ` [PATCH v6 3/9] arm64: allwinner: a64: add NMI (R_INTC) controller on A64 Icenowy Zheng
2017-05-19 2:28 ` [linux-sunxi] " Chen-Yu Tsai
2017-05-18 7:16 ` [PATCH v6 4/9] arm64: allwinner: a64: add AXP803 node to Pine64 device tree Icenowy Zheng
2017-05-19 2:28 ` [linux-sunxi] " Chen-Yu Tsai
2017-07-18 3:02 ` Chen-Yu Tsai
2017-05-18 7:16 ` [PATCH v6 5/9] regulator: axp20x-regulator: add support for AXP803 Icenowy Zheng
2017-05-18 7:16 ` [PATCH v6 6/9] mfd: axp20x: add axp20x-regulator cell " Icenowy Zheng
2017-05-22 12:17 ` Lee Jones
2017-05-18 7:16 ` [PATCH v6 7/9] arm64: allwinner: a64: add DTSI file for AXP803 PMIC Icenowy Zheng
2017-05-19 2:29 ` [linux-sunxi] " Chen-Yu Tsai
2017-07-18 3:02 ` Chen-Yu Tsai
2017-05-18 7:16 ` [PATCH v6 8/9] arm64: allwinner: a64: enable AXP803 regulators for Pine64 Icenowy Zheng
2017-05-19 2:54 ` [linux-sunxi] " Chen-Yu Tsai
2017-05-19 3:00 ` Icenowy Zheng
2017-05-19 3:10 ` Chen-Yu Tsai
2017-05-19 3:12 ` Icenowy Zheng
2017-05-19 8:27 ` Andre Przywara
2017-05-19 8:29 ` Icenowy Zheng
2017-05-19 8:55 ` Andre Przywara [this message]
2017-07-18 2:58 ` Chen-Yu Tsai
2017-07-18 3:07 ` Icenowy Zheng
2017-05-19 8:56 ` Maxime Ripard
2017-05-18 7:16 ` [PATCH v6 9/9] arm64: allwinner: a64: enable Wi-Fi " Icenowy Zheng
2017-05-19 3:01 ` [linux-sunxi] " Chen-Yu Tsai
2017-05-19 3:03 ` Icenowy Zheng
2017-05-19 7:19 ` Maxime Ripard
2017-05-19 7:22 ` icenowy
2017-05-23 14:44 ` Maxime Ripard
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=77045320-c19a-6c18-ed68-108fa5416c2a@arm.com \
--to=andre.przywara@arm.com \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=icenowy@aosc.io \
--cc=jason@lakedaemon.net \
--cc=lee.jones@linaro.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@googlegroups.com \
--cc=marc.zyngier@arm.com \
--cc=maxime.ripard@free-electrons.com \
--cc=robh+dt@kernel.org \
--cc=tglx@linutronix.de \
--cc=wens@csie.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®