diff options
| author | Yuval Adam <_@yuv.al> | 2017-08-30 08:25:59 +0000 |
|---|---|---|
| committer | Yuval Adam <_@yuv.al> | 2017-08-30 08:25:59 +0000 |
| commit | 8e4bff4cab0ddac6060645b0715210484d02ff40 (patch) | |
| tree | 3a5c3024371a04692a3a6d9974d001cdff8ebf84 /drivers/net/wireless/bcmdhd/wl_android.h | |
Diffstat (limited to 'drivers/net/wireless/bcmdhd/wl_android.h')
| -rw-r--r-- | drivers/net/wireless/bcmdhd/wl_android.h | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/drivers/net/wireless/bcmdhd/wl_android.h b/drivers/net/wireless/bcmdhd/wl_android.h new file mode 100644 index 00000000..87e672fc --- /dev/null +++ b/drivers/net/wireless/bcmdhd/wl_android.h @@ -0,0 +1,98 @@ +/* + * Linux cfg80211 driver - Android related functions + * + * $Copyright Open Broadcom Corporation$ + * + * $Id: wl_android.h 487838 2014-06-27 05:51:44Z $ + */ + +#include <linux/module.h> +#include <linux/netdevice.h> +#include <wldev_common.h> + +/* If any feature uses the Generic Netlink Interface, put it here to enable WL_GENL + * automatically + */ +#if defined(WL_SDO) || defined(BT_WIFI_HANDOVER) || defined(WL_NAN) +#define WL_GENL +#endif + + +#ifdef WL_GENL +#include <net/genetlink.h> +#endif + +/** + * Android platform dependent functions, feel free to add Android specific functions here + * (save the macros in dhd). Please do NOT declare functions that are NOT exposed to dhd + * or cfg, define them as static in wl_android.c + */ + +/** + * wl_android_init will be called from module init function (dhd_module_init now), similarly + * wl_android_exit will be called from module exit function (dhd_module_cleanup now) + */ +int wl_android_init(void); +int wl_android_exit(void); +void wl_android_post_init(void); +int wl_android_wifi_on(struct net_device *dev); +int wl_android_wifi_off(struct net_device *dev); +int wl_android_priv_cmd(struct net_device *net, struct ifreq *ifr, int cmd); + +#ifdef WL_GENL +typedef struct bcm_event_hdr { + u16 event_type; + u16 len; +} bcm_event_hdr_t; + +/* attributes (variables): the index in this enum is used as a reference for the type, + * userspace application has to indicate the corresponding type + * the policy is used for security considerations + */ +enum { + BCM_GENL_ATTR_UNSPEC, + BCM_GENL_ATTR_STRING, + BCM_GENL_ATTR_MSG, + __BCM_GENL_ATTR_MAX +}; +#define BCM_GENL_ATTR_MAX (__BCM_GENL_ATTR_MAX - 1) + +/* commands: enumeration of all commands (functions), + * used by userspace application to identify command to be ececuted + */ +enum { + BCM_GENL_CMD_UNSPEC, + BCM_GENL_CMD_MSG, + __BCM_GENL_CMD_MAX +}; +#define BCM_GENL_CMD_MAX (__BCM_GENL_CMD_MAX - 1) + +/* Enum values used by the BCM supplicant to identify the events */ +enum { + BCM_E_UNSPEC, + BCM_E_SVC_FOUND, + BCM_E_DEV_FOUND, + BCM_E_DEV_LOST, + BCM_E_DEV_BT_WIFI_HO_REQ, + BCM_E_MAX +}; + +s32 wl_genl_send_msg(struct net_device *ndev, u32 event_type, + u8 *string, u16 len, u8 *hdr, u16 hdrlen); +#endif /* WL_GENL */ +s32 wl_netlink_send_msg(int pid, int type, int seq, void *data, size_t size); + +/* hostap mac mode */ +#define MACLIST_MODE_DISABLED 0 +#define MACLIST_MODE_DENY 1 +#define MACLIST_MODE_ALLOW 2 + +/* max number of assoc list */ +#define MAX_NUM_OF_ASSOCLIST 64 + +/* max number of mac filter list + * restrict max number to 10 as maximum cmd string size is 255 + */ +#define MAX_NUM_MAC_FILT 10 + +int wl_android_set_ap_mac_list(struct net_device *dev, int macmode, struct maclist *maclist); |
