diff options
| author | Jay <[email protected]> | 2023-06-29 17:42:13 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-06-29 17:42:13 +0800 |
| commit | 69ec7981c34014402465da1dbcdde5668a248bf7 (patch) | |
| tree | 68aab2c76ff2b4beccf1676d7fece2d7f0555483 /bsp | |
| parent | 34bc78331c7116aeeb70512dd8d297b7dc88f8d5 (diff) | |
[bsp][renesas] 修复SDHI尝试多块读取时只能读取到第一个块的问题 (#7737)
Diffstat (limited to 'bsp')
| -rw-r--r-- | bsp/renesas/libraries/HAL_Drivers/drv_sdhi.c | 5 | ||||
| -rw-r--r-- | bsp/renesas/libraries/HAL_Drivers/drv_sdhi.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.c b/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.c index 0919f813ef..9390be8ac7 100644 --- a/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.c +++ b/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.c @@ -94,6 +94,11 @@ rt_err_t command_send(sdhi_instance_ctrl_t *p_ctrl, struct rt_mmcsd_cmd *cmd) cmd->cmd_code |= SDHI_CMD_DATA_DIR_READ; } } + if (data->blks > 1) + { + cmd->cmd_code |= SDHI_BLK_TRANSFER; + cmd->cmd_code |= SDHI_BLK_NOT_AUTO_STOP; + } } p_ctrl->p_reg->SD_CMD = cmd->cmd_code; diff --git a/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.h b/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.h index b92cb4561b..7cc5468665 100644 --- a/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.h +++ b/bsp/renesas/libraries/HAL_Drivers/drv_sdhi.h @@ -44,6 +44,7 @@ #define SDHI_CMD_ADTC_EN (1 << 11) #define SDHI_CMD_DATA_DIR_READ (1 << 12) #define SDHI_BLK_TRANSFER (1 << 13) +#define SDHI_BLK_NOT_AUTO_STOP (1 << 14) #define SDIO_MAX_FREQ 25000000 |
