* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
@ 2014-09-28 13:18 Iain Paton
2014-09-28 16:43 ` Maxime Ripard
0 siblings, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-09-28 13:18 UTC (permalink / raw)
To: linux-arm-kernel
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
Signed-off-by: Iain Paton <ipaton0@gmail.com>
---
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
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 2f42b18..ea6c672 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -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) += \
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
new file mode 100644
index 0000000..14fbc43
--- /dev/null
+++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
@@ -0,0 +1,178 @@
+/*
+ * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
+ *
+ * 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 = <®_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>;
+ };
+
+ };
+
+ 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 = <®_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 = <®_usb1_vbus>;
+ usb2_vbus-supply = <®_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";
+ };
+};
--
1.8.5.1
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-09-28 13:18 [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2 Iain Paton
@ 2014-09-28 16:43 ` Maxime Ripard
2014-09-29 12:56 ` Iain Paton
0 siblings, 1 reply; 17+ messages in thread
From: Maxime Ripard @ 2014-09-28 16:43 UTC (permalink / raw)
To: linux-arm-kernel
On Sun, Sep 28, 2014 at 02:18:31PM +0100, Iain Paton wrote:
> 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
>
> Signed-off-by: Iain Paton <ipaton0@gmail.com>
> ---
>
> 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).
> 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
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 2f42b18..ea6c672 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -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) += \
> diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> new file mode 100644
> index 0000000..14fbc43
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> @@ -0,0 +1,178 @@
> +/*
> + * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
> + *
> + * 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 = <®_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>;
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
> + };
> +
> + };
> +
> + 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 = <®_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 = <®_usb1_vbus>;
> + usb2_vbus-supply = <®_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";
> + };
> +};
> --
> 1.8.5.1
>
It looks fine otherwise, thanks!
Maxime
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-09-28 16:43 ` Maxime Ripard
@ 2014-09-29 12:56 ` Iain Paton
2014-09-29 13:25 ` Maxime Ripard
0 siblings, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-09-29 12:56 UTC (permalink / raw)
To: linux-arm-kernel
On 28/09/14 17:43, Maxime Ripard wrote:
> On Sun, Sep 28, 2014 at 02:18:31PM +0100, Iain Paton wrote:
>> +
>> + 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>;
>
> 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
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.
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-09-29 12:56 ` Iain Paton
@ 2014-09-29 13:25 ` Maxime Ripard
2014-09-29 14:32 ` Iain Paton
0 siblings, 1 reply; 17+ messages in thread
From: Maxime Ripard @ 2014-09-29 13:25 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Sep 29, 2014 at 01:56:49PM +0100, Iain Paton wrote:
> On 28/09/14 17:43, Maxime Ripard wrote:
> > On Sun, Sep 28, 2014 at 02:18:31PM +0100, Iain Paton wrote:
>
> >> +
> >> + 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>;
> >
> > 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
>
> 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...
> 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
> 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.
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
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-09-29 13:25 ` Maxime Ripard
@ 2014-09-29 14:32 ` Iain Paton
2014-10-02 12:48 ` Maxime Ripard
0 siblings, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-09-29 14:32 UTC (permalink / raw)
To: linux-arm-kernel
On 29/09/14 14:25, Maxime Ripard wrote:
> On Mon, Sep 29, 2014 at 01:56:49PM +0100, Iain Paton wrote:
>> 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
> 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
> 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
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-09-29 14:32 ` Iain Paton
@ 2014-10-02 12:48 ` Maxime Ripard
2014-10-05 22:40 ` [PATCH v3 ] " Iain Paton
2014-10-06 8:56 ` [PATCH] " Javier Martinez Canillas
0 siblings, 2 replies; 17+ messages in thread
From: Maxime Ripard @ 2014-10-02 12:48 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Sep 29, 2014 at 03:32:43PM +0100, Iain Paton wrote:
> On 29/09/14 14:25, Maxime Ripard wrote:
> > On Mon, Sep 29, 2014 at 01:56:49PM +0100, Iain Paton wrote:
>
> >> 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
>
> > 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
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.
> > 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.
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
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH v3 ] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-02 12:48 ` Maxime Ripard
@ 2014-10-05 22:40 ` Iain Paton
2014-10-06 9:20 ` Maxime Ripard
2014-10-06 8:56 ` [PATCH] " Javier Martinez Canillas
1 sibling, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-10-05 22:40 UTC (permalink / raw)
To: linux-arm-kernel
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
Signed-off-by: Iain Paton <ipaton0@gmail.com>
---
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
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 2f42b18..ea6c672 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -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) += \
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
new file mode 100644
index 0000000..5b60309
--- /dev/null
+++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
@@ -0,0 +1,230 @@
+/*
+ * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
+ *
+ * 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 = <®_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>;
+
+ acin-supply = <®_axp_ipsout>;
+ vin2-supply = <®_axp_ipsout>;
+ vin3-supply = <®_axp_ipsout>;
+ ldo24in-supply = <®_axp_ipsout>;
+ ldo3in-supply = <®_axp_ipsout>;
+ ldo5in-supply = <®_axp_ipsout>;
+
+ regulators {
+ reg_ldo1: ldo1 {
+ regulator-min-microvolt = <1300000>;
+ regulator-max-microvolt = <1300000>;
+ regulator-always-on;
+ };
+ reg_ldo2: ldo2 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ reg_ldo3: ldo3 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <3500000>;
+ regulator-always-on;
+ };
+ reg_ldo4: ldo4 {
+ regulator-min-microvolt = <1250000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ reg_ldo5: ldo5 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+ reg_dcdc2: dcdc2 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <2275000>;
+ regulator-always-on;
+ };
+ reg_dcdc3: dcdc3 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <3500000>;
+ regulator-always-on;
+ };
+ };
+ };
+ };
+
+ 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 = <®_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 = <®_usb1_vbus>;
+ usb2_vbus-supply = <®_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";
+ };
+
+ reg_axp_ipsout: axp_ipsout {
+ compatible = "regulator-fixed";
+ regulator-name = "axp-ipsout";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+};
--
1.8.5.1
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH v3 ] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-05 22:40 ` [PATCH v3 ] " Iain Paton
@ 2014-10-06 9:20 ` Maxime Ripard
2014-10-09 10:27 ` [PATCH v4] " Iain Paton
0 siblings, 1 reply; 17+ messages in thread
From: Maxime Ripard @ 2014-10-06 9:20 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On Sun, Oct 05, 2014 at 11:40:47PM +0100, Iain Paton wrote:
> 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
>
> Signed-off-by: Iain Paton <ipaton0@gmail.com>
Almost good, see a few minor comments below.
> ---
>
> 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
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 2f42b18..ea6c672 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -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) += \
> diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> new file mode 100644
> index 0000000..5b60309
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> @@ -0,0 +1,230 @@
> +/*
> + * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
> + *
> + * 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 = <®_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>;
> +
> + acin-supply = <®_axp_ipsout>;
> + vin2-supply = <®_axp_ipsout>;
> + vin3-supply = <®_axp_ipsout>;
> + ldo24in-supply = <®_axp_ipsout>;
> + ldo3in-supply = <®_axp_ipsout>;
> + ldo5in-supply = <®_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.
> + regulator-min-microvolt = <1300000>;
> + regulator-max-microvolt = <1300000>;
> + regulator-always-on;
> + };
And new lines between each node would be nice too.
Thanks!
Maxime
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH v4] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-06 9:20 ` Maxime Ripard
@ 2014-10-09 10:27 ` Iain Paton
2014-10-09 19:56 ` Maxime Ripard
0 siblings, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-10-09 10:27 UTC (permalink / raw)
To: linux-arm-kernel
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
Signed-off-by: Iain Paton <ipaton0@gmail.com>
---
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
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 2f42b18..ea6c672 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -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) += \
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
new file mode 100644
index 0000000..4e68101
--- /dev/null
+++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
@@ -0,0 +1,229 @@
+/*
+ * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
+ *
+ * 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 = <®_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>;
+
+ acin-supply = <®_axp_ipsout>;
+ vin2-supply = <®_axp_ipsout>;
+ vin3-supply = <®_axp_ipsout>;
+ ldo24in-supply = <®_axp_ipsout>;
+ ldo3in-supply = <®_axp_ipsout>;
+
+ regulators {
+ vdd_rtc: ldo1 {
+ regulator-min-microvolt = <1300000>;
+ regulator-max-microvolt = <1300000>;
+ regulator-always-on;
+ };
+
+ avcc: ldo2 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ vcc_csi0: ldo3 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <3500000>;
+ regulator-always-on;
+ };
+
+ vcc_csi1: ldo4 {
+ regulator-min-microvolt = <1250000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ vdd_cpu: dcdc2 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <2275000>;
+ regulator-always-on;
+ };
+
+ vdd_int: dcdc3 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <3500000>;
+ regulator-always-on;
+ };
+ };
+ };
+ };
+
+ 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 = <®_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 = <®_usb1_vbus>;
+ usb2_vbus-supply = <®_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";
+ };
+
+ reg_axp_ipsout: axp_ipsout {
+ compatible = "regulator-fixed";
+ regulator-name = "axp-ipsout";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+};
--
1.8.5.1
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH v4] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-09 10:27 ` [PATCH v4] " Iain Paton
@ 2014-10-09 19:56 ` Maxime Ripard
2014-10-10 13:15 ` [PATCH v5] " Iain Paton
2014-10-10 13:15 ` [PATCH v4] " Iain Paton
0 siblings, 2 replies; 17+ messages in thread
From: Maxime Ripard @ 2014-10-09 19:56 UTC (permalink / raw)
To: linux-arm-kernel
Hi Iain,
On Thu, Oct 09, 2014 at 11:27:50AM +0100, Iain Paton wrote:
> 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
>
> Signed-off-by: Iain Paton <ipaton0@gmail.com>
Sorry for noticing this so late, but we sort the DT nodes by their
base address. Could you respin this for another version?
> ---
>
> 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
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 2f42b18..ea6c672 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -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) += \
> diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> new file mode 100644
> index 0000000..4e68101
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
> @@ -0,0 +1,229 @@
> +/*
> + * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
> + *
> + * 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 {
> +
And drop this newline while we're at it?
Thanks a lot,
Maxime
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH v5] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-09 19:56 ` Maxime Ripard
@ 2014-10-10 13:15 ` Iain Paton
2014-10-10 13:55 ` Maxime Ripard
2014-10-10 13:15 ` [PATCH v4] " Iain Paton
1 sibling, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-10-10 13:15 UTC (permalink / raw)
To: linux-arm-kernel
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
Signed-off-by: Iain Paton <ipaton0@gmail.com>
---
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
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 2f42b18..ea6c672 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -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) += \
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
new file mode 100644
index 0000000..187729a
--- /dev/null
+++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts
@@ -0,0 +1,228 @@
+/*
+ * Copyright 2014 - Iain Paton <ipaton0@gmail.com>
+ *
+ * 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 {
+ mmc0: mmc at 01c0f000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>;
+ vmmc-supply = <®_vcc3v3>;
+ bus-width = <4>;
+ cd-gpios = <&pio 7 1 0>; /* PH1 */
+ cd-inverted;
+ status = "okay";
+ };
+
+ usbphy: phy at 01c13400 {
+ usb1_vbus-supply = <®_usb1_vbus>;
+ usb2_vbus-supply = <®_usb2_vbus>;
+ status = "okay";
+ };
+
+ ehci0: usb at 01c14000 {
+ status = "okay";
+ };
+
+ ohci0: usb at 01c14400 {
+ status = "okay";
+ };
+
+ ahci: sata at 01c18000 {
+ target-supply = <®_ahci_5v>;
+ status = "okay";
+ };
+
+ ehci1: usb at 01c1c000 {
+ status = "okay";
+ };
+
+ ohci1: usb at 01c1c400 {
+ 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>;
+ };
+ };
+
+ uart0: serial at 01c28000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pins_a>;
+ status = "okay";
+ };
+
+ 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>;
+
+ acin-supply = <®_axp_ipsout>;
+ vin2-supply = <®_axp_ipsout>;
+ vin3-supply = <®_axp_ipsout>;
+ ldo24in-supply = <®_axp_ipsout>;
+ ldo3in-supply = <®_axp_ipsout>;
+
+ regulators {
+ vdd_rtc: ldo1 {
+ regulator-min-microvolt = <1300000>;
+ regulator-max-microvolt = <1300000>;
+ regulator-always-on;
+ };
+
+ avcc: ldo2 {
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ vcc_csi0: ldo3 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <3500000>;
+ regulator-always-on;
+ };
+
+ vcc_csi1: ldo4 {
+ regulator-min-microvolt = <1250000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-always-on;
+ };
+
+ vdd_cpu: dcdc2 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <2275000>;
+ regulator-always-on;
+ };
+
+ vdd_int: dcdc3 {
+ regulator-min-microvolt = <700000>;
+ regulator-max-microvolt = <3500000>;
+ regulator-always-on;
+ };
+ };
+ };
+ };
+
+ i2c1: i2c at 01c2b000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_pins_a>;
+ 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>;
+ };
+ };
+ };
+
+ 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";
+ };
+
+ reg_axp_ipsout: axp_ipsout {
+ compatible = "regulator-fixed";
+ regulator-name = "axp-ipsout";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ };
+};
--
1.8.5.1
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH v4] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-09 19:56 ` Maxime Ripard
2014-10-10 13:15 ` [PATCH v5] " Iain Paton
@ 2014-10-10 13:15 ` Iain Paton
2014-10-10 13:56 ` Maxime Ripard
1 sibling, 1 reply; 17+ messages in thread
From: Iain Paton @ 2014-10-10 13:15 UTC (permalink / raw)
To: linux-arm-kernel
On 09/10/14 20:56, Maxime Ripard wrote:
> Hi Iain,
>
> On Thu, Oct 09, 2014 at 11:27:50AM +0100, Iain Paton wrote:
>> 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
>>
>> Signed-off-by: Iain Paton <ipaton0@gmail.com>
>
> 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
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH v4] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-10 13:15 ` [PATCH v4] " Iain Paton
@ 2014-10-10 13:56 ` Maxime Ripard
2014-10-11 14:00 ` Andreas Färber
0 siblings, 1 reply; 17+ messages in thread
From: Maxime Ripard @ 2014-10-10 13:56 UTC (permalink / raw)
To: linux-arm-kernel
On Fri, Oct 10, 2014 at 02:15:48PM +0100, Iain Paton wrote:
> On 09/10/14 20:56, Maxime Ripard wrote:
> > Hi Iain,
> >
> > On Thu, Oct 09, 2014 at 11:27:50AM +0100, Iain Paton wrote:
> >> 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
> >>
> >> Signed-off-by: Iain Paton <ipaton0@gmail.com>
> >
> > 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.
That's unusual, it should be a global convention at least for ARM.
Maxime
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH v4] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-10 13:56 ` Maxime Ripard
@ 2014-10-11 14:00 ` Andreas Färber
0 siblings, 0 replies; 17+ messages in thread
From: Andreas Färber @ 2014-10-11 14:00 UTC (permalink / raw)
To: linux-arm-kernel
Am 10.10.2014 um 15:56 schrieb Maxime Ripard:
> On Fri, Oct 10, 2014 at 02:15:48PM +0100, Iain Paton wrote:
>> On 09/10/14 20:56, Maxime Ripard wrote:
>>> 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.
>
> 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
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-02 12:48 ` Maxime Ripard
2014-10-05 22:40 ` [PATCH v3 ] " Iain Paton
@ 2014-10-06 8:56 ` Javier Martinez Canillas
2014-10-06 9:11 ` Maxime Ripard
1 sibling, 1 reply; 17+ messages in thread
From: Javier Martinez Canillas @ 2014-10-06 8:56 UTC (permalink / raw)
To: linux-arm-kernel
Hello Maxim, Iain,
On Thu, Oct 2, 2014 at 2:48 PM, Maxime Ripard
<maxime.ripard@free-electrons.com> wrote:
> On Mon, Sep 29, 2014 at 03:32:43PM +0100, Iain Paton wrote:
>> On 29/09/14 14:25, Maxime Ripard wrote:
>> > On Mon, Sep 29, 2014 at 01:56:49PM +0100, Iain Paton wrote:
>>
>> >> 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
>>
>> > 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
>
> 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.
>
>> > 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.
>
> 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.
> Maxime
>
Best regards,
Javier
[0]: https://www.mail-archive.com/linux-mmc at vger.kernel.org/msg28751.html
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2
2014-10-06 8:56 ` [PATCH] " Javier Martinez Canillas
@ 2014-10-06 9:11 ` Maxime Ripard
0 siblings, 0 replies; 17+ messages in thread
From: Maxime Ripard @ 2014-10-06 9:11 UTC (permalink / raw)
To: linux-arm-kernel
Hi Javier,
On Mon, Oct 06, 2014 at 10:56:50AM +0200, Javier Martinez Canillas wrote:
> Hello Maxim, Iain,
>
> On Thu, Oct 2, 2014 at 2:48 PM, Maxime Ripard
> <maxime.ripard@free-electrons.com> wrote:
> > On Mon, Sep 29, 2014 at 03:32:43PM +0100, Iain Paton wrote:
> >> On 29/09/14 14:25, Maxime Ripard wrote:
> >> > On Mon, Sep 29, 2014 at 01:56:49PM +0100, Iain Paton wrote:
> >>
> >> >> 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
> >>
> >> > 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
> >
> > 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.
> >
> >> > 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.
> >
> > 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.
Yeah, I ended up bisecting this weekend, and found this commit, but I
wasn't aware of such a fix.
Thanks!
Maxime
--
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>
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2014-10-11 14:00 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-28 13:18 [PATCH] ARM: sun7i: add support for A20-OLinuXino-Lime2 Iain Paton
2014-09-28 16:43 ` Maxime Ripard
2014-09-29 12:56 ` Iain Paton
2014-09-29 13:25 ` Maxime Ripard
2014-09-29 14:32 ` Iain Paton
2014-10-02 12:48 ` Maxime Ripard
2014-10-05 22:40 ` [PATCH v3 ] " Iain Paton
2014-10-06 9:20 ` Maxime Ripard
2014-10-09 10:27 ` [PATCH v4] " Iain Paton
2014-10-09 19:56 ` Maxime Ripard
2014-10-10 13:15 ` [PATCH v5] " Iain Paton
2014-10-10 13:55 ` Maxime Ripard
2014-10-10 13:15 ` [PATCH v4] " Iain Paton
2014-10-10 13:56 ` Maxime Ripard
2014-10-11 14:00 ` Andreas Färber
2014-10-06 8:56 ` [PATCH] " Javier Martinez Canillas
2014-10-06 9:11 ` Maxime Ripard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).