]>
Commit | Line | Data |
---|---|---|
b32881e5 GKH |
1 | From b1a0ba8f772d7a6dcb5aa3e856f5bd8274989ebe Mon Sep 17 00:00:00 2001 |
2 | From: Hans de Goede <hdegoede@redhat.com> | |
3 | Date: Mon, 22 Apr 2019 22:41:23 +0200 | |
4 | Subject: brcmfmac: Add DMI nvram filename quirk for ACEPC T8 and T11 mini PCs | |
5 | ||
6 | From: Hans de Goede <hdegoede@redhat.com> | |
7 | ||
8 | commit b1a0ba8f772d7a6dcb5aa3e856f5bd8274989ebe upstream. | |
9 | ||
10 | The ACEPC T8 and T11 mini PCs contain quite generic names in the sys_vendor | |
11 | and product_name DMI strings, without this patch brcmfmac will try to load: | |
12 | "brcmfmac43455-sdio.Default string-Default string.txt" as nvram file which | |
13 | is way too generic. | |
14 | ||
15 | The DMI strings on which we are matching are somewhat generic too, but | |
16 | "To be filled by O.E.M." is less common then "Default string" and the | |
17 | system-sku and bios-version strings are pretty unique. Beside the DMI | |
18 | strings we also check the wifi-module chip-id and revision. I'm confident | |
19 | that the combination of all this is unique. | |
20 | ||
21 | Both the T8 and T11 use the same wifi-module, this commit adds DMI | |
22 | quirks for both mini PCs pointing to brcmfmac43455-sdio.acepc-t8.txt . | |
23 | ||
24 | BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1690852 | |
25 | Cc: stable@vger.kernel.org | |
26 | Signed-off-by: Hans de Goede <hdegoede@redhat.com> | |
27 | Signed-off-by: Kalle Valo <kvalo@codeaurora.org> | |
28 | Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> | |
29 | ||
30 | --- | |
31 | drivers/net/wireless/broadcom/brcm80211/brcmfmac/dmi.c | 26 +++++++++++++++++ | |
32 | 1 file changed, 26 insertions(+) | |
33 | ||
34 | --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/dmi.c | |
35 | +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/dmi.c | |
36 | @@ -31,6 +31,10 @@ struct brcmf_dmi_data { | |
37 | ||
38 | /* NOTE: Please keep all entries sorted alphabetically */ | |
39 | ||
40 | +static const struct brcmf_dmi_data acepc_t8_data = { | |
41 | + BRCM_CC_4345_CHIP_ID, 6, "acepc-t8" | |
42 | +}; | |
43 | + | |
44 | static const struct brcmf_dmi_data gpd_win_pocket_data = { | |
45 | BRCM_CC_4356_CHIP_ID, 2, "gpd-win-pocket" | |
46 | }; | |
47 | @@ -49,6 +53,28 @@ static const struct brcmf_dmi_data pov_t | |
48 | ||
49 | static const struct dmi_system_id dmi_platform_data[] = { | |
50 | { | |
51 | + /* ACEPC T8 Cherry Trail Z8350 mini PC */ | |
52 | + .matches = { | |
53 | + DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "To be filled by O.E.M."), | |
54 | + DMI_EXACT_MATCH(DMI_BOARD_NAME, "Cherry Trail CR"), | |
55 | + DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "T8"), | |
56 | + /* also match on somewhat unique bios-version */ | |
57 | + DMI_EXACT_MATCH(DMI_BIOS_VERSION, "1.000"), | |
58 | + }, | |
59 | + .driver_data = (void *)&acepc_t8_data, | |
60 | + }, | |
61 | + { | |
62 | + /* ACEPC T11 Cherry Trail Z8350 mini PC, same wifi as the T8 */ | |
63 | + .matches = { | |
64 | + DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "To be filled by O.E.M."), | |
65 | + DMI_EXACT_MATCH(DMI_BOARD_NAME, "Cherry Trail CR"), | |
66 | + DMI_EXACT_MATCH(DMI_PRODUCT_SKU, "T11"), | |
67 | + /* also match on somewhat unique bios-version */ | |
68 | + DMI_EXACT_MATCH(DMI_BIOS_VERSION, "1.000"), | |
69 | + }, | |
70 | + .driver_data = (void *)&acepc_t8_data, | |
71 | + }, | |
72 | + { | |
73 | /* Match for the GPDwin which unfortunately uses somewhat | |
74 | * generic dmi strings, which is why we test for 4 strings. | |
75 | * Comparing against 23 other byt/cht boards, board_vendor |