17.08.2021 11:24, Ulf Hansson пишет: >> +int tegra_partition_forced_gpt(struct parsed_partitions *state) >> +{ >> + struct gendisk *disk = state->disk; >> + struct block_device *bdev = disk->part0; >> + struct mmc_card *card = mmc_bdev_to_card(bdev); >> + int ret, boot_offset; >> + >> + if (!soc_is_tegra()) >> + return 0; >> + >> + /* filter out unrelated and untested boot sources */ >> + if (!card || card->ext_csd.rev < 3 || >> + !mmc_card_is_blockaddr(card) || >> + mmc_card_is_removable(card->host) || >> + bdev_logical_block_size(bdev) != SZ_512 || >> + !of_match_node(tegra_sdhci_match, card->host->parent->of_node)) { > I think you need to convince Rob Herring that the location of the GPT > table in the eMMC flash memory is allowed to depend on the compatible > string of the sdhci controller. I'll CC Rob on the next revision, although I think he doesn't care much about this. > In any case, I think Christoph raised some interesting ideas in his > reply. Moving more of this code into the mmc core/block layer seems > reasonable to me as well. Will prepare v5, thanks.