00001 00013 #ifndef _SCANU_TASK_H_ 00014 #define _SCANU_TASK_H_ 00015 00016 #include "co_int.h" 00017 // inclusion to retrieve the task index 00018 #include "ke_task.h" 00019 // for mac_addr and mac_ssid 00020 #include "mac.h" 00021 #include "scan.h" 00022 00029 00030 #define SCANU_IDX_MAX 1 00031 00033 enum 00034 { 00036 SCANU_IDLE, 00038 SCANU_SCANNING, 00040 SCANU_STATE_MAX 00041 }; 00042 00044 enum 00045 { 00047 SCANU_START_REQ = KE_FIRST_MSG(TASK_SCANU), 00049 SCANU_START_CFM, 00051 SCANU_JOIN_REQ, 00053 SCANU_JOIN_CFM, 00055 SCANU_RESULT_IND, 00057 SCANU_GET_SCAN_RESULT_REQ, 00059 SCANU_GET_SCAN_RESULT_CFM, 00060 }; 00061 00063 struct scanu_start_req 00064 { 00066 struct mac_chan_def chan[SCAN_CHANNEL_MAX]; 00068 struct mac_ssid ssid[SCAN_SSID_MAX]; 00070 struct mac_addr bssid; 00073 uint32_t add_ies; 00075 uint16_t add_ie_len; 00077 uint8_t vif_idx; 00079 uint8_t chan_cnt; 00081 uint8_t ssid_cnt; 00083 bool no_cck; 00084 }; 00085 00087 struct scanu_start_cfm 00088 { 00090 uint8_t vif_idx; 00092 uint8_t status; 00094 uint8_t result_cnt; 00095 }; 00096 00098 struct scanu_get_scan_result_req 00099 { 00101 uint8_t idx; 00102 }; 00103 00105 struct scanu_get_scan_result_cfm 00106 { 00108 struct mac_scan_result scan_result; 00109 }; 00110 00111 extern const struct ke_state_handler scanu_state_handler[SCANU_STATE_MAX]; 00112 00113 extern const struct ke_state_handler scanu_default_handler; 00114 00115 extern ke_state_t scanu_state[SCANU_IDX_MAX]; 00116 00118 00119 #endif // _SCANU_TASK_H_ 00120 00121
1.6.1