#include <linux/kernel.h>
#include <linux/etherdevice.h>
-#include <linux/string.h>
+#include <linux/types.h>
#include <linux/pci_ids.h>
-#include <bcmdefs.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/sched.h>
-#include <osl.h>
-#define WLC_MAXBSSCFG 1 /* single BSS configs */
-
-#include <wlc_cfg.h>
+#include <linux/firmware.h>
#include <net/mac80211.h>
-#include <phy_version.h>
+
+#include <proto/802.1d.h>
+#include <bcmdefs.h>
+#include <osl.h>
#include <bcmutils.h>
#include <pcicfg.h>
#include <wlioctl.h>
-#include <wlc_key.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
-#include <wlc_channel.h>
-#include <wlc_pub.h>
-#include <wlc_scb.h>
-#include <wl_dbg.h>
-#include <wl_export.h>
-
-#include <wl_mac80211.h>
-#include <linux/firmware.h>
-#include <wl_ucode.h>
-#include <d11ucode_ext.h>
+#include "wlc_cfg.h"
+#include "phy/phy_version.h"
+#include "wlc_key.h"
+#include "sbhndpio.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_channel.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wl_dbg.h"
+#include "wl_export.h"
+#include "wl_ucode.h"
+#include "d11ucode_ext.h"
+#include "wl_mac80211.h"
static void wl_timer(unsigned long data);
static void _wl_timer(wl_timer_t *t);
#ifndef _wl_mac80211_h_
#define _wl_mac80211_h_
-#include <wlc_types.h>
-
/* BMAC Note: High-only driver is no longer working in softirq context as it needs to block and
* sleep so perimeter lock has to be a semaphore instead of spinlock. This requires timers to be
* submitted to workqueue instead of being on kernel timer
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#include <linux/kernel.h>
-#include <linux/string.h>
-#include <bcmdefs.h>
-#include <wlc_cfg.h>
-#include <linux/module.h>
-#include <linux/pci.h>
+#include <linux/types.h>
+
+#include <proto/802.1d.h>
#include <osl.h>
+#include <bcmdefs.h>
#include <bcmutils.h>
#include <siutils.h>
#include <wlioctl.h>
-#include <wlc_pub.h>
-#include <wlc_key.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
-#include <wlc_mac80211.h>
-#include <wlc_alloc.h>
-#include <wl_dbg.h>
+
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wlc_types.h"
+#include "wlc_cfg.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_key.h"
+#include "wlc_alloc.h"
+#include "wl_dbg.h"
+#include "wlc_rate.h"
+#include "wlc_bsscfg.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_channel.h"
+#include "wlc_mac80211.h"
static struct wlc_bsscfg *wlc_bsscfg_malloc(struct osl_info *osh, uint unit);
static void wlc_bsscfg_mfree(struct osl_info *osh, struct wlc_bsscfg *cfg);
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#include <linux/kernel.h>
-#include <wlc_cfg.h>
-#include <bcmdefs.h>
+#include <net/mac80211.h>
+
+#include <proto/802.1d.h>
#include <osl.h>
+#include <bcmdefs.h>
#include <bcmutils.h>
#include <siutils.h>
#include <wlioctl.h>
#include <sbhnddma.h>
#include <hnddma.h>
#include <d11.h>
-#include <wlc_rate.h>
-#include <wlc_pub.h>
-#include <wlc_key.h>
-#include <wlc_mac80211.h>
-#include <wlc_phy_hal.h>
-#include <wlc_antsel.h>
-#include <wlc_scb.h>
-#include <net/mac80211.h>
-#include <wlc_ampdu.h>
-#include <wl_export.h>
-#include <wl_dbg.h>
+
+#include "wlc_types.h"
+#include "wlc_cfg.h"
+#include "wlc_rate.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_key.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_antsel.h"
+#include "wl_export.h"
+#include "wl_dbg.h"
+#include "wlc_bsscfg.h"
+#include "wlc_channel.h"
+#include "wlc_mac80211.h"
+#include "wlc_ampdu.h"
/*
* Disable AMPDU statistics counters for now
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/pci.h>
-#include <bcmdefs.h>
+
+#include <proto/802.1d.h>
#include <osl.h>
+#include <bcmdefs.h>
#include <bcmutils.h>
#include <siutils.h>
-#include <wlioctl.h>
-
#include <bcmdevs.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
-#include <d11.h>
-#include <wlc_rate.h>
-#include <wlc_key.h>
-#include <wlc_pub.h>
-#include <wl_dbg.h>
-#include <wlc_mac80211.h>
-#include <wlc_bmac.h>
-#include <wlc_phy_hal.h>
-#include <wl_export.h>
-#include <wlc_antsel.h>
-#include <wlc_phy_shim.h>
+#include <wlioctl.h>
+
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wlc_rate.h"
+#include "wlc_key.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wl_dbg.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_bmac.h"
+#include "wlc_channel.h"
+#include "wlc_bsscfg.h"
+#include "wlc_mac80211.h"
+#include "wl_export.h"
+#include "wlc_phy_shim.h"
+#include "wlc_antsel.h"
/* useful macros */
#define WLC_ANTSEL_11N_0(ant) ((((ant) & ANT_SELCFG_MASK) >> 4) & 0xf)
#include <linux/kernel.h>
-#include <wlc_cfg.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
-#include <bcmdefs.h>
-#include <osl.h>
+
#include <proto/802.11.h>
+#include <proto/802.1d.h>
+#include <osl.h>
+#include <bcmdefs.h>
+#include <bcmdevs.h>
#include <bcmwifi.h>
-#include <bcmutils.h>
#include <siutils.h>
+#include <bcmsrom.h>
+#include <bcmotp.h>
+#include <bcmutils.h>
#include <wlioctl.h>
#include <sbconfig.h>
#include <sbchipc.h>
#include <pcicfg.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
#include <hnddma.h>
#include <hndpmu.h>
-#include <d11.h>
-#include <wlc_rate.h>
-#include <wlc_pub.h>
-#include <wlc_channel.h>
-#include <bcmsrom.h>
-#include <wlc_key.h>
-#include <bcmdevs.h>
-/* BMAC_NOTE: a WLC_HIGH compile include of wlc.h adds in more structures and type
- * dependencies. Need to include these to files to allow a clean include of wlc.h
- * with WLC_HIGH defined.
- * At some point we may be able to skip the include of wlc.h and instead just
- * define a stub wlc_info and band struct to allow rpc calls to get the rpc handle.
- */
-#include <wlc_mac80211.h>
-#include <wlc_bmac.h>
-#include <wlc_phy_shim.h>
-#include <wlc_phy_hal.h>
-#include <wl_export.h>
+
+#include "wlc_types.h"
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wlc_cfg.h"
+#include "wlc_rate.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_key.h"
+#include "wlc_phy_shim.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_channel.h"
+#include "wlc_bsscfg.h"
+#include "wlc_mac80211.h"
+#include "wl_export.h"
#include "wl_ucode.h"
#include "d11ucode_ext.h"
-#include <bcmotp.h>
-
-/* BMAC_NOTE: With WLC_HIGH defined, some fns in this file make calls to high level
- * functions defined in the headers below. We should be eliminating those calls and
- * will be able to delete these include lines.
- */
-#include <wlc_antsel.h>
-
-#include <pcie_core.h>
-
-#include <wlc_alloc.h>
-#include <wl_dbg.h>
+#include "wlc_antsel.h"
+#include "pcie_core.h"
+#include "wlc_alloc.h"
+#include "wl_dbg.h"
+#include "wlc_bmac.h"
#define TIMER_INTERVAL_WATCHDOG_BMAC 1000 /* watchdog timer, in unit of ms */
#ifndef _WLC_BSSCFG_H_
#define _WLC_BSSCFG_H_
-#include <wlc_types.h>
-
/* Check if a particular BSS config is AP or STA */
#define BSSCFG_AP(cfg) (0)
#define BSSCFG_STA(cfg) (1)
/* forward declarations */
typedef struct wlc_bsscfg wlc_bsscfg_t;
-#include <wlc_rate.h>
-
#define NTXRATE 64 /* # tx MPDUs rate is reported for */
#define MAXMACLIST 64 /* max # source MAC matches */
#define BCN_TEMPLATE_COUNT 2
*/
#include <linux/kernel.h>
-#include <linux/string.h>
-#include <bcmdefs.h>
-#include <wlc_cfg.h>
-#include <osl.h>
+#include <linux/types.h>
#include <linux/module.h>
#include <linux/pci.h>
+
+#include <proto/802.1d.h>
+#include <osl.h>
+#include <bcmdefs.h>
#include <bcmutils.h>
#include <siutils.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
#include <wlioctl.h>
-#include <wlc_pub.h>
-#include <wlc_key.h>
-#include <wlc_mac80211.h>
-#include <wlc_bmac.h>
-#include <wlc_stf.h>
-#include <wlc_channel.h>
-#include <wl_dbg.h>
+
+#include "wlc_types.h"
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wlc_cfg.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_key.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_bmac.h"
+#include "wlc_rate.h"
+#include "wlc_channel.h"
+#include "wlc_bsscfg.h"
+#include "wlc_mac80211.h"
+#include "wlc_stf.h"
+#include "wl_dbg.h"
#define VALID_CHANNEL20_DB(wlc, val) wlc_valid_channel20_db((wlc)->cmi, val)
#define VALID_CHANNEL20_IN_BAND(wlc, bandunit, val) \
#ifndef _WLC_CHANNEL_H_
#define _WLC_CHANNEL_H_
-#include <wlc_phy_hal.h>
-
#define WLC_TXPWR_DB_FACTOR 4 /* conversion for phy txpwr cacluations that use .25 dB units */
struct wlc_info;
#include <linux/kernel.h>
#include <linux/ctype.h>
#include <linux/etherdevice.h>
-#include <linux/string.h>
+#include <net/mac80211.h>
+
+#include <proto/802.1d.h>
#include <bcmdefs.h>
#include <bcmdevs.h>
-#include <wlc_cfg.h>
#include <osl.h>
#include <bcmutils.h>
#include <bcmwifi.h>
#include <pcicfg.h>
#include <bcmsrom.h>
#include <wlioctl.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
#include <hnddma.h>
#include <hndpmu.h>
-#include <d11.h>
-#include <wlc_rate.h>
-#include <wlc_pub.h>
-#include <wlc_key.h>
-#include <wlc_bsscfg.h>
-#include <wlc_channel.h>
-#include <wlc_mac80211.h>
-#include <wlc_bmac.h>
-#include <wlc_scb.h>
-#include <wlc_phy_hal.h>
-#include <wlc_phy_shim.h>
-#include <wlc_antsel.h>
-#include <wlc_stf.h>
-#include <wlc_ampdu.h>
-#include <wl_export.h>
+
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wlc_types.h"
+#include "wlc_cfg.h"
+#include "wlc_rate.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_key.h"
+#include "wlc_bsscfg.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_channel.h"
+#include "wlc_mac80211.h"
+#include "wlc_bmac.h"
+#include "wlc_phy_hal.h"
+#include "wlc_phy_shim.h"
+#include "wlc_antsel.h"
+#include "wlc_stf.h"
+#include "wlc_ampdu.h"
+#include "wl_export.h"
#include "d11ucode_ext.h"
-#include <wlc_alloc.h>
-#include <net/mac80211.h>
-#include <wl_dbg.h>
+#include "wlc_alloc.h"
+#include "wl_dbg.h"
/*
* Disable statistics counting for WME
#ifndef _wlc_h_
#define _wlc_h_
-#include <wlioctl.h>
-#include <wlc_phy_hal.h>
-#include <wlc_channel.h>
-#include <wlc_bsscfg.h>
-#include <wlc_scb.h>
-
#define MA_WINDOW_SZ 8 /* moving average window size */
#define WL_HWRXOFF 38 /* chip rx buffer offset */
#define INVCHANNEL 255 /* invalid channel */
*/
#include <linux/kernel.h>
-#include <bcmdefs.h>
-#include <wlc_cfg.h>
#include <linux/module.h>
#include <linux/pci.h>
-#include <osl.h>
-#include <bcmutils.h>
#include <proto/802.11.h>
+#include <proto/802.1d.h>
+#include <osl.h>
+#include <bcmdefs.h>
+#include <bcmutils.h>
#include <bcmwifi.h>
#include <siutils.h>
#include <wlioctl.h>
#include <sbconfig.h>
#include <sbchipc.h>
#include <pcicfg.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
#include <hnddma.h>
#include <hndpmu.h>
-#include <d11.h>
-#include <wlc_rate.h>
-#include <wlc_pub.h>
-#include <wlc_channel.h>
-#include <bcmsrom.h>
-#include <wlc_key.h>
-
-#include <wlc_mac80211.h>
-
-#include <wlc_bmac.h>
-#include <wlc_phy_shim.h>
-#include <wlc_phy_hal.h>
-#include <wl_export.h>
-#include <wl_dbg.h>
+
+#include "wlc_types.h"
+#include "wl_dbg.h"
+#include "sbhndpio.h"
+#include "wlc_cfg.h"
+#include "d11.h"
+#include "wlc_rate.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_channel.h"
+#include "bcmsrom.h"
+#include "wlc_key.h"
+#include "wlc_bmac.h"
+#include "wlc_phy_hal.h"
+#include "wl_export.h"
+#include "wlc_bsscfg.h"
+#include "wlc_mac80211.h"
+#include "wlc_phy_shim.h"
/* PHY SHIM module specific state */
struct wlc_phy_shim_info {
#ifndef _wlc_pub_h_
#define _wlc_pub_h_
-#include <wlioctl.h>
-#include <wlc_types.h>
-#include <wlc_scb.h>
-
#define WLC_NUMRATES 16 /* max # of rates in a rateset */
#define MAXMULTILIST 32 /* max # multicast addresses */
#define D11_PHY_HDR_LEN 6 /* Phy header length - 6 bytes */
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
#include <linux/kernel.h>
+#include <linux/module.h>
+
+#include <proto/802.11.h>
+#include <proto/802.1d.h>
#include <bcmdefs.h>
-#include <wlc_cfg.h>
#include <osl.h>
-#include <linux/module.h>
#include <bcmutils.h>
#include <siutils.h>
#include <wlioctl.h>
-
-#include <sbhndpio.h>
#include <sbhnddma.h>
-#include <proto/802.11.h>
-#include <d11.h>
-#include <wlc_rate.h>
-#include <wl_dbg.h>
-#include <wlc_pub.h>
+
+#include "wlc_types.h"
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wl_dbg.h"
+#include "wlc_cfg.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_rate.h"
/* Rate info per rate: It tells whether a rate is ofdm or not and its phy_rate value */
const u8 rate_info[WLC_MAXRATE + 1] = {
#ifndef _wlc_scb_h_
#define _wlc_scb_h_
-#include <proto/802.1d.h>
-
extern bool wlc_aggregatable(struct wlc_info *wlc, u8 tid);
#define AMPDU_TX_BA_MAX_WSIZE 64 /* max Tx ba window size (in pdu) */
#include <linux/kernel.h>
#include <linux/module.h>
-#include <wlc_cfg.h>
+
+#include <proto/802.11.h>
+#include <proto/802.1d.h>
+
#include <bcmdefs.h>
#include <osl.h>
#include <bcmutils.h>
#include <siutils.h>
-#include <proto/802.11.h>
#include <wlioctl.h>
#include <bcmwifi.h>
-#include <sbhndpio.h>
#include <sbhnddma.h>
-#include <d11.h>
-#include <wlc_rate.h>
-#include <wlc_pub.h>
-#include <wlc_key.h>
-#include <wlc_channel.h>
-#include <wlc_bsscfg.h>
-#include <wlc_mac80211.h>
-#include <wlc_scb.h>
-#include <wl_export.h>
-#include <wlc_bmac.h>
-#include <wlc_stf.h>
-#include <wl_dbg.h>
+
+#include "wlc_types.h"
+#include "sbhndpio.h"
+#include "d11.h"
+#include "wl_dbg.h"
+#include "wlc_cfg.h"
+#include "wlc_rate.h"
+#include "wlc_scb.h"
+#include "wlc_pub.h"
+#include "wlc_key.h"
+#include "phy/wlc_phy_hal.h"
+#include "wlc_channel.h"
+#include "wlc_bsscfg.h"
+#include "wlc_mac80211.h"
+#include "wl_export.h"
+#include "wlc_bmac.h"
+#include "wlc_stf.h"
#define MIN_SPATIAL_EXPANSION 0
#define MAX_SPATIAL_EXPANSION 1