Message ID | 20171010134515.98283-1-antony@phenome.org |
---|---|
State | Superseded |
Delegated to: | Jagannadha Sutradharudu Teki |
Headers | show |
Series | [U-Boot] sun50i: h5: Add NanoPi Neo Plus2 DT initial support | expand |
On Tue, Oct 10, 2017 at 7:15 PM, Antony Antony <antony@phenome.org> wrote: > Add initial DT for NanoPi NEO Plus2 by FriendlyARM > - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU > - 1 GB DDR3 RAM > - 8GB eMMC flash (Samsung KLM8G1WEPD-B031) > - micro SD card slot > - Gigabit Ethernet (external RTL8211E-VB-CG chip) > - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module) > - 2x USB 2.0 host ports > > Signed-off-by: Antony Antony <antony@phenome.org> > --- > arch/arm/dts/Makefile | 1 + > arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts | 106 ++++++++++++++++++++++++++++ > configs/nanopi_neo_plus2_defconfig | 18 +++++ > 3 files changed, 125 insertions(+) > create mode 100644 arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > create mode 100644 configs/nanopi_neo_plus2_defconfig > --- > Changes v1->v2 > removed memory {}, compatible ="allwinner,sun5i-a13-mmc" > remove CONFIG_SPL_SPI_FLASH_SUPPORT=y and CONFIG_SPL_SPI_SUNXI=y (no SPI) > remove CONFIG_SD_BOOT=y > Changes v2->v3 > removed compatible ="allwinner,sun50i-a64-mmc" > Changes v3->v4 > removed compatible from mmc0 > add h5 & a64 compaitable to sun50i-h5.dtsi > > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index 5b90280..879ff24 100644 > --- a/arch/arm/dts/Makefile > +++ b/arch/arm/dts/Makefile > @@ -335,6 +335,7 @@ dtb-$(CONFIG_MACH_SUN8I_V3S) += \ > sun8i-v3s-licheepi-zero.dtb > dtb-$(CONFIG_MACH_SUN50I_H5) += \ > sun50i-h5-nanopi-neo2.dtb \ > + sun50i-h5-nanopi-neo-plus2.dtb \ > sun50i-h5-orangepi-pc2.dtb \ > sun50i-h5-orangepi-prime.dtb \ > sun50i-h5-orangepi-zero-plus2.dtb > diff --git a/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > new file mode 100644 > index 0000000..f1406c2 > --- /dev/null > +++ b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > @@ -0,0 +1,106 @@ > +/* > + * Copyright (C) 2017 Antony Antony <antony@phenome.org> > + * Copyright (c) 2016 ARM Ltd. > + * > + * 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. > + * > + * 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 "sun50i-h5.dtsi" > + > +#include <dt-bindings/gpio/gpio.h> > + > +/ { > + model = "FriendlyARM NanoPi NEO Plus 2"; > + compatible = "friendlyarm,nanopi-neo-plus2", "allwinner,sun50i-h5"; > + > + aliases { > + serial0 = &uart0; > + }; > + > + chosen { > + stdout-path = "serial0:115200n8"; > + }; > + > + reg_vcc3v3: vcc3v3 { > + compatible = "regulator-fixed"; > + regulator-name = "vcc3v3"; > + regulator-min-microvolt = <3300000>; > + regulator-max-microvolt = <3300000>; > + }; > +}; > + > +&ehci1 { > + status = "okay"; > +}; Does this tested? need to have in Linux first. > + > +&mmc0 { > + pinctrl-names = "default"; > + pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; > + vmmc-supply = <®_vcc3v3>; > + bus-width = <4>; > + cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; > + cd-inverted; > + status = "okay"; > +}; > + > +&mmc2 { > + pinctrl-names = "default"; > + pinctrl-0 = <&mmc2_8bit_pins>; > + vmmc-supply = <®_vcc3v3>; > + bus-width = <8>; > + non-removable; > + cap-mmc-hw-reset; > + status = "okay"; > +}; > + > +&ohci1 { > + status = "okay"; > +}; Same comment like ehci1 thanks!
On Tue, Oct 10, 2017 at 07:28:23PM +0530, Jagan Teki wrote: > On Tue, Oct 10, 2017 at 7:15 PM, Antony Antony <antony@phenome.org> wrote: > > Add initial DT for NanoPi NEO Plus2 by FriendlyARM > > - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU > > - 1 GB DDR3 RAM > > - 8GB eMMC flash (Samsung KLM8G1WEPD-B031) > > - micro SD card slot > > - Gigabit Ethernet (external RTL8211E-VB-CG chip) > > - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module) > > - 2x USB 2.0 host ports > > > > Signed-off-by: Antony Antony <antony@phenome.org> > > --- > > arch/arm/dts/Makefile | 1 + > > arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts | 106 ++++++++++++++++++++++++++++ > > configs/nanopi_neo_plus2_defconfig | 18 +++++ > > 3 files changed, 125 insertions(+) > > create mode 100644 arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > > create mode 100644 configs/nanopi_neo_plus2_defconfig > > --- > > Changes v1->v2 > > removed memory {}, compatible ="allwinner,sun5i-a13-mmc" > > remove CONFIG_SPL_SPI_FLASH_SUPPORT=y and CONFIG_SPL_SPI_SUNXI=y (no SPI) > > remove CONFIG_SD_BOOT=y > > Changes v2->v3 > > removed compatible ="allwinner,sun50i-a64-mmc" > > Changes v3->v4 > > removed compatible from mmc0 > > add h5 & a64 compaitable to sun50i-h5.dtsi > > > > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > > index 5b90280..879ff24 100644 > > --- a/arch/arm/dts/Makefile > > +++ b/arch/arm/dts/Makefile > > @@ -335,6 +335,7 @@ dtb-$(CONFIG_MACH_SUN8I_V3S) += \ > > sun8i-v3s-licheepi-zero.dtb > > dtb-$(CONFIG_MACH_SUN50I_H5) += \ > > sun50i-h5-nanopi-neo2.dtb \ > > + sun50i-h5-nanopi-neo-plus2.dtb \ > > sun50i-h5-orangepi-pc2.dtb \ > > sun50i-h5-orangepi-prime.dtb \ > > sun50i-h5-orangepi-zero-plus2.dtb > > diff --git a/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > > new file mode 100644 > > index 0000000..f1406c2 > > --- /dev/null > > +++ b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > > @@ -0,0 +1,106 @@ > > +/* > > + * Copyright (C) 2017 Antony Antony <antony@phenome.org> > > + * Copyright (c) 2016 ARM Ltd. > > + * > > + * 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. > > + * > > + * 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 "sun50i-h5.dtsi" > > + > > +#include <dt-bindings/gpio/gpio.h> > > + > > +/ { > > + model = "FriendlyARM NanoPi NEO Plus 2"; > > + compatible = "friendlyarm,nanopi-neo-plus2", "allwinner,sun50i-h5"; > > + > > + aliases { > > + serial0 = &uart0; > > + }; > > + > > + chosen { > > + stdout-path = "serial0:115200n8"; > > + }; > > + > > + reg_vcc3v3: vcc3v3 { > > + compatible = "regulator-fixed"; > > + regulator-name = "vcc3v3"; > > + regulator-min-microvolt = <3300000>; > > + regulator-max-microvolt = <3300000>; > > + }; > > +}; > > + > > +&ehci1 { > > + status = "okay"; > > +}; > > Does this tested? need to have in Linux first. I use rootfs from /dev/sda1 , spl and u-boot are on MicroSD card. in armbianEnv.txt set rootdev=/dev/sda1 Begin: Will now check root file system ... fsck from util-linux 2.27.1 [/sbin/fsck.ext4 (1) -- /dev/sda1] fsck.ext4 -a -C0 /dev/sda1 Are you suggesting ehci1 & ohci1 are not necessary in the u-boot DT file, The kernel will initialize it after u-boot? > > + > > +&mmc0 { > > + pinctrl-names = "default"; > > + pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; > > + vmmc-supply = <®_vcc3v3>; > > + bus-width = <4>; > > + cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; > > + cd-inverted; > > + status = "okay"; > > +}; > > + > > +&mmc2 { > > + pinctrl-names = "default"; > > + pinctrl-0 = <&mmc2_8bit_pins>; > > + vmmc-supply = <®_vcc3v3>; > > + bus-width = <8>; > > + non-removable; > > + cap-mmc-hw-reset; > > + status = "okay"; > > +}; > > + > > +&ohci1 { > > + status = "okay"; > > +}; > > Same comment like ehci1 > > thanks! > -- > Jagan Teki > Free Software Engineer | www.openedev.com > U-Boot, Linux | Upstream Maintainer > Hyderabad, India.
On Tue, Oct 10, 2017 at 10:26 PM, Antony Antony <antony@phenome.org> wrote: > On Tue, Oct 10, 2017 at 07:28:23PM +0530, Jagan Teki wrote: >> On Tue, Oct 10, 2017 at 7:15 PM, Antony Antony <antony@phenome.org> wrote: >> > Add initial DT for NanoPi NEO Plus2 by FriendlyARM >> > - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU >> > - 1 GB DDR3 RAM >> > - 8GB eMMC flash (Samsung KLM8G1WEPD-B031) >> > - micro SD card slot >> > - Gigabit Ethernet (external RTL8211E-VB-CG chip) >> > - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module) >> > - 2x USB 2.0 host ports >> > >> > Signed-off-by: Antony Antony <antony@phenome.org> >> > --- >> > arch/arm/dts/Makefile | 1 + >> > arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts | 106 ++++++++++++++++++++++++++++ >> > configs/nanopi_neo_plus2_defconfig | 18 +++++ >> > 3 files changed, 125 insertions(+) >> > create mode 100644 arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts >> > create mode 100644 configs/nanopi_neo_plus2_defconfig >> > --- >> > Changes v1->v2 >> > removed memory {}, compatible ="allwinner,sun5i-a13-mmc" >> > remove CONFIG_SPL_SPI_FLASH_SUPPORT=y and CONFIG_SPL_SPI_SUNXI=y (no SPI) >> > remove CONFIG_SD_BOOT=y >> > Changes v2->v3 >> > removed compatible ="allwinner,sun50i-a64-mmc" >> > Changes v3->v4 >> > removed compatible from mmc0 >> > add h5 & a64 compaitable to sun50i-h5.dtsi >> > >> > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile >> > index 5b90280..879ff24 100644 >> > --- a/arch/arm/dts/Makefile >> > +++ b/arch/arm/dts/Makefile >> > @@ -335,6 +335,7 @@ dtb-$(CONFIG_MACH_SUN8I_V3S) += \ >> > sun8i-v3s-licheepi-zero.dtb >> > dtb-$(CONFIG_MACH_SUN50I_H5) += \ >> > sun50i-h5-nanopi-neo2.dtb \ >> > + sun50i-h5-nanopi-neo-plus2.dtb \ >> > sun50i-h5-orangepi-pc2.dtb \ >> > sun50i-h5-orangepi-prime.dtb \ >> > sun50i-h5-orangepi-zero-plus2.dtb >> > diff --git a/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts >> > new file mode 100644 >> > index 0000000..f1406c2 >> > --- /dev/null >> > +++ b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts >> > @@ -0,0 +1,106 @@ >> > +/* >> > + * Copyright (C) 2017 Antony Antony <antony@phenome.org> >> > + * Copyright (c) 2016 ARM Ltd. >> > + * >> > + * 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. >> > + * >> > + * 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 "sun50i-h5.dtsi" >> > + >> > +#include <dt-bindings/gpio/gpio.h> >> > + >> > +/ { >> > + model = "FriendlyARM NanoPi NEO Plus 2"; >> > + compatible = "friendlyarm,nanopi-neo-plus2", "allwinner,sun50i-h5"; >> > + >> > + aliases { >> > + serial0 = &uart0; >> > + }; >> > + >> > + chosen { >> > + stdout-path = "serial0:115200n8"; >> > + }; >> > + >> > + reg_vcc3v3: vcc3v3 { >> > + compatible = "regulator-fixed"; >> > + regulator-name = "vcc3v3"; >> > + regulator-min-microvolt = <3300000>; >> > + regulator-max-microvolt = <3300000>; >> > + }; >> > +}; >> > + >> > +&ehci1 { >> > + status = "okay"; >> > +}; >> >> Does this tested? need to have in Linux first. > > I use rootfs from /dev/sda1 , spl and u-boot are on MicroSD card. > in armbianEnv.txt set rootdev=/dev/sda1 > > Begin: Will now check root file system ... fsck from util-linux 2.27.1 > [/sbin/fsck.ext4 (1) -- /dev/sda1] fsck.ext4 -a -C0 /dev/sda1 > > Are you suggesting ehci1 & ohci1 are not necessary in the u-boot DT file, > The kernel will initialize it after u-boot? No, the dts need to sync with Linux (atleast for sunxi), usually new dts additions should go Linux first. thanks!
On Tue, Oct 10, 2017 at 10:30:42PM +0530, Jagan Teki wrote: > On Tue, Oct 10, 2017 at 10:26 PM, Antony Antony <antony@phenome.org> wrote: > > On Tue, Oct 10, 2017 at 07:28:23PM +0530, Jagan Teki wrote: > >> On Tue, Oct 10, 2017 at 7:15 PM, Antony Antony <antony@phenome.org> wrote: > >> > Add initial DT for NanoPi NEO Plus2 by FriendlyARM > >> > - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU > >> > - 1 GB DDR3 RAM > >> > - 8GB eMMC flash (Samsung KLM8G1WEPD-B031) > >> > - micro SD card slot > >> > - Gigabit Ethernet (external RTL8211E-VB-CG chip) > >> > - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module) > >> > - 2x USB 2.0 host ports > >> > > >> > Signed-off-by: Antony Antony <antony@phenome.org> > >> > --- > >> > arch/arm/dts/Makefile | 1 + > >> > arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts | 106 ++++++++++++++++++++++++++++ > >> > configs/nanopi_neo_plus2_defconfig | 18 +++++ > >> > 3 files changed, 125 insertions(+) > >> > create mode 100644 arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > >> > create mode 100644 configs/nanopi_neo_plus2_defconfig > >> > --- > >> > Changes v1->v2 > >> > removed memory {}, compatible ="allwinner,sun5i-a13-mmc" > >> > remove CONFIG_SPL_SPI_FLASH_SUPPORT=y and CONFIG_SPL_SPI_SUNXI=y (no SPI) > >> > remove CONFIG_SD_BOOT=y > >> > Changes v2->v3 > >> > removed compatible ="allwinner,sun50i-a64-mmc" > >> > Changes v3->v4 > >> > removed compatible from mmc0 > >> > add h5 & a64 compaitable to sun50i-h5.dtsi > >> > > >> > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > >> > index 5b90280..879ff24 100644 > >> > --- a/arch/arm/dts/Makefile > >> > +++ b/arch/arm/dts/Makefile > >> > @@ -335,6 +335,7 @@ dtb-$(CONFIG_MACH_SUN8I_V3S) += \ > >> > sun8i-v3s-licheepi-zero.dtb > >> > dtb-$(CONFIG_MACH_SUN50I_H5) += \ > >> > sun50i-h5-nanopi-neo2.dtb \ > >> > + sun50i-h5-nanopi-neo-plus2.dtb \ > >> > sun50i-h5-orangepi-pc2.dtb \ > >> > sun50i-h5-orangepi-prime.dtb \ > >> > sun50i-h5-orangepi-zero-plus2.dtb > >> > diff --git a/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > >> > new file mode 100644 > >> > index 0000000..f1406c2 > >> > --- /dev/null > >> > +++ b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts > >> > @@ -0,0 +1,106 @@ > >> > +/* > >> > + * Copyright (C) 2017 Antony Antony <antony@phenome.org> > >> > + * Copyright (c) 2016 ARM Ltd. > >> > + * > >> > + * 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. > >> > + * > >> > + * 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 "sun50i-h5.dtsi" > >> > + > >> > +#include <dt-bindings/gpio/gpio.h> > >> > + > >> > +/ { > >> > + model = "FriendlyARM NanoPi NEO Plus 2"; > >> > + compatible = "friendlyarm,nanopi-neo-plus2", "allwinner,sun50i-h5"; > >> > + > >> > + aliases { > >> > + serial0 = &uart0; > >> > + }; > >> > + > >> > + chosen { > >> > + stdout-path = "serial0:115200n8"; > >> > + }; > >> > + > >> > + reg_vcc3v3: vcc3v3 { > >> > + compatible = "regulator-fixed"; > >> > + regulator-name = "vcc3v3"; > >> > + regulator-min-microvolt = <3300000>; > >> > + regulator-max-microvolt = <3300000>; > >> > + }; > >> > +}; > >> > + > >> > +&ehci1 { > >> > + status = "okay"; > >> > +}; > >> > >> Does this tested? need to have in Linux first. > > > > I use rootfs from /dev/sda1 , spl and u-boot are on MicroSD card. > > in armbianEnv.txt set rootdev=/dev/sda1 > > > > Begin: Will now check root file system ... fsck from util-linux 2.27.1 > > [/sbin/fsck.ext4 (1) -- /dev/sda1] fsck.ext4 -a -C0 /dev/sda1 > > > > Are you suggesting ehci1 & ohci1 are not necessary in the u-boot DT file, > > The kernel will initialize it after u-boot? > > No, the dts need to sync with Linux (atleast for sunxi), usually new > dts additions should go Linux first. It is sunxi/for-next queed up for 4.15 -antony
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index 5b90280..879ff24 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -335,6 +335,7 @@ dtb-$(CONFIG_MACH_SUN8I_V3S) += \ sun8i-v3s-licheepi-zero.dtb dtb-$(CONFIG_MACH_SUN50I_H5) += \ sun50i-h5-nanopi-neo2.dtb \ + sun50i-h5-nanopi-neo-plus2.dtb \ sun50i-h5-orangepi-pc2.dtb \ sun50i-h5-orangepi-prime.dtb \ sun50i-h5-orangepi-zero-plus2.dtb diff --git a/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts new file mode 100644 index 0000000..f1406c2 --- /dev/null +++ b/arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts @@ -0,0 +1,106 @@ +/* + * Copyright (C) 2017 Antony Antony <antony@phenome.org> + * Copyright (c) 2016 ARM Ltd. + * + * 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. + * + * 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 "sun50i-h5.dtsi" + +#include <dt-bindings/gpio/gpio.h> + +/ { + model = "FriendlyARM NanoPi NEO Plus 2"; + compatible = "friendlyarm,nanopi-neo-plus2", "allwinner,sun50i-h5"; + + aliases { + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + + reg_vcc3v3: vcc3v3 { + compatible = "regulator-fixed"; + regulator-name = "vcc3v3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; +}; + +&ehci1 { + status = "okay"; +}; + +&mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; + vmmc-supply = <®_vcc3v3>; + bus-width = <4>; + cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; + cd-inverted; + status = "okay"; +}; + +&mmc2 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc2_8bit_pins>; + vmmc-supply = <®_vcc3v3>; + bus-width = <8>; + non-removable; + cap-mmc-hw-reset; + status = "okay"; +}; + +&ohci1 { + status = "okay"; +}; + +&uart0 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pins_a>; + status = "okay"; +}; + +&usbphy { + status = "okay"; +}; diff --git a/configs/nanopi_neo_plus2_defconfig b/configs/nanopi_neo_plus2_defconfig new file mode 100644 index 0000000..83a8dff --- /dev/null +++ b/configs/nanopi_neo_plus2_defconfig @@ -0,0 +1,18 @@ +CONFIG_ARM=y +CONFIG_ARCH_SUNXI=y +CONFIG_MACH_SUN50I_H5=y +CONFIG_DRAM_CLK=408 +CONFIG_DRAM_ZQ=3881977 +CONFIG_MACPWR="PD6" +CONFIG_DEFAULT_DEVICE_TREE="sun50i-h5-nanopi-neo-plus2" +# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set +CONFIG_SPL=y +# CONFIG_CMD_IMLS is not set +# CONFIG_CMD_FLASH is not set +# CONFIG_CMD_FPGA is not set +# CONFIG_SPL_DOS_PARTITION is not set +# CONFIG_SPL_ISO_PARTITION is not set +# CONFIG_SPL_EFI_PARTITION is not set +CONFIG_SUN8I_EMAC=y +CONFIG_USB_EHCI_HCD=y +CONFIG_MMC_SUNXI_SLOT_EXTRA=2
Add initial DT for NanoPi NEO Plus2 by FriendlyARM - Allwinner quad core H5 Cortex A53 with an ARM Mali-450MP GPU - 1 GB DDR3 RAM - 8GB eMMC flash (Samsung KLM8G1WEPD-B031) - micro SD card slot - Gigabit Ethernet (external RTL8211E-VB-CG chip) - 802.11 b/g/n WiFi, Bluetooth 4.0 (Ampak AP6212A module) - 2x USB 2.0 host ports Signed-off-by: Antony Antony <antony@phenome.org> --- arch/arm/dts/Makefile | 1 + arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts | 106 ++++++++++++++++++++++++++++ configs/nanopi_neo_plus2_defconfig | 18 +++++ 3 files changed, 125 insertions(+) create mode 100644 arch/arm/dts/sun50i-h5-nanopi-neo-plus2.dts create mode 100644 configs/nanopi_neo_plus2_defconfig --- Changes v1->v2 removed memory {}, compatible ="allwinner,sun5i-a13-mmc" remove CONFIG_SPL_SPI_FLASH_SUPPORT=y and CONFIG_SPL_SPI_SUNXI=y (no SPI) remove CONFIG_SD_BOOT=y Changes v2->v3 removed compatible ="allwinner,sun50i-a64-mmc" Changes v3->v4 removed compatible from mmc0 add h5 & a64 compaitable to sun50i-h5.dtsi