nuttx/drivers/mmcsd
buxiasen 9feaa4d841 mmcsd: fix MMC bus width switch using wrong condition and add 8-bit support
The MMC CMD6 bus width switch was gated on priv->buswidth which is
derived from the SD SCR register. For MMC cards this field is never
set (unless SDIO_CAPS_4BIT_ONLY), so the CMD6 was skipped while the
host PROCTL DTW was still changed - causing a bus width mismatch and
data transfer timeouts.

Fix by checking priv->caps instead of priv->buswidth for MMC cards.
Also select EXT_CSD_BUS_WIDTH_8 when host reports SDIO_CAPS_8BIT.

Signed-off-by: buxiasen <buxiasen@xiaomi.com>
2026-03-24 15:39:07 +08:00
..
CMakeLists.txt drivers/mmcsd: Aligned Cmake with Make 2025-12-09 14:25:40 -03:00
Kconfig sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
Make.defs drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd_csd.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd_debug.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd_extcsd.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd_procfs.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd_sdio.c mmcsd: fix MMC bus width switch using wrong condition and add 8-bit support 2026-03-24 15:39:07 +08:00
mmcsd_sdio.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mmcsd_spi.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
mmcsd_spi.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
sdio.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00