On Tue, Dec 3, 2019 at 1:54 PM BOUGH CHEN <haibo.chen@xxxxxxx> wrote: > +- sdhci,auto-cmd23-broken: disable the ACMD23 function of USDHC. > + This is required for eMMC on imx6qpdl/imx6sx/imx7d when it use ADMA mode. Because > + for these SoC, it do not support the ACMD23 completely, only take the 16 bit block > + count from the 0x4 register (BLK_ATT) as argument for the ACMD23, the upper 16 bit > + of the CMD23's argument is ignored. This will impact the reliable write operation > + and the RPMB block write operation, because these operations need to set the bit 31 > + of the CMD23's argument. SDMA mode will default disable the ACMD23 mode. SD card do > + not has this limitation on these SoCs. This looks weird. Is the bug in the *host controller* or in *the card*? It looks like the card. And then it should just be a quirk for this eMMC card in drivers/mmc/core/quirks.h plus corresponding code in the core. Otherwise everyone using this eMMC card has to add this property in their device tree and that is wrong if we can already detect it from the card ID and apply it for that card, anywhere. This is not the first time I see card quirks as DT properties, it seems like a bit over-reliance on DT. Yours, Linus Walleij