Hello Felix,
On 2024-04-29 09:19, Felix Qin wrote:
Extensive testing has shown that some specific SD cards require an
increased command timeout to be successfully initialized.
More info:
Platform: Rockchip SoC + DW Multimedia host Controller
SD card: Xvv microSD CMH34A17TMA12 (Made in Korea)
Note: The SD card is custom-made by the customer in collaboration
with the wafer foundry.
Signed-off-by: Felix Qin <xiaokeqinhealth@xxxxxxx>
After going through the associated discussion [1] and after
reviewing the associated preparatory patch, [2] this patch is
surely looking good to me.
Reviewed-by: Dragan Simic <dsimic@xxxxxxxxxxx>
[1]
https://lore.kernel.org/linux-mmc/CAPDyKFqdA8yisf6tY4gJ-ejk5azTUOZOkZhySYjeHJKibVraLg@xxxxxxxxxxxxxx/
[2]
https://lore.kernel.org/all/20240425133034.79599-1-ulf.hansson@xxxxxxxxxx/
---
v2: Add more info
v3: Based on the __mmc_poll_for_busy API for modification
---
drivers/mmc/core/sd_ops.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/core/sd_ops.c b/drivers/mmc/core/sd_ops.c
index 3ce1ff336826..a1c028303ba7 100644
--- a/drivers/mmc/core/sd_ops.c
+++ b/drivers/mmc/core/sd_ops.c
@@ -19,8 +19,13 @@
#include "sd_ops.h"
#include "mmc_ops.h"
+/*
+ * Extensive testing has shown that some specific SD cards
+ * require an increased command timeout to be successfully
+ * initialized.
+ */
#define SD_APP_OP_COND_PERIOD_US (10 * 1000) /* 10ms */
-#define SD_APP_OP_COND_TIMEOUT_MS 1000 /* 1s */
+#define SD_APP_OP_COND_TIMEOUT_MS 2000 /* 2s */
struct sd_app_op_cond_busy_data {
struct mmc_host *host;