Discard feature is independent of security features. The support check for all trims and discard falsely checked for secure trim/discard, but in the discard case this is not mandated by the spec. Signed-off-by: Christian Loehle <cloehle@xxxxxxxxxxxxxx> --- drivers/mmc/core/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index 95fa8fb1d45f..507005211529 100644 --- a/drivers/mmc/core/core.c +++ b/drivers/mmc/core/core.c @@ -1761,7 +1761,8 @@ int mmc_erase(struct mmc_card *card, unsigned int from, unsigned int nr, return -EOPNOTSUPP; if (mmc_card_mmc(card) && (arg & MMC_TRIM_ARGS) && - !(card->ext_csd.sec_feature_support & EXT_CSD_SEC_GB_CL_EN)) + !(card->ext_csd.sec_feature_support & EXT_CSD_SEC_GB_CL_EN) && + arg != MMC_DISCARD_ARG) return -EOPNOTSUPP; if (arg == MMC_SECURE_ERASE_ARG) { -- 2.37.3 Hyperstone GmbH | Reichenaustr. 39a | 78467 Konstanz Managing Director: Dr. Jan Peter Berns. Commercial register of local courts: Freiburg HRB381782