New sunxi board: Lamobo Bananapi R1

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

New sunxi board: Lamobo Bananapi R1

fabioca
Please find patch below. I indicated as maintainer name Hans The Goede, as he his the maintainer of all other sunxi boards. Hope that was the correct thing to do.
Fabio

commit dacdf4dc3174ef1e86884c7d47700abad19b5bb3
Author: Fabio Cannizzo <Fabio_Cannizzo@yahoo.com>
Date:   Sun Jun 14 21:22:21 2015 +0800

    ARM: sun7i: Add config and dts file for Lamobo bananapi R1 board.
   
    The config file is a copy of the one for bananapi
   
    This dts file is an almost exact copy of the one for bananapi, except for the following differences:
    - changed the device name
    - overriden the value of PB3 to pull-up, to allow SATA to work with the standard u-boot parameters
    Perhaps soemone with more experience of dts files should create an include file with all common definitions.

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 9c735c6..a32d772 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -103,6 +103,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
  sun7i-a20-ainol-aw1.dtb \
  sun7i-a20-bananapi.dtb \
  sun7i-a20-bananapro.dtb \
+ sun7i-a20-bananapir1.dtb \
  sun7i-a20-cubieboard2.dtb \
  sun7i-a20-cubietruck.dtb \
  sun7i-a20-hummingbird.dtb \
diff --git a/arch/arm/dts/sun7i-a20-bananapir1.dts b/arch/arm/dts/sun7i-a20-bananapir1.dts
new file mode 100644
index 0000000..a77fb5c
--- /dev/null
+++ b/arch/arm/dts/sun7i-a20-bananapir1.dts
@@ -0,0 +1,231 @@
+/*
+ * Copyright 2014 Hans de Goede <hdegoede@redhat.com>
+ *
+ * Hans de Goede <hdegoede@redhat.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 file 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 file 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 "sun7i-a20.dtsi"
+#include "sunxi-common-regulators.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/pinctrl/sun4i-a10.h>
+
+/ {
+ model = "Lamobo Banana Pi R1";
+ compatible = "lemaker,bananapi", "allwinner,sun7i-a20";
+
+ aliases {
+ serial0 = &uart0;
+ serial1 = &uart3;
+ serial2 = &uart7;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+ pinctrl-0 = <&led_pins_bananapi>;
+
+ green {
+ label = "bananapi:green:usr";
+ gpios = <&pio 7 24 GPIO_ACTIVE_HIGH>;
+ };
+ };
+
+ reg_gmac_3v3: gmac-3v3 {
+ compatible = "regulator-fixed";
+ pinctrl-names = "default";
+ pinctrl-0 = <&gmac_power_pin_bananapi>;
+ regulator-name = "gmac-3v3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ startup-delay-us = <100000>;
+ enable-active-high;
+ gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>;
+ };
+};
+
+&ahci {
+ status = "okay";
+};
+
+&ehci0 {
+ status = "okay";
+};
+
+&ehci1 {
+ status = "okay";
+};
+
+&gmac {
+ pinctrl-names = "default";
+ pinctrl-0 = <&gmac_pins_rgmii_a>;
+ phy = <&phy1>;
+ phy-mode = "rgmii";
+ phy-supply = <®_gmac_3v3>;
+ status = "okay";
+
+ phy1: ethernet-phy@1 {
+ reg = <1>;
+ };
+};
+
+&i2c0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins_a>;
+ status = "okay";
+
+ axp209: pmic@34 {
+ compatible = "x-powers,axp209";
+ reg = <0x34>;
+ interrupt-parent = <&nmi_intc>;
+ interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ };
+};
+
+&i2c2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c2_pins_a>;
+ status = "okay";
+};
+
+&ir0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&ir0_rx_pins_a>;
+ status = "okay";
+};
+
+&mmc0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_bananapi>;
+ vmmc-supply = <®_vcc3v3>;
+ bus-width = <4>;
+ cd-gpios = <&pio 7 10 GPIO_ACTIVE_HIGH>; /* PH10 */
+ cd-inverted;
+ status = "okay";
+};
+
+&ohci0 {
+ status = "okay";
+};
+
+&ohci1 {
+ status = "okay";
+};
+
+&pio {
+ mmc0_cd_pin_bananapi: mmc0_cd_pin@0 {
+ allwinner,pins = "PH10";
+ allwinner,function = "gpio_in";
+ allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+ allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
+ };
+
+ gmac_power_pin_bananapi: gmac_power_pin@0 {
+ allwinner,pins = "PH23";
+ allwinner,function = "gpio_out";
+ allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+ };
+
+ led_pins_bananapi: led_pins@0 {
+ allwinner,pins = "PH24";
+ allwinner,function = "gpio_out";
+ allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+ };
+
+ ir0_tx_pins_a: ir0@1 {
+ allwinner,pins = "PB3";
+ allwinner,function = "ir0";
+ allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+ allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
+ };
+
+};
+
+®_usb1_vbus {
+ status = "okay";
+};
+
+®_usb2_vbus {
+ status = "okay";
+};
+
+&spi0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi0_pins_a>,
+    <&spi0_cs0_pins_a>,
+    <&spi0_cs1_pins_a>;
+ status = "okay";
+};
+
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pins_a>;
+ status = "okay";
+};
+
+&uart3 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart3_pins_b>;
+ status = "okay";
+};
+
+&uart7 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart7_pins_a>;
+ status = "okay";
+};
+
+&usbphy {
+ usb1_vbus-supply = <®_usb1_vbus>;
+ usb2_vbus-supply = <®_usb2_vbus>;
+ status = "okay";
+};
diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS
index 7a42055..abf2c1c 100644
--- a/board/sunxi/MAINTAINERS
+++ b/board/sunxi/MAINTAINERS
@@ -30,6 +30,7 @@ F: include/configs/sun7i.h
 F: configs/A20-OLinuXino_MICRO_defconfig
 F: configs/Bananapi_defconfig
 F: configs/Bananapro_defconfig
