[U-Boot] [PATCH v4 1/8] arm: socfpga: Add distro boot to socfpga common header

Frank Kunz mailinglists at kunz-im-inter.net
Sun Mar 5 10:42:51 UTC 2017


Am 19.02.2017 um 21:20 schrieb Dalon Westergreen:
> This adds a common environment and support for distro boot
> in the common socfpga header.
> 
> Signed-off-by: Dalon Westergreen <dwesterg at gmail.com>
> Acked-by: Marek Vasut <marex at denx.de>
> 
> --
> Changes in v4:
>  - Move env back to being right after the MBR
> Changes in v3:
>  - fix spacing between asterix
>  - remove verify=n as a default setting
> 
> Changes in v2:
>  - Remove unneeded CONFIG_BOOTFILE and fdt_addr
>  - cleanup spacing in MMC env size
> ---
>  include/configs/socfpga_common.h | 52 ++++++++++++++++++++++++++++++++++++----
>  1 file changed, 48 insertions(+), 4 deletions(-)
> 
> diff --git a/include/configs/socfpga_common.h b/include/configs/socfpga_common.h
> index 582b04a..55e0bf9 100644
> --- a/include/configs/socfpga_common.h
> +++ b/include/configs/socfpga_common.h
> @@ -67,6 +67,9 @@
>  #define CONFIG_SYS_HOSTNAME	CONFIG_SYS_BOARD
>  #endif
>  
> +#define CONFIG_CMD_PXE
> +#define CONFIG_MENU
> +
>  /*
>   * Cache
>   */
> @@ -245,13 +248,13 @@ unsigned int cm_get_qspi_controller_clk_hz(void);
>   * U-Boot environment
>   */
>  #if !defined(CONFIG_ENV_SIZE)
> -#define CONFIG_ENV_SIZE			4096
> +#define CONFIG_ENV_SIZE			(8 * 1024)
>  #endif
>  
>  /* Environment for SDMMC boot */
>  #if defined(CONFIG_ENV_IS_IN_MMC) && !defined(CONFIG_ENV_OFFSET)
> -#define CONFIG_SYS_MMC_ENV_DEV		0	/* device 0 */
> -#define CONFIG_ENV_OFFSET		512	/* just after the MBR */
> +#define CONFIG_SYS_MMC_ENV_DEV		0 /* device 0 */
> +#define CONFIG_ENV_OFFSET		512 /* just after the MBR */

That will cause a conflict on distributions that use GPT. I added
DE0-nano-SoC to openSUSE by using EFI boot which uses GPT. There this
will fail.

>  #endif
>  
>  /* Environment for QSPI boot */
> @@ -308,8 +311,12 @@ unsigned int cm_get_qspi_controller_clk_hz(void);
>  /* SPL SDMMC boot support */
>  #ifdef CONFIG_SPL_MMC_SUPPORT
>  #if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT)
> -#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION	2
>  #define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME		"u-boot-dtb.img"
> +#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION	1
> +#endif
> +#else
> +#ifndef CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION
> +#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION	1
>  #endif
>  #endif
>  
> @@ -331,4 +338,41 @@ unsigned int cm_get_qspi_controller_clk_hz(void);
>   */
>  #define CONFIG_SPL_STACK		CONFIG_SYS_INIT_SP_ADDR
>  
> +/* Extra Environment */
> +#ifndef CONFIG_SPL_BUILD
> +#include <config_distro_defaults.h>
> +
> +#ifdef CONFIG_CMD_PXE
> +#define BOOT_TARGET_DEVICES_PXE(func) func(PXE, pxe, na)
> +#else
> +#define BOOT_TARGET_DEVICES_PXE(func)
> +#endif
> +
> +#ifdef CONFIG_CMD_MMC
> +#define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0)
> +#else
> +#define BOOT_TARGET_DEVICES_MMC(func)
> +#endif
> +
> +#define BOOT_TARGET_DEVICES(func) \
> +	BOOT_TARGET_DEVICES_MMC(func) \
> +	BOOT_TARGET_DEVICES_PXE(func) \
> +	func(DHCP, dhcp, na)
> +
> +#include <config_distro_bootcmd.h>
> +
> +#ifndef CONFIG_EXTRA_ENV_SETTINGS
> +#define CONFIG_EXTRA_ENV_SETTINGS \
> +	"fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0" \
> +	"bootm_size=0xa000000\0" \
> +	"kernel_addr_r="__stringify(CONFIG_SYS_LOAD_ADDR)"\0" \
> +	"fdt_addr_r=0x02000000\0" \
> +	"scriptaddr=0x02100000\0" \
> +	"pxefile_addr_r=0x02200000\0" \
> +	"ramdisk_addr_r=0x02300000\0" \
> +	BOOTENV
> +
> +#endif
> +#endif
> +
>  #endif	/* __CONFIG_SOCFPGA_COMMON_H__ */
> 



More information about the U-Boot mailing list