]> git.baikalelectronics.ru Git - kernel.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)
commitdc14bb52f998c38932bd4f0baa6dc28eaca0b38a
tree59ddc47e2edb6a6fc103e4ec4ebe3063f246a2b6
parent8dee719f89184619554d35a99c7b57a3d99424c5
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: 0b394db5070a6c ("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