+F: configs/Bananapir1_defconfig
 F: configs/i12-tvbox_defconfig
 F: configs/Linksprite_pcDuino3_defconfig
 F: configs/Linksprite_pcDuino3_fdt_defconfig
diff --git a/configs/Bananapir1_defconfig b/configs/Bananapir1_defconfig
new file mode 100644
index 0000000..bf665e7
--- /dev/null
+++ b/configs/Bananapir1_defconfig
@@ -0,0 +1,9 @@
+CONFIG_ARM=y
+CONFIG_ARCH_SUNXI=y
+CONFIG_MACH_SUN7I=y
+CONFIG_DRAM_CLK=432
+CONFIG_GMAC_TX_DELAY=3
+CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-bananapir1"
+CONFIG_SPL=y
+CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER,SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI,USB_EHCI"
+CONFIG_ETH_DESIGNWARE=y
Reply | Threaded
Open this post in threaded view
|

Re: New sunxi board: Lamobo Bananapi R1

fabioca
I just realised the web site allows to attach files, which is way more convenient than copy and paste! Apology for the duplicate message.

0001-lamobo-bpi-r1.patch
Reply | Threaded
Open this post in threaded view
|

Re: New sunxi board: Lamobo Bananapi R1

Hans de Goede
In reply to this post by fabioca
Hi Fabioca,

On 15-06-15 15:17, fabioca wrote:
> Please find patch below. I indicated as maintainer name Hans The Goede, as he
> his the maintainer of all other sunxi boards. Hope that was the correct
> thing to do.

For the next version of this patch please set the MAINTAINERS entry to
yourself, I do not have such a board so I cannot maintain it.

> Fabio
>
> commit dacdf4dc3174ef1e86884c7d47700abad19b5bb3
> Author: Fabio Cannizzo <[hidden email]>
> Date:   Sun Jun 14 21:22:21 2015 +0800
>
>      ARM: sun7i: Add config and dts file for Lamobo bananapi R1 board.
>
>      The config file is a copy of the one for bananapi
>
>      This dts file is an almost exact copy of the one for bananapi, except
> for the following differences:
>      - changed the device name
>      - overriden the value of PB3 to pull-up, to allow SATA to work with the
> standard u-boot parameters
>      Perhaps soemone with more experience of dts files should create an
> include file with all common definitions.

