[PATCH 3/4] ARM: sunxi: Add sun4i and cubieboard support
Maxime Ripard
maxime.ripard at free-electrons.com
Mon Nov 19 10:22:45 EST 2012
Le 19/11/2012 12:09, Stefan Roese a écrit :
> This patch adds support for the Cubieboard based on the Allwinner
> A10/sun4i SoC. Currently only UART is supported. Other devices
> will eventually follow.
>
> Signed-off-by: Stefan Roese <sr at denx.de>
> Cc: Maxime Ripard <maxime.ripard at free-electrons.com>
> Cc: Arnd Bergmann <arnd at arndb.de>
> ---
> arch/arm/boot/dts/Makefile | 3 ++-
> arch/arm/boot/dts/sun4i-cubieboard.dts | 38 ++++++++++++++++++++++++++++++++++
> arch/arm/boot/dts/sunxi.dtsi | 9 ++++++++
> arch/arm/mach-sunxi/sunxi.c | 1 +
> 4 files changed, 50 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm/boot/dts/sun4i-cubieboard.dts
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 9b2d3f0..4dd567b 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -84,7 +84,8 @@ dtb-$(CONFIG_ARCH_SPEAR3XX)+= spear300-evb.dtb \
> spear310-evb.dtb \
> spear320-evb.dtb
> dtb-$(CONFIG_ARCH_SPEAR6XX)+= spear600-evb.dtb
> -dtb-$(CONFIG_ARCH_SUNXI) += sun5i-olinuxino.dtb
> +dtb-$(CONFIG_ARCH_SUNXI) += sun4i-cubieboard.dtb \
> + sun5i-olinuxino.dtb
> dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \
> tegra20-medcom-wide.dtb \
> tegra20-paz00.dtb \
> diff --git a/arch/arm/boot/dts/sun4i-cubieboard.dts b/arch/arm/boot/dts/sun4i-cubieboard.dts
> new file mode 100644
> index 0000000..f4ca126
> --- /dev/null
> +++ b/arch/arm/boot/dts/sun4i-cubieboard.dts
> @@ -0,0 +1,38 @@
> +/*
> + * Copyright 2012 Stefan Roese
> + * Stefan Roese <sr at denx.de>
> + *
> + * The code contained herein is licensed under the GNU General Public
> + * License. You may obtain a copy of the GNU General Public License
> + * Version 2 or later at the following locations:
> + *
> + * http://www.opensource.org/licenses/gpl-license.html
> + * http://www.gnu.org/copyleft/gpl.html
> + */
> +
> +/dts-v1/;
> +/include/ "sun4i.dtsi"
> +
> +/ {
> + model = "Cubietech Cubieboard";
> + compatible = "cubietech,cubieboard", "allwinner,sun4i";
> +
> + aliases {
> + serial0 = &uart0;
> + serial1 = &uart1;
> + };
> +
> + chosen {
> + bootargs = "earlyprintk console=ttyS0,115200";
> + };
> +
> + soc {
> + uart0: uart at 01c28000 {
> + status = "okay";
> + };
> +
> + uart1: uart at 01c28400 {
> + status = "okay";
> + };
> + };
> +};
> diff --git a/arch/arm/boot/dts/sunxi.dtsi b/arch/arm/boot/dts/sunxi.dtsi
> index 9e476de..8284fbd 100644
> --- a/arch/arm/boot/dts/sunxi.dtsi
> +++ b/arch/arm/boot/dts/sunxi.dtsi
> @@ -54,6 +54,15 @@
> #interrupt-cells = <1>;
> };
>
> + uart0: uart at 01c28000 {
> + compatible = "ns8250";
> + reg = <0x01c28000 0x400>;
> + interrupts = <1>;
> + reg-shift = <2>;
> + clock-frequency = <24000000>;
> + status = "disabled";
> + };
> +
> uart1: uart at 01c28400 {
> compatible = "ns8250";
> reg = <0x01c28400 0x400>;
> diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c
> index 8f42df8..13d4d96 100644
> --- a/arch/arm/mach-sunxi/sunxi.c
> +++ b/arch/arm/mach-sunxi/sunxi.c
> @@ -46,6 +46,7 @@ static void __init sunxi_dt_init(void)
> }
>
> static const char * const sunxi_board_dt_compat[] = {
> + "allwinner,sun4i",
> "allwinner,sun5i",
> NULL,
> };
>
Applied, thanks!
Maxime
--
Maxime Ripard, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the linux-arm-kernel
mailing list