[PATCH] mmc: meson-gx: do not use memcpy_to/fromio for dram-access-quirk

Martin Blumenstingl martin.blumenstingl at googlemail.com
Sun Sep 19 13:04:05 PDT 2021


On Mon, Sep 13, 2021 at 10:05 AM Neil Armstrong <narmstrong at baylibre.com> wrote:
>
> The memory at the end of the controller only accepts 32bit read/write
> accesses, but the arm64 memcpy_to/fromio implementation only uses 64bit
> (which will be split into two 32bit access) and 8bit leading to incomplete
> copies to/from this memory when the buffer is not multiple of 8bytes.
>
> Add a local copy using writel/readl accesses to make sure we use the right
> memory access width.
>
> The switch to memcpy_to/fromio was done because of 285133040e6c
> ("arm64: Import latest memcpy()/memmove() implementation"), but using memcpy
> worked before since it mainly used 32bit memory acceses.
>
> Fixes: 103a5348c22c ("mmc: meson-gx: use memcpy_to/fromio for dram-access-quirk")
> Reported-by: Christian Hewitt <christianshewitt at gmail.com>
> Suggested-by: Martin Blumenstingl <martin.blumenstingl at googlemail.com>
> Signed-off-by: Neil Armstrong <narmstrong at baylibre.com>
Tested-by: Martin Blumenstingl <martin.blumenstingl at googlemail.com>



More information about the linux-arm-kernel mailing list