summaryrefslogtreecommitdiff
path: root/sound/atmel
diff options
context:
space:
mode:
authorSubhash Jadavani <subhashj@codeaurora.org>2012-06-13 11:40:43 (GMT)
committerChris Ball <cjb@laptop.org>2012-06-26 20:10:29 (GMT)
commitd380443cd0271903bf9516bc04cead81676be034 (patch)
tree27e5660f45086886fc3679679bb7ada7dfeb860a /sound/atmel
parentd1346a6cbabf6d377d753f1adc16cb0b305830cc (diff)
downloadlinux-fsl-qoriq-d380443cd0271903bf9516bc04cead81676be034.tar.xz
mmc: block: fix the data timeout issue with ACMD22
If multi block write operation fails for SD card, during error handling we send the SD_APP_SEND_NUM_WR_BLKS (ACMD22) to know how many blocks were already programmed by card. But mmc_sd_num_wr_blocks() function which sends the ACMD22 calculates the data timeout value from csd.tacc_ns and csd.tacc_clks parameters which will be 0 for block addressed (>2GB cards) SD card. This would result in timeout_ns and timeout_clks being 0 in the mmc_request passed to host driver. This means host controller would program its data timeout timer value with 0 which could result in DATA TIMEOUT errors from controller. To fix this issue, mmc_sd_num_wr_blocks() should instead just call the mmc_set_data_timeout() to calculate the data timeout value. mmc_set_data_timeout() function ensures that non zero timeout value is set even for block addressed SD cards. Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org> Reviewed-by: Venkatraman S <svenkatr@ti.com> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'sound/atmel')
0 files changed, 0 insertions, 0 deletions