Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 508422f3 authored by Ian Molton's avatar Ian Molton Committed by Kalle Valo
Browse files

brcmfmac: Correctly handle accesses to SDIO func0



Rather than workaround the restrictions on func0 addressing in the
driver, set MMC_QUIRK_LENIENT_FN0

Signed-off-by: default avatarIan Molton <ian@mnementh.co.uk>
Acked-by: default avatarArend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend.vanspriel@broadcom.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 874bb8e4
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -995,6 +995,10 @@ static int brcmf_ops_sdio_probe(struct sdio_func *func,
	brcmf_dbg(SDIO, "Function#: %d\n", func->num);

	dev = &func->dev;

	/* Set MMC_QUIRK_LENIENT_FN0 for this card */
	func->card->quirks |= MMC_QUIRK_LENIENT_FN0;

	/* prohibit ACPI power management for this device */
	brcmf_sdiod_acpi_set_power_manageable(dev, 0);

+2 −2
Original line number Diff line number Diff line
@@ -297,10 +297,10 @@ void brcmf_sdiod_intr_unregister(struct brcmf_sdio_dev *sdiodev);
/* SDIO device register access interface */
/* Accessors for SDIO Function 0 */
#define brcmf_sdiod_func0_rb(sdiodev, addr, r) \
	sdio_readb((sdiodev)->func[0], (addr), (r))
	sdio_f0_readb((sdiodev)->func[0], (addr), (r))

#define brcmf_sdiod_func0_wb(sdiodev, addr, v, ret) \
	sdio_writeb((sdiodev)->func[0], (v), (addr), (ret))
	sdio_f0_writeb((sdiodev)->func[0], (v), (addr), (ret))

/* Accessors for SDIO Function 1 */
#define brcmf_sdiod_readb(sdiodev, addr, r) \