disk: add TegraPT support
TegraPT is compatible with EFI part but it can't pass Protective MBR check. Skip this check if CONFIG_TEGRA_PARTITION is enabled, storage uclass is MMC and devnum is 0. Note, eMMC on supported devices MUST be aliased to mmc0. Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
This commit is contained in:
10
disk/Kconfig
10
disk/Kconfig
@@ -49,6 +49,16 @@ config SPL_MAC_PARTITION
|
|||||||
default y if MAC_PARTITION
|
default y if MAC_PARTITION
|
||||||
select SPL_PARTITIONS
|
select SPL_PARTITIONS
|
||||||
|
|
||||||
|
config TEGRA_PARTITION
|
||||||
|
bool "Enable Nvidia Tegra partition table"
|
||||||
|
select PARTITIONS
|
||||||
|
select EFI_PARTITION
|
||||||
|
help
|
||||||
|
Say Y here if you would like to use U-Boot on a device that
|
||||||
|
is using the Nvidia Tegra partition table and cannot alter it.
|
||||||
|
|
||||||
|
If unsure, say N.
|
||||||
|
|
||||||
config DOS_PARTITION
|
config DOS_PARTITION
|
||||||
bool "Enable MS Dos partition table"
|
bool "Enable MS Dos partition table"
|
||||||
default y if BOOT_DEFAULTS
|
default y if BOOT_DEFAULTS
|
||||||
|
@@ -318,6 +318,19 @@ static int part_test_efi(struct blk_desc *desc)
|
|||||||
/* Read legacy MBR from block 0 and validate it */
|
/* Read legacy MBR from block 0 and validate it */
|
||||||
if ((blk_dread(desc, 0, 1, (ulong *)legacymbr) != 1)
|
if ((blk_dread(desc, 0, 1, (ulong *)legacymbr) != 1)
|
||||||
|| (is_pmbr_valid(legacymbr) != 1)) {
|
|| (is_pmbr_valid(legacymbr) != 1)) {
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TegraPT is compatible with EFI part, but it
|
||||||
|
* cannot pass the Protective MBR check. Skip it
|
||||||
|
* if CONFIG_TEGRA_PARTITION is enabled and the
|
||||||
|
* device in question is eMMC.
|
||||||
|
*/
|
||||||
|
if (IS_ENABLED(CONFIG_TEGRA_PARTITION))
|
||||||
|
if (!is_pmbr_valid(legacymbr) &&
|
||||||
|
desc->uclass_id == UCLASS_MMC &&
|
||||||
|
!desc->devnum)
|
||||||
|
return 0;
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user