mmc: core: align max segment size with logical block size
authorMing Lei <ming.lei@redhat.com>
Wed, 27 Feb 2019 16:02:11 +0000 (00:02 +0800)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 27 Feb 2019 17:01:25 +0000 (18:01 +0100)
commitc53336c8f5f29043fded57912cc06c24e12613d7
treec498a37b659a6e2de273832fd990a2314d28f67d
parentd07e9fadf3a6b466ca3ae90fa4859089ff20530f
mmc: core: align max segment size with logical block size

Logical block size is the lowest possible block size that the storage
device can address. Max segment size is often related with controller's
DMA capability. And it is reasonable to align max segment size with
logical block size.

SDHCI sets un-aligned max segment size, and causes ADMA error, so
fix it by aligning max segment size with logical block size.

Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Naresh Kamboju <naresh.kamboju@linaro.org>
Cc: Faiz Abbas <faiz_abbas@ti.com>
Cc: linux-block@vger.kernel.org
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/core/block.c
drivers/mmc/core/queue.c