mac80211: brcmfmac: add beamforming support
[15.05/openwrt.git] / package / kernel / mac80211 / patches / 374-0001-brcmfmac-Add-support-for-the-BCM4359-11ac-RSDB-PCIE-.patch
1 From: Hante Meuleman <meuleman@broadcom.com>
2 Date: Thu, 29 Oct 2015 20:33:11 +0100
3 Subject: [PATCH] brcmfmac: Add support for the BCM4359 11ac RSDB PCIE device.
4
5 Reviewed-by: Arend Van Spriel <arend@broadcom.com>
6 Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
7 Signed-off-by: Hante Meuleman <meuleman@broadcom.com>
8 Signed-off-by: Arend van Spriel <arend@broadcom.com>
9 Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
10 ---
11
12 --- a/drivers/net/wireless/brcm80211/brcmfmac/chip.c
13 +++ b/drivers/net/wireless/brcm80211/brcmfmac/chip.c
14 @@ -681,6 +681,7 @@ static u32 brcmf_chip_tcm_rambase(struct
15         case BRCM_CC_43569_CHIP_ID:
16         case BRCM_CC_43570_CHIP_ID:
17         case BRCM_CC_4358_CHIP_ID:
18 +       case BRCM_CC_4359_CHIP_ID:
19         case BRCM_CC_43602_CHIP_ID:
20         case BRCM_CC_4371_CHIP_ID:
21                 return 0x180000;
22 --- a/drivers/net/wireless/brcm80211/brcmfmac/pcie.c
23 +++ b/drivers/net/wireless/brcm80211/brcmfmac/pcie.c
24 @@ -55,6 +55,8 @@ enum brcmf_pcie_state {
25  #define BRCMF_PCIE_43570_NVRAM_NAME            "brcm/brcmfmac43570-pcie.txt"
26  #define BRCMF_PCIE_4358_FW_NAME                        "brcm/brcmfmac4358-pcie.bin"
27  #define BRCMF_PCIE_4358_NVRAM_NAME             "brcm/brcmfmac4358-pcie.txt"
28 +#define BRCMF_PCIE_4359_FW_NAME                        "brcm/brcmfmac4359-pcie.bin"
29 +#define BRCMF_PCIE_4359_NVRAM_NAME             "brcm/brcmfmac4359-pcie.txt"
30  #define BRCMF_PCIE_4365_FW_NAME                        "brcm/brcmfmac4365b-pcie.bin"
31  #define BRCMF_PCIE_4365_NVRAM_NAME             "brcm/brcmfmac4365b-pcie.txt"
32  #define BRCMF_PCIE_4366_FW_NAME                        "brcm/brcmfmac4366b-pcie.bin"
33 @@ -210,6 +212,8 @@ MODULE_FIRMWARE(BRCMF_PCIE_43570_FW_NAME
34  MODULE_FIRMWARE(BRCMF_PCIE_43570_NVRAM_NAME);
35  MODULE_FIRMWARE(BRCMF_PCIE_4358_FW_NAME);
36  MODULE_FIRMWARE(BRCMF_PCIE_4358_NVRAM_NAME);
37 +MODULE_FIRMWARE(BRCMF_PCIE_4359_FW_NAME);
38 +MODULE_FIRMWARE(BRCMF_PCIE_4359_NVRAM_NAME);
39  MODULE_FIRMWARE(BRCMF_PCIE_4365_FW_NAME);
40  MODULE_FIRMWARE(BRCMF_PCIE_4365_NVRAM_NAME);
41  MODULE_FIRMWARE(BRCMF_PCIE_4366_FW_NAME);
42 @@ -1517,6 +1521,10 @@ static int brcmf_pcie_get_fwnames(struct
43                 fw_name = BRCMF_PCIE_4358_FW_NAME;
44                 nvram_name = BRCMF_PCIE_4358_NVRAM_NAME;
45                 break;
46 +       case BRCM_CC_4359_CHIP_ID:
47 +               fw_name = BRCMF_PCIE_4359_FW_NAME;
48 +               nvram_name = BRCMF_PCIE_4359_NVRAM_NAME;
49 +               break;
50         case BRCM_CC_4365_CHIP_ID:
51                 fw_name = BRCMF_PCIE_4365_FW_NAME;
52                 nvram_name = BRCMF_PCIE_4365_NVRAM_NAME;
53 @@ -2058,6 +2066,7 @@ static struct pci_device_id brcmf_pcie_d
54         BRCMF_PCIE_DEVICE(BRCM_PCIE_43567_DEVICE_ID),
55         BRCMF_PCIE_DEVICE(BRCM_PCIE_43570_DEVICE_ID),
56         BRCMF_PCIE_DEVICE(BRCM_PCIE_4358_DEVICE_ID),
57 +       BRCMF_PCIE_DEVICE(BRCM_PCIE_4359_DEVICE_ID),
58         BRCMF_PCIE_DEVICE(BRCM_PCIE_43602_DEVICE_ID),
59         BRCMF_PCIE_DEVICE(BRCM_PCIE_43602_2G_DEVICE_ID),
60         BRCMF_PCIE_DEVICE(BRCM_PCIE_43602_5G_DEVICE_ID),
61 --- a/drivers/net/wireless/brcm80211/include/brcm_hw_ids.h
62 +++ b/drivers/net/wireless/brcm80211/include/brcm_hw_ids.h
63 @@ -47,6 +47,7 @@
64  #define BRCM_CC_43569_CHIP_ID          43569
65  #define BRCM_CC_43570_CHIP_ID          43570
66  #define BRCM_CC_4358_CHIP_ID           0x4358
67 +#define BRCM_CC_4359_CHIP_ID           0x4359
68  #define BRCM_CC_43602_CHIP_ID          43602
69  #define BRCM_CC_4365_CHIP_ID           0x4365
70  #define BRCM_CC_4366_CHIP_ID           0x4366
71 @@ -66,6 +67,7 @@
72  #define BRCM_PCIE_43567_DEVICE_ID      0x43d3
73  #define BRCM_PCIE_43570_DEVICE_ID      0x43d9
74  #define BRCM_PCIE_4358_DEVICE_ID       0x43e9
75 +#define BRCM_PCIE_4359_DEVICE_ID       0x43ef
76  #define BRCM_PCIE_43602_DEVICE_ID      0x43ba
77  #define BRCM_PCIE_43602_2G_DEVICE_ID   0x43bb
78  #define BRCM_PCIE_43602_5G_DEVICE_ID   0x43bc