45b73af7f6
All these patches are in wireless-drirvers-next. There is support for hidden SSID, few new devices and many fixes. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
55 lines
2.6 KiB
Diff
55 lines
2.6 KiB
Diff
From 634faf3686900ccdee87b77e2c56df8b2159912b Mon Sep 17 00:00:00 2001
|
|
From: Arend Van Spriel <arend.vanspriel@broadcom.com>
|
|
Date: Mon, 5 Sep 2016 11:42:12 +0100
|
|
Subject: [PATCH] brcmfmac: add support for bcm4339 chip with modalias
|
|
sdio:c00v02D0d4339
|
|
|
|
The driver already supports the bcm4339 chipset but only for the variant
|
|
that shares the same modalias as the bcm4335, ie. sdio:c00v02D0d4335.
|
|
It turns out that there are also bcm4339 devices out there that have a
|
|
more distiguishable modalias sdio:c00v02D0d4339.
|
|
|
|
Reported-by: Steve deRosier <derosier@gmail.com>
|
|
Reviewed-by: Hante Meuleman <hante.meuleman@broadcom.com>
|
|
Reviewed-by: Pieter-Paul Giesberts <pieter-paul.giesberts@broadcom.com>
|
|
Reviewed-by: Franky Lin <franky.lin@broadcom.com>
|
|
Signed-off-by: Arend van Spriel <arend.vanspriel@broadcom.com>
|
|
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
|
---
|
|
drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 1 +
|
|
drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c | 3 ++-
|
|
include/linux/mmc/sdio_ids.h | 1 +
|
|
3 files changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c
|
|
@@ -1101,6 +1101,7 @@ static const struct sdio_device_id brcmf
|
|
BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43341),
|
|
BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43362),
|
|
BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4335_4339),
|
|
+ BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4339),
|
|
BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43430),
|
|
BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4345),
|
|
BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4354),
|
|
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
|
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c
|
|
@@ -3757,7 +3757,8 @@ static u32 brcmf_sdio_buscore_read32(voi
|
|
u32 val, rev;
|
|
|
|
val = brcmf_sdiod_regrl(sdiodev, addr, NULL);
|
|
- if (sdiodev->func[0]->device == SDIO_DEVICE_ID_BROADCOM_4335_4339 &&
|
|
+ if ((sdiodev->func[0]->device == SDIO_DEVICE_ID_BROADCOM_4335_4339 ||
|
|
+ sdiodev->func[0]->device == SDIO_DEVICE_ID_BROADCOM_4339) &&
|
|
addr == CORE_CC_REG(SI_ENUM_BASE, chipid)) {
|
|
rev = (val & CID_REV_MASK) >> CID_REV_SHIFT;
|
|
if (rev >= 2) {
|
|
--- a/include/linux/mmc/sdio_ids.h
|
|
+++ b/include/linux/mmc/sdio_ids.h
|
|
@@ -32,6 +32,7 @@
|
|
#define SDIO_DEVICE_ID_BROADCOM_43340 0xa94c
|
|
#define SDIO_DEVICE_ID_BROADCOM_43341 0xa94d
|
|
#define SDIO_DEVICE_ID_BROADCOM_4335_4339 0x4335
|
|
+#define SDIO_DEVICE_ID_BROADCOM_4339 0x4339
|
|
#define SDIO_DEVICE_ID_BROADCOM_43362 0xa962
|
|
#define SDIO_DEVICE_ID_BROADCOM_43430 0xa9a6
|
|
#define SDIO_DEVICE_ID_BROADCOM_4345 0x4345
|