diff options
author | Roland Vossen <rvossen@broadcom.com> | 2011-06-01 07:45:21 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-06-07 15:36:56 -0400 |
commit | e40514c2001334da200ba1e019cfecb0650335d8 (patch) | |
tree | a929c188c21f340f17500bfa4aaf2525461a2a35 /drivers/staging/brcm80211/brcmsmac | |
parent | 31c9f6d970f3b7bc5d58267c6f6aba94cce23872 (diff) |
staging: brcm80211: cleaned bcmdefs.h
Code cleanup.
Signed-off-by: Roland Vossen <rvossen@broadcom.com>
Reviewed-by: Arend van Spriel <arend@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/brcm80211/brcmsmac')
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/bcmsrom.c | 1 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/dma.c | 36 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_cmn.c | 1 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_n.c | 1 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/wl_ucode.h | 2 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/wlc_main.h | 20 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/wlc_pub.h | 1 | ||||
-rw-r--r-- | drivers/staging/brcm80211/brcmsmac/wlc_types.h | 18 |
8 files changed, 80 insertions, 0 deletions
diff --git a/drivers/staging/brcm80211/brcmsmac/bcmsrom.c b/drivers/staging/brcm80211/brcmsmac/bcmsrom.c index 311bc0cdaa8..952bc402263 100644 --- a/drivers/staging/brcm80211/brcmsmac/bcmsrom.c +++ b/drivers/staging/brcm80211/brcmsmac/bcmsrom.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/module.h> | 20 | #include <linux/module.h> |
21 | #include <linux/pci.h> | 21 | #include <linux/pci.h> |
22 | #include <stdarg.h> | 22 | #include <stdarg.h> |
23 | #include "wlc_types.h" | ||
23 | #include <bcmutils.h> | 24 | #include <bcmutils.h> |
24 | #include <bcmsoc.h> | 25 | #include <bcmsoc.h> |
25 | #include <sbchipc.h> | 26 | #include <sbchipc.h> |
diff --git a/drivers/staging/brcm80211/brcmsmac/dma.c b/drivers/staging/brcm80211/brcmsmac/dma.c index 77baef2eebe..611a7e21e7e 100644 --- a/drivers/staging/brcm80211/brcmsmac/dma.c +++ b/drivers/staging/brcm80211/brcmsmac/dma.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <bcmutils.h> | 24 | #include <bcmutils.h> |
25 | #include <aiutils.h> | 25 | #include <aiutils.h> |
26 | 26 | ||
27 | #include "wlc_types.h" | ||
27 | #include <sbdma.h> | 28 | #include <sbdma.h> |
28 | #include <bcmdma.h> | 29 | #include <bcmdma.h> |
29 | 30 | ||
@@ -148,6 +149,19 @@ | |||
148 | #define D64_RX_FRM_STS_DSCRCNT 0x0f000000 /* no. of descriptors used - 1 */ | 149 | #define D64_RX_FRM_STS_DSCRCNT 0x0f000000 /* no. of descriptors used - 1 */ |
149 | #define D64_RX_FRM_STS_DATATYPE 0xf0000000 /* core-dependent data type */ | 150 | #define D64_RX_FRM_STS_DATATYPE 0xf0000000 /* core-dependent data type */ |
150 | 151 | ||
152 | #define DMADDRWIDTH_30 30 /* 30-bit addressing capability */ | ||
153 | #define DMADDRWIDTH_32 32 /* 32-bit addressing capability */ | ||
154 | #define DMADDRWIDTH_63 63 /* 64-bit addressing capability */ | ||
155 | #define DMADDRWIDTH_64 64 /* 64-bit addressing capability */ | ||
156 | |||
157 | /* packet headroom necessary to accommodate the largest header in the system, (i.e TXOFF). | ||
158 | * By doing, we avoid the need to allocate an extra buffer for the header when bridging to WL. | ||
159 | * There is a compile time check in wlc.c which ensure that this value is at least as big | ||
160 | * as TXOFF. This value is used in dma_rxfill (dma.c). | ||
161 | */ | ||
162 | |||
163 | #define BCMEXTRAHDROOM 172 | ||
164 | |||
151 | /* debug/trace */ | 165 | /* debug/trace */ |
152 | #ifdef BCMDBG | 166 | #ifdef BCMDBG |
153 | #define DMA_ERROR(args) \ | 167 | #define DMA_ERROR(args) \ |
@@ -171,6 +185,15 @@ | |||
171 | 185 | ||
172 | #define DMA_NONE(args) | 186 | #define DMA_NONE(args) |
173 | 187 | ||
188 | typedef unsigned long dmaaddr_t; | ||
189 | #define PHYSADDRHI(_pa) (0) | ||
190 | #define PHYSADDRHISET(_pa, _val) | ||
191 | #define PHYSADDRLO(_pa) ((_pa)) | ||
192 | #define PHYSADDRLOSET(_pa, _val) \ | ||
193 | do { \ | ||
194 | (_pa) = (_val); \ | ||
195 | } while (0) | ||
196 | |||
174 | #define d64txregs dregs.d64_u.txregs_64 | 197 | #define d64txregs dregs.d64_u.txregs_64 |
175 | #define d64rxregs dregs.d64_u.rxregs_64 | 198 | #define d64rxregs dregs.d64_u.rxregs_64 |
176 | #define txd64 dregs.d64_u.txd_64 | 199 | #define txd64 dregs.d64_u.txd_64 |
@@ -186,6 +209,19 @@ static uint dma_msg_level; | |||
186 | #define R_SM(r) (*(r)) | 209 | #define R_SM(r) (*(r)) |
187 | #define W_SM(r, v) (*(r) = (v)) | 210 | #define W_SM(r, v) (*(r) = (v)) |
188 | 211 | ||
212 | /* One physical DMA segment */ | ||
213 | typedef struct { | ||
214 | dmaaddr_t addr; | ||
215 | u32 length; | ||
216 | } dma_seg_t; | ||
217 | |||
218 | typedef struct { | ||
219 | void *oshdmah; /* Opaque handle for OSL to store its information */ | ||
220 | uint origsize; /* Size of the virtual packet */ | ||
221 | uint nsegs; | ||
222 | dma_seg_t segs[MAX_DMA_SEGS]; | ||
223 | } dma_seg_map_t; | ||
224 | |||
189 | /* | 225 | /* |
190 | * DMA Descriptor | 226 | * DMA Descriptor |
191 | * Descriptors are only read by the hardware, never written back. | 227 | * Descriptors are only read by the hardware, never written back. |
diff --git a/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_cmn.c b/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_cmn.c index 22ba415c047..1e9865fb955 100644 --- a/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_cmn.c +++ b/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_cmn.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <bcmdevs.h> | 29 | #include <bcmdevs.h> |
30 | #include <sbdma.h> | 30 | #include <sbdma.h> |
31 | 31 | ||
32 | #include <wlc_types.h> | ||
32 | #include <wlc_phy_int.h> | 33 | #include <wlc_phy_int.h> |
33 | #include <wlc_phyreg_n.h> | 34 | #include <wlc_phyreg_n.h> |
34 | #include <wlc_phy_radio.h> | 35 | #include <wlc_phy_radio.h> |
diff --git a/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_n.c b/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_n.c index 620eb86f1fe..78d8cbe2887 100644 --- a/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_n.c +++ b/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_n.c | |||
@@ -27,6 +27,7 @@ | |||
27 | #include <bcmdevs.h> | 27 | #include <bcmdevs.h> |
28 | #include <sbdma.h> | 28 | #include <sbdma.h> |
29 | 29 | ||
30 | #include <wlc_types.h> | ||
30 | #include <wlc_phy_radio.h> | 31 | #include <wlc_phy_radio.h> |
31 | #include <wlc_phy_int.h> | 32 | #include <wlc_phy_int.h> |
32 | #include <wlc_phyreg_n.h> | 33 | #include <wlc_phyreg_n.h> |
diff --git a/drivers/staging/brcm80211/brcmsmac/wl_ucode.h b/drivers/staging/brcm80211/brcmsmac/wl_ucode.h index 6933fda0e6a..28838d83854 100644 --- a/drivers/staging/brcm80211/brcmsmac/wl_ucode.h +++ b/drivers/staging/brcm80211/brcmsmac/wl_ucode.h | |||
@@ -14,6 +14,8 @@ | |||
14 | * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | 14 | * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include "wlc_types.h" /* forward structure declarations */ | ||
18 | |||
17 | #define MIN_FW_SIZE 40000 /* minimum firmware file size in bytes */ | 19 | #define MIN_FW_SIZE 40000 /* minimum firmware file size in bytes */ |
18 | #define MAX_FW_SIZE 150000 | 20 | #define MAX_FW_SIZE 150000 |
19 | 21 | ||
diff --git a/drivers/staging/brcm80211/brcmsmac/wlc_main.h b/drivers/staging/brcm80211/brcmsmac/wlc_main.h index d06633973de..4e62b11a8ed 100644 --- a/drivers/staging/brcm80211/brcmsmac/wlc_main.h +++ b/drivers/staging/brcm80211/brcmsmac/wlc_main.h | |||
@@ -47,6 +47,24 @@ | |||
47 | 47 | ||
48 | #define AC_COUNT 4 | 48 | #define AC_COUNT 4 |
49 | 49 | ||
50 | /* Macros for doing definition and get/set of bitfields | ||
51 | * Usage example, e.g. a three-bit field (bits 4-6): | ||
52 | * #define <NAME>_M BITFIELD_MASK(3) | ||
53 | * #define <NAME>_S 4 | ||
54 | * ... | ||
55 | * regval = R_REG(osh, ®s->regfoo); | ||
56 | * field = GFIELD(regval, <NAME>); | ||
57 | * regval = SFIELD(regval, <NAME>, 1); | ||
58 | * W_REG(osh, ®s->regfoo, regval); | ||
59 | */ | ||
60 | #define BITFIELD_MASK(width) \ | ||
61 | (((unsigned)1 << (width)) - 1) | ||
62 | #define GFIELD(val, field) \ | ||
63 | (((val) >> field ## _S) & field ## _M) | ||
64 | #define SFIELD(val, field, bits) \ | ||
65 | (((val) & (~(field ## _M << field ## _S))) | \ | ||
66 | ((unsigned)(bits) << field ## _S)) | ||
67 | |||
50 | /* For managing scan result lists */ | 68 | /* For managing scan result lists */ |
51 | struct wlc_bss_list { | 69 | struct wlc_bss_list { |
52 | uint count; | 70 | uint count; |
@@ -158,6 +176,8 @@ extern const u8 prio2fifo[]; | |||
158 | #define EDCF_LONG_M BITFIELD_MASK(4) | 176 | #define EDCF_LONG_M BITFIELD_MASK(4) |
159 | #define EDCF_LFB_M BITFIELD_MASK(4) | 177 | #define EDCF_LFB_M BITFIELD_MASK(4) |
160 | 178 | ||
179 | #define NFIFO 6 /* # tx/rx fifopairs */ | ||
180 | |||
161 | #define WLC_WME_RETRY_SHORT_GET(wlc, ac) GFIELD(wlc->wme_retries[ac], EDCF_SHORT) | 181 | #define WLC_WME_RETRY_SHORT_GET(wlc, ac) GFIELD(wlc->wme_retries[ac], EDCF_SHORT) |
162 | #define WLC_WME_RETRY_SFB_GET(wlc, ac) GFIELD(wlc->wme_retries[ac], EDCF_SFB) | 182 | #define WLC_WME_RETRY_SFB_GET(wlc, ac) GFIELD(wlc->wme_retries[ac], EDCF_SFB) |
163 | #define WLC_WME_RETRY_LONG_GET(wlc, ac) GFIELD(wlc->wme_retries[ac], EDCF_LONG) | 183 | #define WLC_WME_RETRY_LONG_GET(wlc, ac) GFIELD(wlc->wme_retries[ac], EDCF_LONG) |
diff --git a/drivers/staging/brcm80211/brcmsmac/wlc_pub.h b/drivers/staging/brcm80211/brcmsmac/wlc_pub.h index bd0885e11bb..0ab16c45def 100644 --- a/drivers/staging/brcm80211/brcmsmac/wlc_pub.h +++ b/drivers/staging/brcm80211/brcmsmac/wlc_pub.h | |||
@@ -17,6 +17,7 @@ | |||
17 | #ifndef _wlc_pub_h_ | 17 | #ifndef _wlc_pub_h_ |
18 | #define _wlc_pub_h_ | 18 | #define _wlc_pub_h_ |
19 | 19 | ||
20 | #include "wlc_types.h" /* forward structure declarations */ | ||
20 | #include "bcmwifi.h" /* for chanspec_t */ | 21 | #include "bcmwifi.h" /* for chanspec_t */ |
21 | 22 | ||
22 | #define WLC_NUMRATES 16 /* max # of rates in a rateset */ | 23 | #define WLC_NUMRATES 16 /* max # of rates in a rateset */ |
diff --git a/drivers/staging/brcm80211/brcmsmac/wlc_types.h b/drivers/staging/brcm80211/brcmsmac/wlc_types.h index b8cede1e6d6..76a1348e119 100644 --- a/drivers/staging/brcm80211/brcmsmac/wlc_types.h +++ b/drivers/staging/brcm80211/brcmsmac/wlc_types.h | |||
@@ -17,7 +17,24 @@ | |||
17 | #ifndef _wlc_types_h_ | 17 | #ifndef _wlc_types_h_ |
18 | #define _wlc_types_h_ | 18 | #define _wlc_types_h_ |
19 | 19 | ||
20 | /* Bus types */ | ||
21 | #define SI_BUS 0 /* SOC Interconnect */ | ||
22 | #define PCI_BUS 1 /* PCI target */ | ||
23 | #define SDIO_BUS 3 /* SDIO target */ | ||
24 | #define JTAG_BUS 4 /* JTAG */ | ||
25 | #define USB_BUS 5 /* USB (does not support R/W REG) */ | ||
26 | #define SPI_BUS 6 /* gSPI target */ | ||
27 | #define RPC_BUS 7 /* RPC target */ | ||
28 | |||
29 | #define WL_CHAN_FREQ_RANGE_2G 0 | ||
30 | #define WL_CHAN_FREQ_RANGE_5GL 1 | ||
31 | #define WL_CHAN_FREQ_RANGE_5GM 2 | ||
32 | #define WL_CHAN_FREQ_RANGE_5GH 3 | ||
33 | |||
34 | #define MAX_DMA_SEGS 4 | ||
35 | |||
20 | /* forward declarations */ | 36 | /* forward declarations */ |
37 | struct wl_info; | ||
21 | struct wlc_info; | 38 | struct wlc_info; |
22 | struct wlc_hw_info; | 39 | struct wlc_hw_info; |
23 | struct wlc_if; | 40 | struct wlc_if; |
@@ -27,5 +44,6 @@ struct antsel_info; | |||
27 | struct bmac_pmq; | 44 | struct bmac_pmq; |
28 | struct d11init; | 45 | struct d11init; |
29 | struct dma_pub; | 46 | struct dma_pub; |
47 | struct wlc_bsscfg; | ||
30 | 48 | ||
31 | #endif /* _wlc_types_h_ */ | 49 | #endif /* _wlc_types_h_ */ |