mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-06-26 00:21:37 +00:00
arm: socfpga: spl: Add support for booting from SD/MMC
Add code and configuration options to support booting from RAW SD/MMC card as well as for ext4/vfat filesystems. Enable support for booting from SD/MMC card, but don't enable the filesystem support just yet to retain compatibility with old SoCFPGA card format. Signed-off-by: Marek Vasut <marex@denx.de>
This commit is contained in:
parent
1d8c939391
commit
d3f34e752d
5 changed files with 37 additions and 1 deletions
|
@ -31,9 +31,26 @@ static struct nic301_registers *nic301_regs =
|
||||||
|
|
||||||
u32 spl_boot_device(void)
|
u32 spl_boot_device(void)
|
||||||
{
|
{
|
||||||
|
#ifdef CONFIG_SPL_MMC_SUPPORT
|
||||||
|
socfpga_per_reset(SOCFPGA_RESET(SDMMC), 0);
|
||||||
|
socfpga_per_reset(SOCFPGA_RESET(DMA), 0);
|
||||||
|
return BOOT_DEVICE_MMC1;
|
||||||
|
#else
|
||||||
return BOOT_DEVICE_RAM;
|
return BOOT_DEVICE_RAM;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_SPL_MMC_SUPPORT
|
||||||
|
u32 spl_boot_mode(void)
|
||||||
|
{
|
||||||
|
#if defined(CONFIG_SPL_FAT_SUPPORT) || defined(CONFIG_SPL_EXT_SUPPORT)
|
||||||
|
return MMCSD_MODE_FS;
|
||||||
|
#else
|
||||||
|
return MMCSD_MODE_RAW;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static void socfpga_nic301_slave_ns(void)
|
static void socfpga_nic301_slave_ns(void)
|
||||||
{
|
{
|
||||||
writel(0x1, &nic301_regs->lwhps2fpgaregs);
|
writel(0x1, &nic301_regs->lwhps2fpgaregs);
|
||||||
|
|
|
@ -7,3 +7,5 @@ CONFIG_SPL=y
|
||||||
# CONFIG_CMD_FLASH is not set
|
# CONFIG_CMD_FLASH is not set
|
||||||
CONFIG_OF_CONTROL=y
|
CONFIG_OF_CONTROL=y
|
||||||
CONFIG_SPI_FLASH=y
|
CONFIG_SPI_FLASH=y
|
||||||
|
CONFIG_SPL_DM=y
|
||||||
|
CONFIG_SPL_MMC_SUPPORT=y
|
||||||
|
|
|
@ -9,3 +9,5 @@ CONFIG_OF_CONTROL=y
|
||||||
CONFIG_SPI_FLASH=y
|
CONFIG_SPI_FLASH=y
|
||||||
CONFIG_NETDEVICES=y
|
CONFIG_NETDEVICES=y
|
||||||
CONFIG_ETH_DESIGNWARE=y
|
CONFIG_ETH_DESIGNWARE=y
|
||||||
|
CONFIG_SPL_DM=y
|
||||||
|
CONFIG_SPL_MMC_SUPPORT=y
|
||||||
|
|
|
@ -6,7 +6,8 @@ CONFIG_SPL=y
|
||||||
# CONFIG_CMD_IMLS is not set
|
# CONFIG_CMD_IMLS is not set
|
||||||
# CONFIG_CMD_FLASH is not set
|
# CONFIG_CMD_FLASH is not set
|
||||||
CONFIG_OF_CONTROL=y
|
CONFIG_OF_CONTROL=y
|
||||||
CONFIG_SPL_DISABLE_OF_CONTROL=y
|
|
||||||
CONFIG_SPI_FLASH=y
|
CONFIG_SPI_FLASH=y
|
||||||
CONFIG_NETDEVICES=y
|
CONFIG_NETDEVICES=y
|
||||||
CONFIG_ETH_DESIGNWARE=y
|
CONFIG_ETH_DESIGNWARE=y
|
||||||
|
CONFIG_SPL_DM=y
|
||||||
|
CONFIG_SPL_MMC_SUPPORT=y
|
||||||
|
|
|
@ -300,6 +300,20 @@ unsigned int cm_get_qspi_controller_clk_hz(void);
|
||||||
#define CONFIG_SPL_LIBGENERIC_SUPPORT
|
#define CONFIG_SPL_LIBGENERIC_SUPPORT
|
||||||
#define CONFIG_SPL_WATCHDOG_SUPPORT
|
#define CONFIG_SPL_WATCHDOG_SUPPORT
|
||||||
#define CONFIG_SPL_SERIAL_SUPPORT
|
#define CONFIG_SPL_SERIAL_SUPPORT
|
||||||
|
#define CONFIG_SPL_MMC_SUPPORT
|
||||||
|
|
||||||
|
/* 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_SPL_LIBDISK_SUPPORT
|
||||||
|
#else
|
||||||
|
#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 3
|
||||||
|
#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xa00 /* offset 2560 sect (1M+256k) */
|
||||||
|
#define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 800 /* 400 KB */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Stack setup
|
* Stack setup
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue