On Mon, 11 Nov 2024 at 09:50, Andy-ld Lu <andy-ld.lu@xxxxxxxxxxxx> wrote: > > Currently, the MMC_CAP2_CRYPTO flag is set by default for eMMC hosts. > However, this flag should not be set for hosts that do not support inline > encryption. > > The 'crypto' clock, as described in the documentation, is used for data > encryption and decryption. Therefore, only hosts that are configured with > this 'crypto' clock should have the MMC_CAP2_CRYPTO flag set. > > Fixes: 7b438d0377fb ("mmc: mtk-sd: add Inline Crypto Engine clock control") > Fixes: ed299eda8fbb ("mmc: mtk-sd: fix devm_clk_get_optional usage") > Signed-off-by: Andy-ld Lu <andy-ld.lu@xxxxxxxxxxxx> This didn't apply on fixes the branch, but only on next. That said, I have queued this up for next and added a stable tag. Note that, this means that the fix needs to be backported manually, but I leave that to you or someone else to take care of. Thanks and kind regards Uffe > --- > drivers/mmc/host/mtk-sd.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/mmc/host/mtk-sd.c b/drivers/mmc/host/mtk-sd.c > index 022526a1f754..efb0d2d5716b 100644 > --- a/drivers/mmc/host/mtk-sd.c > +++ b/drivers/mmc/host/mtk-sd.c > @@ -2907,7 +2907,8 @@ static int msdc_drv_probe(struct platform_device *pdev) > host->crypto_clk = devm_clk_get_optional(&pdev->dev, "crypto"); > if (IS_ERR(host->crypto_clk)) > return PTR_ERR(host->crypto_clk); > - mmc->caps2 |= MMC_CAP2_CRYPTO; > + else if (host->crypto_clk) > + mmc->caps2 |= MMC_CAP2_CRYPTO; > } > > host->irq = platform_get_irq(pdev, 0); > -- > 2.46.0 >