Skip to contentSkip to conversation

ARM: sun7i: add support for A20-OLinuXino-Lime2

PATCH New Iain Paton 4 participants 17 messages Sep 28, 2014 – Oct 11, 2014

Subsystems (3)
lore
Share & tools
lore

Iain Paton

author
#0 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

---

I'd like to see this go in with the dual license, but not really sure if that's appropriate while sunxi-common-regulators.dtsi is still GPL only. Happy to resend with single license header if it's deemed better for now though.

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 178 ++++++++++++++++++++++++
 2 files changed, 179 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +178 -0

178 lines not on this page · raw message

Signature · 1 line
1.8.5.1
#1 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 11 lines · Iain Paton

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

---

I'd like to see this go in with the dual license, but not really sure if that's appropriate while sunxi-common-regulators.dtsi is still GPL only.

Thanks for the remainder, and yes, it should be fine even though sunxi-common-regulators is only GPL (but the resulting binary would be GPL-only).

Quoted 111 lines

Happy to resend with single license header if it's deemed better for now though.

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 178 ++++++++++++++++++++++++
 2 files changed, 179 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +85 -0
new file mode 100644
index 0000000..14fbc43
@@ -0,0 +1,178 @@
+/*
+ * Copyright 2014 - Iain Paton <[email protected]>
+ *
+ * This file is dual-licensed: you can use it either under the terms
+ * of the GPL or the X11 license, at your option. Note that this dual
+ * licensing only applies to this file, and not this project as a
+ * whole.
+ *
+ *  a) This library is free software; you can redistribute it and/or
+ *     modify it under the terms of the GNU General Public License as
+ *     published by the Free Software Foundation; either version 2 of the
+ *     License, or (at your option) any later version.
+ *
+ *     This library is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU General Public License for more details.
+ *
+ *     You should have received a copy of the GNU General Public
+ *     License along with this library; if not, write to the Free
+ *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ *     MA 02110-1301 USA
+ *
+ * Or, alternatively,
+ *
+ *  b) Permission is hereby granted, free of charge, to any person
+ *     obtaining a copy of this software and associated documentation
+ *     files (the "Software"), to deal in the Software without
+ *     restriction, including without limitation the rights to use,
+ *     copy, modify, merge, publish, distribute, sublicense, and/or
+ *     sell copies of the Software, and to permit persons to whom the
+ *     Software is furnished to do so, subject to the following
+ *     conditions:
+ *
+ *     The above copyright notice and this permission notice shall be
+ *     included in all copies or substantial portions of the Software.
+ *
+ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ *     OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/dts-v1/;
+/include/ "sun7i-a20.dtsi"
+/include/ "sunxi-common-regulators.dtsi"
+
+/ {
+	model = "Olimex A20-OLinuXino-LIME2";
+	compatible = "olimex,a20-olinuxino-lime2", "allwinner,sun7i-a20";
+
+	soc at 01c00000 {
+
+		ahci: sata at 01c18000 {
+			target-supply = <&reg_ahci_5v>;
+			status = "okay";
+		};
+
+		ehci0: usb at 01c14000 {
+			status = "okay";
+		};
+
+		ehci1: usb at 01c1c000 {
+			status = "okay";
+		};
+
+		gmac: ethernet at 01c50000 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&gmac_pins_rgmii_a>;
+			phy = <&phy1>;
+			phy-mode = "rgmii";
+			status = "okay";
+
+			phy1: ethernet-phy at 1 {
+				reg = <1>;
+			};
+		};
+
+		i2c0: i2c at 01c2ac00 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c0_pins_a>;

arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts line 95

Quoted 10 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +10 -0
+			status = "okay";
+
+			axp209: pmic at 34 {
+				compatible = "x-powers,axp209";
+				reg = <0x34>;
+				interrupt-parent = <&nmi_intc>;
+				interrupts = <0 8>;
+
+				interrupt-controller;
+				#interrupt-cells = <1>;

It would be greate if you could add the regulators used on the board here.

You might want to hold off a bit until the merge window is out, since some patches useful for this are still pending, or based your patch on top of linux-next

Quoted 86 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +83 -0
+			};
+
+		};
+
+		i2c1: i2c at 01c2b000 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c1_pins_a>;
+			status = "okay";
+		};
+
+		mmc0: mmc at 01c0f000 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>;
+			vmmc-supply = <&reg_vcc3v3>;
+			bus-width = <4>;
+			cd-gpios = <&pio 7 1 0>; /* PH1 */
+			cd-inverted;
+			status = "okay";
+		};
+
+		ohci0: usb at 01c14400 {
+			status = "okay";
+		};
+
+		ohci1: usb at 01c1c400 {
+			status = "okay";
+		};
+
+		uart0: serial at 01c28000 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&uart0_pins_a>;
+			status = "okay";
+		};
+
+		usbphy: phy at 01c13400 {
+			usb1_vbus-supply = <&reg_usb1_vbus>;
+			usb2_vbus-supply = <&reg_usb2_vbus>;
+			status = "okay";
+		};
+
+		pinctrl at 01c20800 {
+			ahci_pwr_pin_olinuxinolime: ahci_pwr_pin at 1 {
+				allwinner,pins = "PC3";
+				allwinner,function = "gpio_out";
+				allwinner,drive = <0>;
+				allwinner,pull = <0>;
+			};
+
+			led_pins_olinuxinolime: led_pins at 0 {
+				allwinner,pins = "PH2";
+				allwinner,function = "gpio_out";
+				allwinner,drive = <1>;
+				allwinner,pull = <0>;
+			};
+		};
+	};
+
+	leds {
+		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&led_pins_olinuxinolime>;
+
+		green {
+			label = "a20-olinuxino-lime2:green:usr";
+			gpios = <&pio 7 2 0>;
+			default-state = "on";
+		};
+	};
+
+	reg_ahci_5v: ahci-5v {
+		pinctrl-0 = <&ahci_pwr_pin_olinuxinolime>;
+		gpio = <&pio 2 3 0>;
+		status = "okay";
+	};
+
+	reg_usb1_vbus: usb1-vbus {
+		status = "okay";
+	};
+
+	reg_usb2_vbus: usb2-vbus {
+		status = "okay";
+	};
+};
Signature · 1 line
1.8.5.1

