[U-Boot] [PATCH 1/1] sunxi: add Linksprite pcDuino v1/v2 support

Hans de Goede hdegoede at redhat.com
Tue Jan 6 11:23:44 CET 2015


Hi,

On 06-01-15 01:09, Zoltan HERPAI wrote:
> Add support for a sun4i board built by Linksprite. This addition covers
> both v1 and v2 versions. As the board has been working with 408MHz memory
> setting in the u-boot-sunxi branch, and has been proven to be running stable
> during my tests as well, a respective new DRAM config file is added as well.
>
> Signed-off-by: Zoltan HERPAI <wigyori at uid0.hu>

Thanks, before that I apply this, are you sure that v1 and v2 are similar
enough that we only need one config for them ? I'm asking because even if
they are similar enough from a u-boot pov, they still need a separate
defconfig if they need a separate dts.

It seems that v2 just swaps one usb port for a usb-wifi module, which
does not require dts changes. So this seems ok, and we can also add a
configs/Linksprite_pcDuino_v2_defconfig later I guess.

Also talking about the dts, I notice that the dts for the pcDuino_v3
has support for the gpio buttons found there, but the plain pcDuino
dts does not even though the v1 / v2 clearly have the gpio buttons too,
can you add support for those to the dts ? And the same question for
any leds which they may have (hard to see on pictures). This is also
a good check to see if they are really 100% compatible :)

Regards,

Hans


> ---
>   board/sunxi/Kconfig                    |    4 ++++
>   board/sunxi/Makefile                   |    1 +
>   board/sunxi/dram_sun4i_408_1024_iow8.c |   31 +++++++++++++++++++++++++++++++
>   configs/Linksprite_pcDuino_defconfig   |    7 +++++++
>   4 files changed, 43 insertions(+)
>   create mode 100644 board/sunxi/dram_sun4i_408_1024_iow8.c
>   create mode 100644 configs/Linksprite_pcDuino_defconfig
>
> diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
> index 246cd9a..ccf583f 100644
> --- a/board/sunxi/Kconfig
> +++ b/board/sunxi/Kconfig
> @@ -99,6 +99,10 @@ config TARGET_IPPO_Q8H_V5
>   	bool "IPPO_Q8H_V5"
>   	depends on MACH_SUN8I
>
> +config TARGET_PCDUINO
> +	bool "PCDUINO"
> +	depends on MACH_SUN4I
> +
>   config TARGET_PCDUINO3
>   	bool "PCDUINO3"
>   	depends on MACH_SUN7I
> diff --git a/board/sunxi/Makefile b/board/sunxi/Makefile
> index b84ff9b..c947b09 100644
> --- a/board/sunxi/Makefile
> +++ b/board/sunxi/Makefile
> @@ -31,6 +31,7 @@ obj-$(CONFIG_TARGET_MELE_A1000G)	+= dram_sun4i_360_1024_iow8.o
>   obj-$(CONFIG_TARGET_MELE_M3)		+= dram_sun7i_384_1024_iow16.o
>   obj-$(CONFIG_TARGET_MINI_X)		+= dram_sun4i_360_512.o
>   obj-$(CONFIG_TARGET_MINI_X_1GB)		+= dram_sun4i_360_1024_iow16.o
> +obj-$(CONFIG_TARGET_PCDUINO)		+= dram_sun4i_408_1024_iow8.o
>   obj-$(CONFIG_TARGET_PCDUINO3)		+= dram_linksprite_pcduino3.o
>   obj-$(CONFIG_TARGET_QT840A)		+= dram_sun7i_384_512_busw16_iow16.o
>   obj-$(CONFIG_TARGET_R7DONGLE)		+= dram_r7dongle.o
> diff --git a/board/sunxi/dram_sun4i_408_1024_iow8.c b/board/sunxi/dram_sun4i_408_1024_iow8.c
> new file mode 100644
> index 0000000..c6d87d2
> --- /dev/null
> +++ b/board/sunxi/dram_sun4i_408_1024_iow8.c
> @@ -0,0 +1,31 @@
> +/* this file is generated, don't edit it yourself */
> +
> +#include <common.h>
> +#include <asm/arch/dram.h>
> +
> +static struct dram_para dram_para = {
> +	.clock = 408,
> +	.type = 3,
> +	.rank_num = 1,
> +	.density = 2048,
> +	.io_width = 8,
> +	.bus_width = 32,
> +	.cas = 6,
> +	.zq = 123,
> +	.odt_en = 0,
> +	.size = 1024,
> +	.tpr0 = 0x30926692,
> +	.tpr1 = 0x1090,
> +	.tpr2 = 0x1a0c8,
> +	.tpr3 = 0,
> +	.tpr4 = 0,
> +	.tpr5 = 0,
> +	.emr1 = 0,
> +	.emr2 = 0,
> +	.emr3 = 0,
> +};
> +
> +unsigned long sunxi_dram_init(void)
> +{
> +	return dramc_init(&dram_para);
> +}
> diff --git a/configs/Linksprite_pcDuino_defconfig b/configs/Linksprite_pcDuino_defconfig
> new file mode 100644
> index 0000000..f5b0ca9
> --- /dev/null
> +++ b/configs/Linksprite_pcDuino_defconfig
> @@ -0,0 +1,7 @@
> +CONFIG_SPL=y
> +CONFIG_SYS_EXTRA_OPTIONS="AXP209_POWER,SUNXI_EMAC,USB_EHCI"
> +CONFIG_FDTFILE="sun4i-a10-pcduino.dtb"
> ++S:CONFIG_ARM=y
> ++S:CONFIG_ARCH_SUNXI=y
> ++S:CONFIG_MACH_SUN4I=y
> ++S:CONFIG_TARGET_PCDUINO=y
>


More information about the U-Boot mailing list