Have you submitted the dts file for inclusion into the upstream kernel already?

Also please change the name to not use bananapi in imt, the bananaFOO boards
are made by lemaker.org and this is not a lemaker board, the print on the board
itself calls it the lamobo-rq, as does the linux-sunxi community page and
the lamobo page:

http://linux-sunxi.org/Lamobo_R1
http://www.lamobo.com/lamobor.html

So please call the defconfig Lamobo_R1_defconfig and the dts file
sun7i-a20-lamobo-r1.dts

And set the model and compatible fields in the dts
accordingly.

Also I understand that a CONFIG_GMAC_TX_DELAY=4 may be better
for this board, have you tested this ?

Regards,

Hans




> ---
> View this message in context: http://u-boot.10912.n7.nabble.com/New-sunxi-board-Lamobo-Bananapi-R1-tp217120.html
> Sent from the U-Boot mailing list archive at Nabble.com.
>
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index 9c735c6..a32d772 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -103,6 +103,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
>   sun7i-a20-ainol-aw1.dtb \
>   sun7i-a20-bananapi.dtb \
>   sun7i-a20-bananapro.dtb \
> + sun7i-a20-bananapir1.dtb \
>   sun7i-a20-cubieboard2.dtb \
>   sun7i-a20-cubietruck.dtb \
>   sun7i-a20-hummingbird.dtb \
> diff --git a/arch/arm/dts/sun7i-a20-bananapir1.dts
> b/arch/arm/dts/sun7i-a20-bananapir1.dts
> new file mode 100644
> index 0000000..a77fb5c
> --- /dev/null
> +++ b/arch/arm/dts/sun7i-a20-bananapir1.dts
> @@ -0,0 +1,231 @@
> +/*
> + * Copyright 2014 Hans de Goede <[hidden email]>
> + *
> + * Hans de Goede <[hidden email]>
> + *
> + * 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 file 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 file 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 "sun7i-a20.dtsi"
> +#include "sunxi-common-regulators.dtsi"
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/pinctrl/sun4i-a10.h>
> +
> +/ {
> + model = "Lamobo Banana Pi R1";
> + compatible = "lemaker,bananapi", "allwinner,sun7i-a20";
> +
> + aliases {
> + serial0 = &uart0;
> + serial1 = &uart3;
> + serial2 = &uart7;
> + };
> +
> + chosen {
> + stdout-path = "serial0:115200n8";
> + };
> +
> + leds {
> + compatible = "gpio-leds";
> + pinctrl-names = "default";
> + pinctrl-0 = <&led_pins_bananapi>;
> +
> + green {
> + label = "bananapi:green:usr";
> + gpios = <&pio 7 24 GPIO_ACTIVE_HIGH>;
> + };
> + };
> +
> + reg_gmac_3v3: gmac-3v3 {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&gmac_power_pin_bananapi>;
> + regulator-name = "gmac-3v3";
> + regulator-min-microvolt = <3300000>;
> + regulator-max-microvolt = <3300000>;
> + startup-delay-us = <100000>;
> + enable-active-high;
> + gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>;
> + };
> +};
> +
> +&ahci {
> + status = "okay";
> +};
> +
> +&ehci0 {
> + status = "okay";
> +};
> +
> +&ehci1 {
> + status = "okay";
> +};
> +
> +&gmac {
> + pinctrl-names = "default";
> + pinctrl-0 = <&gmac_pins_rgmii_a>;
> + phy = <&phy1>;
> + phy-mode = "rgmii";
> + phy-supply = <&reg_gmac_3v3>;
> + status = "okay";
> +
> + phy1: ethernet-phy@1 {
> + reg = <1>;
> + };
> +};
> +
> +&i2c0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&i2c0_pins_a>;
> + status = "okay";
> +
> + axp209: pmic@34 {
> + compatible = "x-powers,axp209";
> + reg = <0x34>;
> + interrupt-parent = <&nmi_intc>;
> + interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
> +
> + interrupt-controller;
> + #interrupt-cells = <1>;
> + };
> +};
> +
> +&i2c2 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&i2c2_pins_a>;
> + status = "okay";
> +};
> +
> +&ir0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&ir0_rx_pins_a>;
> + status = "okay";
> +};
> +
> +&mmc0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_bananapi>;
> + vmmc-supply = <&reg_vcc3v3>;
> + bus-width = <4>;
> + cd-gpios = <&pio 7 10 GPIO_ACTIVE_HIGH>; /* PH10 */
> + cd-inverted;
> + status = "okay";
> +};
> +
> +&ohci0 {
> + status = "okay";
> +};
> +
> +&ohci1 {
> + status = "okay";
> +};
> +
> +&pio {
> + mmc0_cd_pin_bananapi: mmc0_cd_pin@0 {
> + allwinner,pins = "PH10";
> + allwinner,function = "gpio_in";
> + allwinner,drive = <SUN4I_PINCTRL_10_MA>;
> + allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
> + };
> +
> + gmac_power_pin_bananapi: gmac_power_pin@0 {
> + allwinner,pins = "PH23";
> + allwinner,function = "gpio_out";
> + allwinner,drive = <SUN4I_PINCTRL_10_MA>;
> + allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
> + };
> +
> + led_pins_bananapi: led_pins@0 {
> + allwinner,pins = "PH24";
> + allwinner,function = "gpio_out";
> + allwinner,drive = <SUN4I_PINCTRL_10_MA>;
> + allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
> + };
> +
> + ir0_tx_pins_a: ir0@1 {
> + allwinner,pins = "PB3";
> + allwinner,function = "ir0";
> + allwinner,drive = <SUN4I_PINCTRL_10_MA>;
> + allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
> + };
> +
> +};
> +
> +&reg_usb1_vbus {
> + status = "okay";
> +};
> +
> +&reg_usb2_vbus {
> + status = "okay";
> +};
> +
> +&spi0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&spi0_pins_a>,
> +    <&spi0_cs0_pins_a>,
> +    <&spi0_cs1_pins_a>;
> + status = "okay";
> +};
> +
> +&uart0 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart0_pins_a>;
> + status = "okay";
> +};
> +
> +&uart3 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart3_pins_b>;
> + status = "okay";
> +};
> +
> +&uart7 {
> + pinctrl-names = "default";
> + pinctrl-0 = <&uart7_pins_a>;
> + status = "okay";
> +};
> +
> +&usbphy {
> + usb1_vbus-supply = <&reg_usb1_vbus>;
> + usb2_vbus-supply = <&reg_usb2_vbus>;
> + status = "okay";
> +};
> diff --git a/board/sunxi/MAINTAINERS b/board/sunxi/MAINTAINERS
> index 7a42055..abf2c1c 100644
> --- a/board/sunxi/MAINTAINERS
> +++ b/board/sunxi/MAINTAINERS
> @@ -30,6 +30,7 @@ F: include/configs/sun7i.h
>   F: configs/A20-OLinuXino_MICRO_defconfig
>   F: configs/Bananapi_defconfig
>   F: configs/Bananapro_defconfig
> +F: configs/Bananapir1_defconfig
>   F: configs/i12-tvbox_defconfig
>   F: configs/Linksprite_pcDuino3_defconfig
>   F: configs/Linksprite_pcDuino3_fdt_defconfig
> diff --git a/configs/Bananapir1_defconfig b/configs/Bananapir1_defconfig
> new file mode 100644
> index 0000000..bf665e7
> --- /dev/null
> +++ b/configs/Bananapir1_defconfig
> @@ -0,0 +1,9 @@
> +CONFIG_ARM=y
> +CONFIG_ARCH_SUNXI=y
> +CONFIG_MACH_SUN7I=y
> +CONFIG_DRAM_CLK=432
> +CONFIG_GMAC_TX_DELAY=3
> +CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-bananapir1"
> +CONFIG_SPL=y
> +CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER,SUNXI_GMAC,RGMII,MACPWR=SUNXI_GPH(23),AHCI,USB_EHCI"
> +CONFIG_ETH_DESIGNWARE=y
>
_______________________________________________
U-Boot mailing list
[hidden email]
http://lists.denx.de/mailman/listinfo/u-boot