mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-16 01:44:34 +00:00
board: gateworks: venice: dynamically determine U-Boot raw sector
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR needs to adjust for IMX8MN and IMX8MP when booting from an eMMC boot partition due to IMX BOOTROM v2 using an SPL offset of 0 for boot partitions and 32K for the user partition. In order to allow the same firmware to run on both user and boot hardware partitions adjust raw_sect dynamically at runtime. Signed-off-by: Tim Harvey <tharvey@gateworks.com>
This commit is contained in:
parent
c226f84256
commit
8236c05ddb
1 changed files with 15 additions and 0 deletions
|
@ -327,6 +327,21 @@ int spl_board_boot_device(enum boot_device boot_dev_spl)
|
|||
}
|
||||
}
|
||||
|
||||
unsigned long spl_mmc_get_uboot_raw_sector(struct mmc *mmc, unsigned long raw_sect)
|
||||
{
|
||||
if (!IS_SD(mmc)) {
|
||||
switch (EXT_CSD_EXTRACT_BOOT_PART(mmc->part_config)) {
|
||||
case 1:
|
||||
case 2:
|
||||
if (IS_ENABLED(CONFIG_IMX8MN) || IS_ENABLED(CONFIG_IMX8MP))
|
||||
raw_sect -= 32 * 2;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return raw_sect;
|
||||
}
|
||||
|
||||
const char *spl_board_loader_name(u32 boot_device)
|
||||
{
|
||||
switch (boot_device) {
|
||||
|
|
Loading…
Add table
Reference in a new issue