]> git.ipfire.org Git - thirdparty/linux.git/commit
mmc: meson-mx-sdhc: Set MANUAL_STOP for multi-block SDIO commands
authorMartin Blumenstingl <martin.blumenstingl@googlemail.com>
Sun, 19 Dec 2021 15:34:41 +0000 (16:34 +0100)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 20 Dec 2021 10:14:56 +0000 (11:14 +0100)
commitf89b548ca66be7500dcd92ee8e61590f7d08ac91
tree59ddc47e2edb6a6fc103e4ec4ebe3063f246a2b6
parent66c915d09b942fb3b2b0cb2f56562180901fba17
mmc: meson-mx-sdhc: Set MANUAL_STOP for multi-block SDIO commands

The vendor driver implements special handling for multi-block
SD_IO_RW_EXTENDED (and SD_IO_RW_DIRECT) commands which have data
attached to them. It sets the MANUAL_STOP bit in the MESON_SDHC_MISC
register for these commands. In all other cases this bit is cleared.
Here we omit SD_IO_RW_DIRECT since that command never has any data
attached to it.

This fixes SDIO wifi using the brcmfmac driver which reported the
following error without this change on a Netxeon S82 board using a
Meson8 (S802) SoC:
  brcmf_fw_alloc_request: using brcm/brcmfmac43362-sdio for chip
                          BCM43362/1
  brcmf_sdiod_ramrw: membytes transfer failed
  brcmf_sdio_download_code_file: error -110 on writing 219557 membytes
                                 at 0x00000000
  brcmf_sdio_download_firmware: dongle image file download failed

And with this change:
  brcmf_fw_alloc_request: using brcm/brcmfmac43362-sdio for chip
                          BCM43362/1
  brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may
                            have limited channels available
  brcmf_c_preinit_dcmds: Firmware: BCM43362/1 wl0: Apr 22 2013 14:50:00
                         version 5.90.195.89.6 FWID 01-b30a427d

Fixes: e4bf1b0970ef96 ("mmc: host: meson-mx-sdhc: new driver for the Amlogic Meson SDHC host")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20211219153442.463863-2-martin.blumenstingl@googlemail.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/meson-mx-sdhc-mmc.c