mirror of
https://github.com/nxp-imx/mwifiex.git
synced 2024-05-14 00:59:21 +00:00
33d9f8e4f3
Add initial MxM (multi-chip-multi-interface) wifi driver. The driver target is to support 88w8987/88w8997/88w9098, currently it only supports 88w8987. The MxM wifi driver is merged from below repo and applied some patches for block and build issues. ssh://git@bitbucket.sw.nxp.com/wcswrel/ rel-nxp-wifi-fp92-bt-fp85-linux-android-mxm4x17169-gpl.git The sdk only includes application, the driver already is merged into linux kernel. Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
156 lines
4.4 KiB
C
156 lines
4.4 KiB
C
/** @file mlanscanagent.h
|
|
*
|
|
* @brief This files contains mlanutl scanagent command handling.
|
|
*
|
|
*
|
|
* Copyright 2014-2020 NXP
|
|
*
|
|
* NXP CONFIDENTIAL
|
|
* The source code contained or described herein and all documents related to
|
|
* the source code (Materials) are owned by NXP, its
|
|
* suppliers and/or its licensors. Title to the Materials remains with NXP,
|
|
* its suppliers and/or its licensors. The Materials contain
|
|
* trade secrets and proprietary and confidential information of NXP, its
|
|
* suppliers and/or its licensors. The Materials are protected by worldwide copyright
|
|
* and trade secret laws and treaty provisions. No part of the Materials may be
|
|
* used, copied, reproduced, modified, published, uploaded, posted,
|
|
* transmitted, distributed, or disclosed in any way without NXP's prior
|
|
* express written permission.
|
|
*
|
|
* No license under any patent, copyright, trade secret or other intellectual
|
|
* property right is granted to or conferred upon you by disclosure or delivery
|
|
* of the Materials, either expressly, by implication, inducement, estoppel or
|
|
* otherwise. Any license under such intellectual property rights must be
|
|
* express and approved by NXP in writing.
|
|
*
|
|
*/
|
|
/************************************************************************
|
|
Change log:
|
|
08/11/2009: initial version
|
|
************************************************************************/
|
|
|
|
#ifndef _MLAN_SCANAGENT_H_
|
|
#define _MLAN_SCANAGENT_H_
|
|
|
|
typedef struct {
|
|
/** Action GET or SET */
|
|
t_u16 action;
|
|
/** scan interval */
|
|
t_u16 scan_interval;
|
|
} __ATTRIB_PACK__ HostCmd_DS_SCANAGENT_CONFIG_PROFILE_SCAN;
|
|
|
|
typedef struct {
|
|
t_u32 scan_req_id_out;
|
|
/**< Scan request id */
|
|
t_u32 delay; /**< Delay */
|
|
t_u32 chan_group; /**< Channel Group */
|
|
t_u16 scan_type; /**< Scan type */
|
|
t_u16 reserved; /**< Reserved */
|
|
|
|
t_u8 tlv_buffer[1]; /**< Rest is TLV buffer */
|
|
|
|
/* MrvlIEtypes_SsIdParamSet_t
|
|
* MrvlIEtypes_Bssid_List_t
|
|
* MrvlIEtypes_ConfigScanTiming_t
|
|
*/
|
|
} __ATTRIB_PACK__ HostCmd_DS_SCANAGENT_SCAN_EXEC;
|
|
|
|
typedef struct {
|
|
/** Action Set or get */
|
|
t_u16 action;
|
|
/** Reserved */
|
|
t_u16 reserved;
|
|
/** Table age limit */
|
|
t_u16 table_age_limit;
|
|
/** Table hold limit */
|
|
t_u16 table_hold_limit;
|
|
} __ATTRIB_PACK__ HostCmd_DS_SCANAGENT_SCAN_TABLE_LIMITS;
|
|
|
|
typedef struct {
|
|
/** Action Set or get */
|
|
t_u16 action;
|
|
/** TLV buffer starts here */
|
|
t_u8 tlv_buffer[1];
|
|
/* MrvlIEtypes_ConfigScanTiming_t */
|
|
} __ATTRIB_PACK__ HostCmd_DS_SCANAGENT_CONFIG_TIMING;
|
|
|
|
typedef struct {
|
|
/** HostCmd_DS_ScanagentTableMaintenance_e action */
|
|
t_u16 action;
|
|
/** Reserved */
|
|
t_u16 reserved;
|
|
/** Request Id, 0 to disable */
|
|
t_u32 scan_request_id;
|
|
/** Age, 0 to disable */
|
|
t_u32 age;
|
|
/** TLV Buffer follows */
|
|
t_u8 tlv_buffer[1];
|
|
|
|
/* MrvlIEtypes_SsIdParamSet_t
|
|
* MrvlIEtypes_Bssid_List_t
|
|
*/
|
|
} __ATTRIB_PACK__ HostCmd_DS_SCANAGENT_TABLE_MAINTENANCE;
|
|
|
|
/** ENUM definition: Scanagent Table Maintenance */
|
|
typedef enum {
|
|
SCAN_TABLE_OP_INVALID = 0,
|
|
|
|
SCAN_TABLE_OP_LOCK = 1,
|
|
SCAN_TABLE_OP_UNLOCK = 2,
|
|
SCAN_TABLE_OP_PURGE = 3,
|
|
|
|
} __ATTRIB_PACK__ HostCmd_DS_ScanagentTableMaintenance_e;
|
|
|
|
/** MrvlIEtypes_SsIdParamSet_t */
|
|
typedef struct _MrvlIEtypes_SsIdParamSet_t {
|
|
/** Header */
|
|
MrvlIEtypesHeader_t header;
|
|
/** SSID */
|
|
t_u8 ssid[1];
|
|
} __ATTRIB_PACK__ MrvlIEtypes_SsIdParamSet_t;
|
|
|
|
/** _MrvlIEtypes_Bssid_List_t */
|
|
typedef struct _MrvlIEtypes_Bssid_List_t {
|
|
/** Header */
|
|
MrvlIEtypesHeader_t header;
|
|
/** BSSID */
|
|
t_u8 bssid[ETH_ALEN];
|
|
} __ATTRIB_PACK__ MrvlIEtypes_Bssid_List_t;
|
|
|
|
typedef struct {
|
|
/** Header */
|
|
MrvlIEtypesHeader_t header;
|
|
|
|
t_u32 mode; /**< Mode */
|
|
t_u32 dwell; /**< Dwell */
|
|
t_u32 max_off; /**< Max. off */
|
|
t_u32 min_link;/**< Minimum Link */
|
|
t_u32 rsp_timeout;
|
|
/**< Rsp Timeout */
|
|
|
|
} __ATTRIB_PACK__ MrvlIEtypes_ConfigScanTiming_t;
|
|
|
|
/** ENUM definition: ScanAgentScanType */
|
|
typedef enum {
|
|
CONFIG_SITE_SURVEY = 0,
|
|
CONFIG_NEIGHBOR = 1,
|
|
CONFIG_PROFILE = 2,
|
|
CONFIG_ARBITRARY_CHANNEL = 3,
|
|
|
|
} __ATTRIB_PACK__ HostCmd_DS_ScanagentScanType_e;
|
|
|
|
/** ENUM definition: ScanAgentScanTimingMode */
|
|
typedef enum {
|
|
TIMING_MODE_INVALID = 0,
|
|
|
|
TIMING_MODE_DISCONNECTED = 1,
|
|
TIMING_MODE_ADHOC = 2,
|
|
TIMING_MODE_FULL_POWER = 3,
|
|
TIMING_MODE_IEEE_PS = 4,
|
|
TIMING_MODE_PERIODIC_PS = 5,
|
|
|
|
} __ATTRIB_PACK__HostCmd_DS_ScanagentTimingMode_e;
|
|
|
|
int process_host_cmd_resp(char *cmd_name, t_u8 *buf);
|
|
#endif /* _MLAN_SCANAGENT_H_ */
|