|
|
34ee028 |
From 554da3868eb1d7174710c18b4ddd6ff01f6d612c Mon Sep 17 00:00:00 2001
|
|
|
34ee028 |
From: Hans de Goede <hdegoede@redhat.com>
|
|
|
34ee028 |
Date: Fri, 23 Nov 2018 10:11:48 +0100
|
|
|
34ee028 |
Subject: brcmfmac: Call brcmf_dmi_probe before brcmf_of_probe
|
|
|
34ee028 |
|
|
|
34ee028 |
ARM systems with UEFI may have both devicetree (of) and DMI data in this
|
|
|
34ee028 |
case we end up setting brcmf_mp_device.board_type twice.
|
|
|
34ee028 |
|
|
|
34ee028 |
In this case we should prefer the devicetree data, because:
|
|
|
34ee028 |
1) The devicerree data is more reliable
|
|
|
34ee028 |
2) Some ARM systems (e.g. the Raspberry Pi 3 models) support both UEFI and
|
|
|
34ee028 |
classic uboot booting, the devicetree data is always there, so using it
|
|
|
34ee028 |
makes sure we ask for the same nvram file independent of how we booted.
|
|
|
34ee028 |
|
|
|
34ee028 |
This commit moves the brcmf_dmi_probe call to before the brcmf_of_probe
|
|
|
34ee028 |
call, so that the latter can override the value of the first if both are
|
|
|
34ee028 |
set.
|
|
|
34ee028 |
|
|
|
34ee028 |
Fixes: bd1e82bb420a ("brcmfmac: Set board_type from DMI on x86 based ...")
|
|
|
34ee028 |
Cc: Peter Robinson <pbrobinson@gmail.com>
|
|
|
34ee028 |
Tested-and-reported-by: Peter Robinson <pbrobinson@gmail.com>
|
|
|
34ee028 |
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
|
|
34ee028 |
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
|
|
|
34ee028 |
---
|
|
|
34ee028 |
drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c | 2 +-
|
|
|
34ee028 |
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
34ee028 |
|
|
|
34ee028 |
diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
|
|
|
34ee028 |
index e738112ed87c..1f1e95a15a17 100644
|
|
|
34ee028 |
--- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
|
|
|
34ee028 |
+++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/common.c
|
|
|
34ee028 |
@@ -449,8 +449,8 @@ struct brcmf_mp_device *brcmf_get_module_param(struct device *dev,
|
|
|
34ee028 |
}
|
|
|
34ee028 |
if (!found) {
|
|
|
34ee028 |
/* No platform data for this device, try OF and DMI data */
|
|
|
34ee028 |
- brcmf_of_probe(dev, bus_type, settings);
|
|
|
34ee028 |
brcmf_dmi_probe(settings, chip, chiprev);
|
|
|
34ee028 |
+ brcmf_of_probe(dev, bus_type, settings);
|
|
|
34ee028 |
}
|
|
|
34ee028 |
return settings;
|
|
|
34ee028 |
}
|
|
|
34ee028 |
--
|
|
|
34ee028 |
cgit 1.2-0.3.lf.el7
|