It looks fine otherwise, thanks!

Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140928/09459b9f/attachment-0001.sig>
author
#2 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 20 lines · Maxime Ripard
Quoted 4 lines · Iain Paton
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +4 -0
+
+		i2c0: i2c at 01c2ac00 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c0_pins_a>;

arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts line 95

Quoted 10 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +10 -0
+			status = "okay";
+
+			axp209: pmic at 34 {
+				compatible = "x-powers,axp209";
+				reg = <0x34>;
+				interrupt-parent = <&nmi_intc>;
+				interrupts = <0 8>;
+
+				interrupt-controller;
+				#interrupt-cells = <1>;

It would be greate if you could add the regulators used on the board here.

Quoted 3 lines

You might want to hold off a bit until the merge window is out, since some patches useful for this are still pending, or based your patch on top of linux-next

I'll take a bash at it, although as there seems to be no binding doc for the driver and I can't find any other board that has axp209 regulators defined I may need a bit of help to get this right.

What additional patches are we talking about? The following:
regulator: axp20x: Use parent device as regulator configuration device
i2c: mv64xxx: continue probe when clock-frequency is missing or are there others I'd need to pick out of linux-next?

linux-next 20140926 doesn't build for me:

LD init/built-in.o
kernel/built-in.o: In function `cputime_adjust':
:(.text+0x25588): undefined reference to __bad_cmpxchg' :(.text+0x255f8): undefined reference to __bad_cmpxchg' /data/linux/source/linux-next-org/Makefile:956: recipe for target 'vmlinux' failed

I suppose as a result of https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/kernel/sched/cputime.c?id=eb1b4af0a64ac7bb0ee36f579c1c7cefcbc3ac2c

having reverted that one, the resulting kernel doesn't want to talk to my SD card. Both your tree and 3.16 work fine though.

Anyway, v2 on it's way.

#3 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 21 lines · Iain Paton
Quoted 20 lines · Maxime Ripard
Quoted 4 lines · Iain Paton
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +4 -0
+
+		i2c0: i2c at 01c2ac00 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c0_pins_a>;

arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts line 95

Quoted 10 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +10 -0
+			status = "okay";
+
+			axp209: pmic at 34 {
+				compatible = "x-powers,axp209";
+				reg = <0x34>;
+				interrupt-parent = <&nmi_intc>;
+				interrupts = <0 8>;
+
+				interrupt-controller;
+				#interrupt-cells = <1>;

It would be greate if you could add the regulators used on the board here.

Quoted 7 lines
Quoted 3 lines

You might want to hold off a bit until the merge window is out, since some patches useful for this are still pending, or based your patch on top of linux-next

I'll take a bash at it, although as there seems to be no binding doc for the driver and I can't find any other board that has axp209 regulators defined I may need a bit of help to get this right.

Hmmm, that's odd. I was 100% sure it had one, but now that you mention it, I can't find it either.

I should find where that patch went, and merge it then...

Quoted 4 lines

What additional patches are we talking about? The following:
regulator: axp20x: Use parent device as regulator configuration device
i2c: mv64xxx: continue probe when clock-frequency is missing or are there others I'd need to pick out of linux-next?

http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html

Quoted 8 lines

linux-next 20140926 doesn't build for me:

LD init/built-in.o
kernel/built-in.o: In function `cputime_adjust':
:(.text+0x25588): undefined reference to __bad_cmpxchg' :(.text+0x255f8): undefined reference to __bad_cmpxchg' /data/linux/source/linux-next-org/Makefile:956: recipe for target 'vmlinux' failed

Quoted 4 lines

I suppose as a result of https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/kernel/sched/cputime.c?id=eb1b4af0a64ac7bb0ee36f579c1c7cefcbc3ac2c

having reverted that one, the resulting kernel doesn't want to talk to my SD card. Both your tree and 3.16 work fine though.

Leave it out then. If you have no way to test it, it's going to be very bug prone, and we can always add it later.

The SD card issue is more troublesome. We'll have to look into it.

Thanks!
Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20140929/1498a8f5/attachment.sig>
author
#4 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 8 lines · Maxime Ripard
Quoted 4 lines · Iain Paton

What additional patches are we talking about? The following:
regulator: axp20x: Use parent device as regulator configuration device
i2c: mv64xxx: continue probe when clock-frequency is missing or are there others I'd need to pick out of linux-next?

http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html

Ok, I'll pull those on top of something not quite as bleeding edge as linux-next

Quoted 2 lines

Leave it out then. If you have no way to test it, it's going to be very bug prone, and we can always add it later.

I moved my root disk to a SATA drive, so only a minor inconvenience.

dmesg shows the following with the regulators node as in the v2 patch, the bottom half being mostly what I'd expect

[    0.868607] sunxi-rtc 1c20d00.rtc: RTC enabled
[    0.877062] Adding alias for supply acin,(null) -> acin,0-0034
[    0.882948] Adding alias for supply vin2,(null) -> vin2,0-0034
[    0.888775] Adding alias for supply vin3,(null) -> vin3,0-0034
[    0.894612] Adding alias for supply ldo24in,(null) -> ldo24in,0-0034
[    0.900956] Adding alias for supply ldo3in,(null) -> ldo3in,0-0034
[    0.907160] Adding alias for supply ldo5in,(null) -> ldo5in,0-0034
[    0.914029] LDO1: 1300 mV 
[    0.917428] LDO2: 1800 <--> 3300 mV at 3000 mV 
[    0.922483] LDO3: 700 <--> 3500 mV at 2275 mV 
[    0.927136] LDO4: 1250 <--> 3300 mV at 2800 mV 
[    0.932334] LDO5: 1800 <--> 3300 mV at 2800 mV 
[    0.937308] DCDC2: 1400 mV 
[    0.940552] DCDC3: 1250 mV 
[    0.943474] axp20x 0-0034: AXP20X driver loaded
Quoted 1 line

The SD card issue is more troublesome. We'll have to look into it.

dmesg shows the mmc driver loading:

[    0.957716] sdhci: Secure Digital Host Controller Interface driver
[    0.963963] sdhci: Copyright(c) Pierre Ossman
[    0.968843] sunxi-mmc 1c0f000.mmc: No vqmmc regulator found
[    0.974918] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[    1.012036] sunxi-mmc 1c0f000.mmc: base:0xf00ac000 irq:64
[    1.017623] sdhci-pltfm: SDHCI platform and OF driver helper

however on an older, working, kernel I get a number on the end of the 'Got CD GPIO' line like this:

[    0.896271] sunxi-mmc 1c0f000.mmc: Got CD GPIO #225.

when I remove the SD card I see:

[   20.147667] sunxi-mmc 1c0f000.mmc: smc 0 err, cmd 8, RTO !!
[   20.157319] sunxi-mmc 1c0f000.mmc: smc 0 err, cmd 55, RTO !!
[   20.163796] sunxi-mmc 1c0f000.mmc: smc 0 err, cmd 55, RTO !!
[   20.170268] sunxi-mmc 1c0f000.mmc: smc 0 err, cmd 55, RTO !!
[   20.176743] sunxi-mmc 1c0f000.mmc: smc 0 err, cmd 55, RTO !!
[   20.183250] sunxi-mmc 1c0f000.mmc: smc 0 err, cmd 1, RTO !!

Which gives the impression that it's seeing CD inverted, however I tried taking the cd-inverted; line out of the dts with no change. No messages at all on card insertion.

I'll try the same kernel on an A10-lime later, if it has the same problem it'll rule out something in this new dts.

Iain

#5 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 20 lines · Iain Paton
Quoted 8 lines · Maxime Ripard
Quoted 4 lines · Iain Paton

What additional patches are we talking about? The following:
regulator: axp20x: Use parent device as regulator configuration device
i2c: mv64xxx: continue probe when clock-frequency is missing or are there others I'd need to pick out of linux-next?

http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html

Ok, I'll pull those on top of something not quite as bleeding edge as linux-next

Quoted 2 lines

Leave it out then. If you have no way to test it, it's going to be very bug prone, and we can always add it later.

I moved my root disk to a SATA drive, so only a minor inconvenience.

dmesg shows the following with the regulators node as in the v2 patch, the bottom half being mostly what I'd expect

Quoted 15 lines
[    0.868607] sunxi-rtc 1c20d00.rtc: RTC enabled
[    0.877062] Adding alias for supply acin,(null) -> acin,0-0034
[    0.882948] Adding alias for supply vin2,(null) -> vin2,0-0034
[    0.888775] Adding alias for supply vin3,(null) -> vin3,0-0034
[    0.894612] Adding alias for supply ldo24in,(null) -> ldo24in,0-0034
[    0.900956] Adding alias for supply ldo3in,(null) -> ldo3in,0-0034
[    0.907160] Adding alias for supply ldo5in,(null) -> ldo5in,0-0034
[    0.914029] LDO1: 1300 mV 
[    0.917428] LDO2: 1800 <--> 3300 mV at 3000 mV 
[    0.922483] LDO3: 700 <--> 3500 mV at 2275 mV 
[    0.927136] LDO4: 1250 <--> 3300 mV at 2800 mV 
[    0.932334] LDO5: 1800 <--> 3300 mV at 2800 mV 
[    0.937308] DCDC2: 1400 mV 
[    0.940552] DCDC3: 1250 mV 
[    0.943474] axp20x 0-0034: AXP20X driver loaded

No, it's not. You don't have the parenting relationship between the regulators, and you shouldn't use the aliases anymore.

Like I said, you'd better drop that part until things settle down.

Quoted 11 lines
Quoted 1 line

The SD card issue is more troublesome. We'll have to look into it.

dmesg shows the mmc driver loading:

[    0.957716] sdhci: Secure Digital Host Controller Interface driver
[    0.963963] sdhci: Copyright(c) Pierre Ossman
[    0.968843] sunxi-mmc 1c0f000.mmc: No vqmmc regulator found
[    0.974918] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[    1.012036] sunxi-mmc 1c0f000.mmc: base:0xf00ac000 irq:64
[    1.017623] sdhci-pltfm: SDHCI platform and OF driver helper
Quoted 4 lines

however on an older, working, kernel I get a number on the end of the 'Got CD GPIO' line like this:

[    0.896271] sunxi-mmc 1c0f000.mmc: Got CD GPIO #225.

That's interesting. It seems like it might be related to the recent breakages in the boot farm on the A31. These breakages were not happening on the arm-soc branch, but on linux-next only, so it must be coming from somewhere else, which is not that great, but rules out the DTS.

I'll bisect it this weekend, but don't worry too much about it.

Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141002/8ef224cc/attachment.sig>
author
#6 lore raw

PATCH v3 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

---

changes for v2
add axp209 regulators node

changes for v3
add reg_axp_ipsout regulator
follow suggestion by Chen-Yu in
http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/292645.html
on parenting the regulators which gives:

[    0.879031] LDO1: 1300 mV 
[    0.881986] LDO1: supplied by axp-ipsout
[    0.886609] LDO2: 1800 <--> 3300 mV at 3000 mV 
[    0.891202] LDO2: supplied by axp-ipsout
[    0.895584] LDO3: 700 <--> 3500 mV at 2275 mV 
[    0.900082] LDO3: supplied by axp-ipsout
[    0.904300] LDO4: 1250 <--> 3300 mV at 2800 mV 
[    0.908877] LDO4: supplied by axp-ipsout
[    0.913481] LDO5: 1800 <--> 3300 mV at 2800 mV 
[    0.918070] LDO5: supplied by axp-ipsout
[    0.922474] DCDC2: 700 <--> 2275 mV at 1400 mV 
[    0.927074] DCDC2: supplied by axp-ipsout
[    0.931538] DCDC3: 700 <--> 3500 mV at 1250 mV 
[    0.936159] DCDC3: supplied by axp-ipsout
[    0.940253] axp20x 0-0034: AXP20X driver loaded

I gave up trying to build this on top of linux-next as over the last couple of days linux-next stops somewhere around probing the sata driver, not always in exactly the same place though. I don't get anywhere near the previous mmc related issue.

This patchset is based on top of
git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux.git sunxi/for-next 429823087fec3d3138c72f2910d36d3d8d0733a7

with http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html
and http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/283341.html
added on top.

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 230 ++++++++++++++++++++++++
 2 files changed, 231 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +230 -0

230 lines not on this page · raw message

Signature · 1 line
1.8.5.1
#7 lore raw

PATCH v3 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Hi,

Quoted 6 lines · Iain Paton

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

Almost good, see a few minor comments below.

Quoted 157 lines

---

changes for v2
add axp209 regulators node

changes for v3
add reg_axp_ipsout regulator
follow suggestion by Chen-Yu in
http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/292645.html
on parenting the regulators which gives:

[    0.879031] LDO1: 1300 mV 
[    0.881986] LDO1: supplied by axp-ipsout
[    0.886609] LDO2: 1800 <--> 3300 mV at 3000 mV 
[    0.891202] LDO2: supplied by axp-ipsout
[    0.895584] LDO3: 700 <--> 3500 mV at 2275 mV 
[    0.900082] LDO3: supplied by axp-ipsout
[    0.904300] LDO4: 1250 <--> 3300 mV at 2800 mV 
[    0.908877] LDO4: supplied by axp-ipsout
[    0.913481] LDO5: 1800 <--> 3300 mV at 2800 mV 
[    0.918070] LDO5: supplied by axp-ipsout
[    0.922474] DCDC2: 700 <--> 2275 mV at 1400 mV 
[    0.927074] DCDC2: supplied by axp-ipsout
[    0.931538] DCDC3: 700 <--> 3500 mV at 1250 mV 
[    0.936159] DCDC3: supplied by axp-ipsout
[    0.940253] axp20x 0-0034: AXP20X driver loaded

I gave up trying to build this on top of linux-next as over the last couple of days linux-next stops somewhere around probing the sata driver, not always in exactly the same place though. I don't get anywhere near the previous mmc related issue.

This patchset is based on top of
git://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux.git sunxi/for-next 429823087fec3d3138c72f2910d36d3d8d0733a7

with http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html
and http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/283341.html
added on top.

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 230 ++++++++++++++++++++++++
 2 files changed, 231 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +95 -0
new file mode 100644
index 0000000..5b60309
@@ -0,0 +1,230 @@
+/*
+ * Copyright 2014 - Iain Paton <[email protected]>
+ *
+ * This file is dual-licensed: you can use it either under the terms
+ * of the GPL or the X11 license, at your option. Note that this dual
+ * licensing only applies to this file, and not this project as a
+ * whole.
+ *
+ *  a) This library is free software; you can redistribute it and/or
+ *     modify it under the terms of the GNU General Public License as
+ *     published by the Free Software Foundation; either version 2 of the
+ *     License, or (at your option) any later version.
+ *
+ *     This library is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU General Public License for more details.
+ *
+ *     You should have received a copy of the GNU General Public
+ *     License along with this library; if not, write to the Free
+ *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ *     MA 02110-1301 USA
+ *
+ * Or, alternatively,
+ *
+ *  b) Permission is hereby granted, free of charge, to any person
+ *     obtaining a copy of this software and associated documentation
+ *     files (the "Software"), to deal in the Software without
+ *     restriction, including without limitation the rights to use,
+ *     copy, modify, merge, publish, distribute, sublicense, and/or
+ *     sell copies of the Software, and to permit persons to whom the
+ *     Software is furnished to do so, subject to the following
+ *     conditions:
+ *
+ *     The above copyright notice and this permission notice shall be
+ *     included in all copies or substantial portions of the Software.
+ *
+ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ *     OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/dts-v1/;
+/include/ "sun7i-a20.dtsi"
+/include/ "sunxi-common-regulators.dtsi"
+
+/ {
+	model = "Olimex A20-OLinuXino-LIME2";
+	compatible = "olimex,a20-olinuxino-lime2", "allwinner,sun7i-a20";
+
+	soc at 01c00000 {
+
+		ahci: sata at 01c18000 {
+			target-supply = <&reg_ahci_5v>;
+			status = "okay";
+		};
+
+		ehci0: usb at 01c14000 {
+			status = "okay";
+		};
+
+		ehci1: usb at 01c1c000 {
+			status = "okay";
+		};
+
+		gmac: ethernet at 01c50000 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&gmac_pins_rgmii_a>;
+			phy = <&phy1>;
+			phy-mode = "rgmii";
+			status = "okay";
+
+			phy1: ethernet-phy at 1 {
+				reg = <1>;
+			};
+		};
+
+		i2c0: i2c at 01c2ac00 {
+			pinctrl-names = "default";
+			pinctrl-0 = <&i2c0_pins_a>;
+			status = "okay";
+
+			axp209: pmic at 34 {
+				compatible = "x-powers,axp209";
+				reg = <0x34>;
+				interrupt-parent = <&nmi_intc>;
+				interrupts = <0 8>;
+
+				interrupt-controller;
+				#interrupt-cells = <1>;

arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts line 105

Quoted 10 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +10 -0
+
+				acin-supply = <&reg_axp_ipsout>;
+				vin2-supply = <&reg_axp_ipsout>;
+				vin3-supply = <&reg_axp_ipsout>;
+				ldo24in-supply = <&reg_axp_ipsout>;
+				ldo3in-supply = <&reg_axp_ipsout>;
+				ldo5in-supply = <&reg_axp_ipsout>;
+
+				regulators {
+					reg_ldo1: ldo1 {

It would be great if the names of these regulators actually reflect what they are used for on the board.

This one for example would be vdd_rtc.

arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts line 109

Quoted 4 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +4 -0
+						regulator-min-microvolt = <1300000>;
+						regulator-max-microvolt = <1300000>;
+						regulator-always-on;
+					};

And new lines between each node would be nice too.

Thanks!

Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141006/05e4a8a6/attachment.sig>
author
#8 lore raw

PATCH v4 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

---

changes for v2
add axp209 regulators node

changes for v3
add reg_axp_ipsout regulator
follow suggestion by Chen-Yu in
http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/292645.html
on parenting the regulators

changes for v4
give regulators better names
add spacing between nodes
drop ldo5 as it doesn't appear to be used

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 229 ++++++++++++++++++++++++
 2 files changed, 230 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +229 -0

229 lines not on this page · raw message

Signature · 1 line
1.8.5.1
#9 lore raw

PATCH v4 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Hi Iain,

Quoted 6 lines · Iain Paton

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

Sorry for noticing this so late, but we sort the DT nodes by their base address. Could you respin this for another version?

Quoted 86 lines

---

changes for v2
add axp209 regulators node

changes for v3
add reg_axp_ipsout regulator
follow suggestion by Chen-Yu in
http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/292645.html
on parenting the regulators

changes for v4
give regulators better names
add spacing between nodes
drop ldo5 as it doesn't appear to be used

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 229 ++++++++++++++++++++++++
 2 files changed, 230 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +47 -0
new file mode 100644
index 0000000..4e68101
@@ -0,0 +1,229 @@
+/*
+ * Copyright 2014 - Iain Paton <[email protected]>
+ *
+ * This file is dual-licensed: you can use it either under the terms
+ * of the GPL or the X11 license, at your option. Note that this dual
+ * licensing only applies to this file, and not this project as a
+ * whole.
+ *
+ *  a) This library is free software; you can redistribute it and/or
+ *     modify it under the terms of the GNU General Public License as
+ *     published by the Free Software Foundation; either version 2 of the
+ *     License, or (at your option) any later version.
+ *
+ *     This library is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU General Public License for more details.
+ *
+ *     You should have received a copy of the GNU General Public
+ *     License along with this library; if not, write to the Free
+ *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ *     MA 02110-1301 USA
+ *
+ * Or, alternatively,
+ *
+ *  b) Permission is hereby granted, free of charge, to any person
+ *     obtaining a copy of this software and associated documentation
+ *     files (the "Software"), to deal in the Software without
+ *     restriction, including without limitation the rights to use,
+ *     copy, modify, merge, publish, distribute, sublicense, and/or
+ *     sell copies of the Software, and to permit persons to whom the
+ *     Software is furnished to do so, subject to the following
+ *     conditions:
+ *
+ *     The above copyright notice and this permission notice shall be
+ *     included in all copies or substantial portions of the Software.
+ *
+ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ *     OTHER DEALINGS IN THE SOFTWARE.
+ */
+

arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts line 57

Quoted 10 lines
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +10 -0
+/dts-v1/;
+/include/ "sun7i-a20.dtsi"
+/include/ "sunxi-common-regulators.dtsi"
+
+/ {
+	model = "Olimex A20-OLinuXino-LIME2";
+	compatible = "olimex,a20-olinuxino-lime2", "allwinner,sun7i-a20";
+
+	soc at 01c00000 {
+

And drop this newline while we're at it?

Thanks a lot,
Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141009/e0809c45/attachment.sig>
author
#10 lore raw

PATCH v5 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

---

changes for v2
add axp209 regulators node

changes for v3
add reg_axp_ipsout regulator
follow suggestion by Chen-Yu in
http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/292645.html
on parenting the regulators

changes for v4
give regulators better names
add spacing between nodes
drop ldo5 as it doesn't appear to be used

changes for v5
order nodes by address instead of by name
drop extraneous newline

 arch/arm/boot/dts/Makefile                      |   1 +
 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | 228 ++++++++++++++++++++++++
 2 files changed, 229 insertions(+)
 create mode 100644 arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
arch/arm/boot/dts/Makefile +1 -0
index 2f42b18..ea6c672 100644
@@ -420,6 +420,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
 	sun7i-a20-hummingbird.dtb \
 	sun7i-a20-i12-tvbox.dtb \
 	sun7i-a20-olinuxino-lime.dtb \
+	sun7i-a20-olinuxino-lime2.dtb \
 	sun7i-a20-olinuxino-micro.dtb \
 	sun7i-a20-pcduino3.dtb
 dtb-$(CONFIG_MACH_SUN8I) += \
arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts new file +228 -0

228 lines not on this page · raw message

Signature · 1 line
1.8.5.1
#11 lore raw

PATCH v5 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 6 lines · Iain Paton

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

Queued for 3.19, thanks!

Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141010/09f639c6/attachment.sig>
author
#12 lore raw

PATCH v4 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

In reply to Maxime Ripard
Quoted 6 lines · Maxime Ripard

Hi Iain,

Quoted 3 lines · Iain Paton

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Quoted 6 lines
Quoted 3 lines

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

Sorry for noticing this so late, but we sort the DT nodes by their base address. Could you respin this for another version?

Sure, no problem, on it's way shortly.

Is there any general rule for this sort of thing, or is this something specific to sunxi?

Asking mainly as I've been asked to do them alphabetically previously by a different maintainer and that's esentially why I did it the same way here.

Everyone having different undocumented conventions seems likely to become counter productive eventually.

Iain

#13 lore raw

PATCH v4 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Quoted 19 lines · Iain Paton
Quoted 6 lines · Maxime Ripard

Hi Iain,

Quoted 3 lines · Iain Paton

This adds support for the Olimex A20-OLinuXino-Lime2
https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXIno-LIME2

Quoted 6 lines
Quoted 3 lines

Differences to previous Lime boards are 1GB RAM and gigabit ethernet

Sorry for noticing this so late, but we sort the DT nodes by their base address. Could you respin this for another version?

Sure, no problem, on it's way shortly.

Is there any general rule for this sort of thing, or is this something specific to sunxi?

Quoted 6 lines

Asking mainly as I've been asked to do them alphabetically previously by a different maintainer and that's esentially why I did it the same way here.

Everyone having different undocumented conventions seems likely to become counter productive eventually.

That's unusual, it should be a global convention at least for ARM.

Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141010/6ff496e6/attachment-0001.sig>
#14 lore raw

PATCH v4 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Am 10.10.2014 um 15:56 schrieb Maxime Ripard:

Quoted 14 lines · Iain Paton
Quoted 13 lines · Maxime Ripard
Quoted 2 lines

Sorry for noticing this so late, but we sort the DT nodes by their base address. Could you respin this for another version?

Sure, no problem, on it's way shortly.

Is there any general rule for this sort of thing, or is this something specific to sunxi?

Asking mainly as I've been asked to do them alphabetically previously by a different maintainer and that's esentially why I did it the same way here.

Quoted 6 lines
Quoted 2 lines

Everyone having different undocumented conventions seems likely to become counter productive eventually.

That's unusual, it should be a global convention at least for ARM.

From what I understood it's by unit address for foo at 12345678 and

alphabetically for &foo. So there is both actually, plus existing inconsistencies. :)

Andreas

Signature · 10 lines
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 N?rnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imend?rffer; HRB 16746 AG N?rnberg

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141011/c5fc63c1/attachment-0001.sig>
#15 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

In reply to Maxime Ripard

Hello Maxim, Iain,

Quoted 58 lines · Maxime Ripard
Quoted 20 lines · Iain Paton
Quoted 8 lines · Maxime Ripard
Quoted 4 lines · Iain Paton

What additional patches are we talking about? The following:
regulator: axp20x: Use parent device as regulator configuration device
i2c: mv64xxx: continue probe when clock-frequency is missing or are there others I'd need to pick out of linux-next?

http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html

Ok, I'll pull those on top of something not quite as bleeding edge as linux-next

Quoted 2 lines

Leave it out then. If you have no way to test it, it's going to be very bug prone, and we can always add it later.

I moved my root disk to a SATA drive, so only a minor inconvenience.

dmesg shows the following with the regulators node as in the v2 patch, the bottom half being mostly what I'd expect

Quoted 15 lines
[    0.868607] sunxi-rtc 1c20d00.rtc: RTC enabled
[    0.877062] Adding alias for supply acin,(null) -> acin,0-0034
[    0.882948] Adding alias for supply vin2,(null) -> vin2,0-0034
[    0.888775] Adding alias for supply vin3,(null) -> vin3,0-0034
[    0.894612] Adding alias for supply ldo24in,(null) -> ldo24in,0-0034
[    0.900956] Adding alias for supply ldo3in,(null) -> ldo3in,0-0034
[    0.907160] Adding alias for supply ldo5in,(null) -> ldo5in,0-0034
[    0.914029] LDO1: 1300 mV
[    0.917428] LDO2: 1800 <--> 3300 mV at 3000 mV
[    0.922483] LDO3: 700 <--> 3500 mV at 2275 mV
[    0.927136] LDO4: 1250 <--> 3300 mV at 2800 mV
[    0.932334] LDO5: 1800 <--> 3300 mV at 2800 mV
[    0.937308] DCDC2: 1400 mV
[    0.940552] DCDC3: 1250 mV
[    0.943474] axp20x 0-0034: AXP20X driver loaded

No, it's not. You don't have the parenting relationship between the regulators, and you shouldn't use the aliases anymore.

Like I said, you'd better drop that part until things settle down.

Quoted 11 lines
Quoted 1 line

The SD card issue is more troublesome. We'll have to look into it.

dmesg shows the mmc driver loading:

[    0.957716] sdhci: Secure Digital Host Controller Interface driver
[    0.963963] sdhci: Copyright(c) Pierre Ossman
[    0.968843] sunxi-mmc 1c0f000.mmc: No vqmmc regulator found
[    0.974918] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[    1.012036] sunxi-mmc 1c0f000.mmc: base:0xf00ac000 irq:64
[    1.017623] sdhci-pltfm: SDHCI platform and OF driver helper
Quoted 4 lines

however on an older, working, kernel I get a number on the end of the 'Got CD GPIO' line like this:

[    0.896271] sunxi-mmc 1c0f000.mmc: Got CD GPIO #225.
Quoted 8 lines

That's interesting. It seems like it might be related to the recent breakages in the boot farm on the A31. These breakages were not happening on the arm-soc branch, but on linux-next only, so it must be coming from somewhere else, which is not that great, but rules out the DTS.

I'll bisect it this weekend, but don't worry too much about it.

The problem you are facing is because commit 98e90de ("mmc: host:
switch OF parser to use gpio descriptors") changed the semantics when the mmc cd and wp properties were converted to use the GPIO descriptor based API so card detection is not working on your board.

I reported the issue to Linus W. and he provided a fix [0] which should land in linux-next soon.

Quoted 2 lines

Maxime

Best regards,
Javier

[0]: https://www.mail-archive.com/linux-mmc at vger.kernel.org/msg28751.html

#16 lore raw

PATCH 1/1 ARM: sun7i: add support for A20-OLinuXino-Lime2

Hi Javier,

Quoted 71 lines · Javier Martinez Canillas

Hello Maxim, Iain,

Quoted 58 lines · Maxime Ripard
Quoted 20 lines · Iain Paton
Quoted 8 lines · Maxime Ripard
Quoted 4 lines · Iain Paton

What additional patches are we talking about? The following:
regulator: axp20x: Use parent device as regulator configuration device
i2c: mv64xxx: continue probe when clock-frequency is missing or are there others I'd need to pick out of linux-next?

http://lists.infradead.org/pipermail/linux-arm-kernel/2014-September/288901.html

Ok, I'll pull those on top of something not quite as bleeding edge as linux-next

Quoted 2 lines

Leave it out then. If you have no way to test it, it's going to be very bug prone, and we can always add it later.

I moved my root disk to a SATA drive, so only a minor inconvenience.

dmesg shows the following with the regulators node as in the v2 patch, the bottom half being mostly what I'd expect

Quoted 15 lines
[    0.868607] sunxi-rtc 1c20d00.rtc: RTC enabled
[    0.877062] Adding alias for supply acin,(null) -> acin,0-0034
[    0.882948] Adding alias for supply vin2,(null) -> vin2,0-0034
[    0.888775] Adding alias for supply vin3,(null) -> vin3,0-0034
[    0.894612] Adding alias for supply ldo24in,(null) -> ldo24in,0-0034
[    0.900956] Adding alias for supply ldo3in,(null) -> ldo3in,0-0034
[    0.907160] Adding alias for supply ldo5in,(null) -> ldo5in,0-0034
[    0.914029] LDO1: 1300 mV
[    0.917428] LDO2: 1800 <--> 3300 mV at 3000 mV
[    0.922483] LDO3: 700 <--> 3500 mV at 2275 mV
[    0.927136] LDO4: 1250 <--> 3300 mV at 2800 mV
[    0.932334] LDO5: 1800 <--> 3300 mV at 2800 mV
[    0.937308] DCDC2: 1400 mV
[    0.940552] DCDC3: 1250 mV
[    0.943474] axp20x 0-0034: AXP20X driver loaded

No, it's not. You don't have the parenting relationship between the regulators, and you shouldn't use the aliases anymore.

Like I said, you'd better drop that part until things settle down.

Quoted 11 lines
Quoted 1 line

The SD card issue is more troublesome. We'll have to look into it.

dmesg shows the mmc driver loading:

[    0.957716] sdhci: Secure Digital Host Controller Interface driver
[    0.963963] sdhci: Copyright(c) Pierre Ossman
[    0.968843] sunxi-mmc 1c0f000.mmc: No vqmmc regulator found
[    0.974918] sunxi-mmc 1c0f000.mmc: Got CD GPIO
[    1.012036] sunxi-mmc 1c0f000.mmc: base:0xf00ac000 irq:64
[    1.017623] sdhci-pltfm: SDHCI platform and OF driver helper
Quoted 4 lines

however on an older, working, kernel I get a number on the end of the 'Got CD GPIO' line like this:

[    0.896271] sunxi-mmc 1c0f000.mmc: Got CD GPIO #225.
Quoted 8 lines

That's interesting. It seems like it might be related to the recent breakages in the boot farm on the A31. These breakages were not happening on the arm-soc branch, but on linux-next only, so it must be coming from somewhere else, which is not that great, but rules out the DTS.

I'll bisect it this weekend, but don't worry too much about it.

Quoted 7 lines

The problem you are facing is because commit 98e90de ("mmc: host:
switch OF parser to use gpio descriptors") changed the semantics when the mmc cd and wp properties were converted to use the GPIO descriptor based API so card detection is not working on your board.

I reported the issue to Linus W. and he provided a fix [0] which should land in linux-next soon.

Yeah, I ended up bisecting this weekend, and found this commit, but I wasn't aware of such a fix.

Thanks!
Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141006/704e2b64/attachment.sig>