Hi, > > > In order to support parsing of NVIDIA Tegra Partition Table format, we > need to know the BOOT_SIZE_MULT value of the Extended CSD register > because > NVIDIA's bootloader linearizes the boot0/boot1/main partitions into a > single virtual space, and thus, all partition addresses are shifted by > the size of boot0 + boot1 partitions. > > Signed-off-by: Dmitry Osipenko <digetx@xxxxxxxxx> > --- > drivers/mmc/core/mmc.c | 2 ++ > include/linux/mmc/card.h | 1 + > 2 files changed, 3 insertions(+) > > diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c > index f6912ded652d..88e5b4224d3c 100644 > --- a/drivers/mmc/core/mmc.c > +++ b/drivers/mmc/core/mmc.c > @@ -417,6 +417,8 @@ static int mmc_decode_ext_csd(struct mmc_card > *card, u8 *ext_csd) > ext_csd[EXT_CSD_ERASE_TIMEOUT_MULT]; > card->ext_csd.raw_hc_erase_grp_size = > ext_csd[EXT_CSD_HC_ERASE_GRP_SIZE]; > + card->ext_csd.raw_boot_mult = > + ext_csd[EXT_CSD_BOOT_MULT]; You might want at this point multiply it by 128K, And get rid of: part_size = ext_csd[EXT_CSD_BOOT_MULT] << 17; Below... Thanks, Avri