[U-Boot] [PATCH] socfpga: add support for Terasic DE1-SoC board

Marek Vasut marex at denx.de
Mon Nov 14 15:07:31 CET 2016


On 11/14/2016 02:53 PM, Anatolij Gustschin wrote:
> Add CycloneV based Terasic DE1-SoC board. The board boots
> from SD/MMC. Ethernet and USB host is supported.
> 
> Signed-off-by: Anatolij Gustschin <agust at denx.de>
> Cc: Marek Vasut <marex at denx.de>

[...]

> diff --git a/include/configs/socfpga_de1_soc.h b/include/configs/socfpga_de1_soc.h
> new file mode 100644
> index 0000000..9514b27
> --- /dev/null
> +++ b/include/configs/socfpga_de1_soc.h
> @@ -0,0 +1,60 @@
> +/*
> + * Copyright (C) 2016 Marek Vasut <marex at denx.de>
> + *
> + * SPDX-License-Identifier:	GPL-2.0+
> + */
> +#ifndef __CONFIG_TERASIC_DE1_SOC_H__
> +#define __CONFIG_TERASIC_DE1_SOC_H__
> +
> +#include <asm/arch/base_addr_ac5.h>
> +
> +/* U-Boot Commands */
> +#define CONFIG_SYS_NO_FLASH
> +#define CONFIG_DOS_PARTITION
> +#define CONFIG_FAT_WRITE
> +#define CONFIG_HW_WATCHDOG
> +
> +/* Memory configurations */
> +#define PHYS_SDRAM_1_SIZE		0x40000000	/* 1GiB */
> +
> +/* Booting Linux */
> +#define CONFIG_BOOTFILE		"fitImage"
> +#define CONFIG_BOOTARGS		"console=ttyS0," __stringify(CONFIG_BAUDRATE)
> +#define CONFIG_BOOTCOMMAND	"run mmcload; run mmcboot"
> +#define CONFIG_LOADADDR		0x01000000
> +#define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR
> +
> +/* Ethernet on SoC (EMAC) */
> +#if defined(CONFIG_CMD_NET)
> +#define CONFIG_PHY_MICREL
> +#define CONFIG_PHY_MICREL_KSZ9021
> +#endif
> +
> +#define CONFIG_ENV_IS_IN_MMC
> +
> +/* Extra Environment */
> +#define CONFIG_EXTRA_ENV_SETTINGS \
> +	"loadaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
> +	"ramboot=setenv bootargs " CONFIG_BOOTARGS ";" \
> +		"bootm ${loadaddr} - ${fdtaddr}\0" \
> +	"bootimage=zImage\0" \
> +	"fdtaddr=100\0" \
> +	"fdtimage=socfpga.dtb\0" \
> +	"bootm ${loadaddr} - ${fdtaddr}\0" \
> +	"mmcroot=/dev/mmcblk0p2\0" \
> +	"mmcboot=setenv bootargs " CONFIG_BOOTARGS \
> +		" root=${mmcroot} rw rootwait;" \
> +		"bootz ${loadaddr} - ${fdtaddr}\0" \
> +	"mmcload=mmc rescan;" \
> +		"load mmc 0:1 ${loadaddr} ${bootimage};" \
> +		"load mmc 0:1 ${fdtaddr} ${fdtimage}\0" \
> +
> +/* The rest of the configuration is shared */
> +#include <configs/socfpga_common.h>
> +
> +#undef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION
> +#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION	2

Why is this needed ? Just start U-Boot from partition 1 as all the other
SoCFPGAs do , esp. since this is a devkit, please keep it consistent.

Looks great otherwise :)

> +#define CONFIG_SPL_ABORT_ON_RAW_IMAGE
> +
> +#endif	/* __CONFIG_TERASIC_DE1_SOC_H__ */
> 


-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list