Zephyr API Documentation  2.7.0-rc2
A Scalable Open Source RTOS
csk_wifi_819s.c File Reference

Data Structures

struct  csk_wifi_ctrl_msg_t
 
struct  csk_wifi_config
 
struct  csk_wifi_object_t
 

Macros

#define DT_DRV_COMPAT   listenai_csk_wifi
 
#define WIFI_MAX_SCAN_NUM   CONFIG_MAX_SCAN_APS_NUM
 
#define WIFI_MAX_TIMEOUT_SEC   CONFIG_WLAN_API_TIMEOUT
 
#define MACTOSTR(mac)   (mac)[0], (mac)[1], (mac)[2], (mac)[3], (mac)[4], (mac)[5]
 
#define MACSTR   "%02x:%02x:%02x:%02x:%02x:%02x"
 
#define EVENT_SUBTYPE(event)   ((uint16_t)((event) & 0xFFFF))
 

Enumerations

enum  wifi_ctrl_msg_type_t { WIFI_COMMAND , WIFI_EVENT , WIFI_COMMAND , WIFI_EVENT }
 

Functions

 LOG_MODULE_DECLARE (csk_wifi, CONFIG_WIFI_LOG_LEVEL)
 
 K_MSGQ_DEFINE (xrwlan_msgq, sizeof(uint32_t), 1, 4)
 
 K_MSGQ_DEFINE (wifi_result_msgq, sizeof(wifi_ret_msg_t), 1, 4)
 
 K_MSGQ_DEFINE (wifi_interactive_msgq, sizeof(csk_wifi_ctrl_msg_t), 4, 4)
 
static void wifi_control_thread (void *, void *, void *)
 
 K_SEM_DEFINE (init_sem, 0, 1)
 
 K_THREAD_DEFINE (wifi_ctrl_thread_id, CONFIG_WIFI_CTRL_STACK_SIZE, wifi_control_thread, NULL, NULL, NULL, CONFIG_WIFI_CTRL_PRIORITY, 0, 0)
 
static void csk_wifi_receive_pkt (struct mbuf *mb, uint16_t len, void *arg)
 
const struct devicewifi_obj_get_dev (csk_wifi_mode_t mode)
 
wifi_sta_state_machine_t wifi_obj_get_sm (void)
 
static void wifi_obj_set_sm (wifi_sta_state_machine_t sm)
 
static void wifi_reset_result (void)
 
static int wifi_give_result (wifi_ret_msg_t *ret_msg, bool async_mode)
 
int wifi_take_result (wifi_ret_msg_t *ret_msg, k_timeout_t timeout)
 
void wlan_event_clear (void)
 
int wlan_event_give (wlan_event_t *event)
 
int wlan_event_take (wlan_event_t *event, k_timeout_t timeout)
 
int wifi_send_command (const struct device *dev, wifi_cmd_t command, k_timeout_t timeouts, bool async_mode)
 
csk_wifi_encryption_mode_t wifi_get_encryption_mode (csk_wifi_encryption_mode_t mode)
 
enum wlan_mode wifi_get_wlan_mode (csk_wifi_mode_t mode)
 
static int wifi_send_event (const struct device *dev, csk_wifi_event_t event, void *event_data, uint32_t data_len, k_timeout_t timeouts)
 
static int wifi_get_message (csk_wifi_ctrl_msg_t *msg, k_timeout_t timeouts)
 
int wifi_sm_on_connect_scan_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_connect_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_auth_exception_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_assoc_exception_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_handshake_exception_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_disconnect_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_connected_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_disconnected_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_scan_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_scandone_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_cmdtimeout_handler (const struct device *dev, wlan_event_t current_event)
 
int wifi_sm_on_startup_handler (const struct device *dev, wlan_event_t current_event)
 
void wifi_sta_sm_handler (wlan_event_t current_event)
 
static void wlan_event_handler (uint32_t param0, uint32_t param1)
 
static int wifi_driver_init (void)
 
static int wifi_driver_deinit (void)
 
static void wifi_virtual_netif_init (const struct device *dev)
 
static void wifi_virtual_netif_deinit (const struct device *dev)
 
static int wifi_sta_connect (const struct device *dev)
 
static int wifi_sta_get_connected_info (const struct device *dev)
 
static int wifi_sta_disconnect (const struct device *dev)
 
static int wifi_scan_list (const struct device *dev, int *ap_count, csk_wifi_scan_info_t **ap_list)
 
static void wifi_command_handler (const struct device *dev, wifi_req_t req)
 
static void wifi_async_event_handler (const struct device *dev, csk_wifi_event_t event)
 
static void csk_wifi_netif_init (struct net_if *netif)
 
static int csk_wifi_send_pkt (const struct device *dev, struct net_pkt *pkt)
 
static int csk_eth_dev_init (const struct device *dev)
 

Variables

static csk_wifi_object_t s_csk_wifi_obj = {0}
 
const char * WIFI_STA_SM_STRINGS []
 
const char * WLAN_EVENT_STRINGS []
 
static const struct ethernet_api csk_eth_apis
 

Macro Definition Documentation

◆ DT_DRV_COMPAT

#define DT_DRV_COMPAT   listenai_csk_wifi

◆ EVENT_SUBTYPE

#define EVENT_SUBTYPE (   event)    ((uint16_t)((event) & 0xFFFF))

◆ MACSTR

#define MACSTR   "%02x:%02x:%02x:%02x:%02x:%02x"

◆ MACTOSTR

#define MACTOSTR (   mac)    (mac)[0], (mac)[1], (mac)[2], (mac)[3], (mac)[4], (mac)[5]

◆ WIFI_MAX_SCAN_NUM

#define WIFI_MAX_SCAN_NUM   CONFIG_MAX_SCAN_APS_NUM

◆ WIFI_MAX_TIMEOUT_SEC

#define WIFI_MAX_TIMEOUT_SEC   CONFIG_WLAN_API_TIMEOUT

Enumeration Type Documentation

◆ wifi_ctrl_msg_type_t

Enumerator
WIFI_COMMAND 
WIFI_EVENT 
WIFI_COMMAND 
WIFI_EVENT 

Function Documentation

◆ csk_eth_dev_init()

static int csk_eth_dev_init ( const struct device dev)
static

◆ csk_wifi_netif_init()

static void csk_wifi_netif_init ( struct net_if netif)
static

◆ csk_wifi_receive_pkt()

static void csk_wifi_receive_pkt ( struct mbuf *  mb,
uint16_t  len,
void arg 
)
static

◆ csk_wifi_send_pkt()

static int csk_wifi_send_pkt ( const struct device dev,
struct net_pkt pkt 
)
static

◆ K_MSGQ_DEFINE() [1/3]

K_MSGQ_DEFINE ( wifi_interactive_msgq  ,
sizeof(csk_wifi_ctrl_msg_t ,
,
 
)

◆ K_MSGQ_DEFINE() [2/3]

K_MSGQ_DEFINE ( wifi_result_msgq  ,
sizeof(wifi_ret_msg_t ,
,
 
)

◆ K_MSGQ_DEFINE() [3/3]

K_MSGQ_DEFINE ( xrwlan_msgq  ,
sizeof(uint32_t ,
,
 
)

◆ K_SEM_DEFINE()

K_SEM_DEFINE ( init_sem  ,
,
 
)

◆ K_THREAD_DEFINE()

K_THREAD_DEFINE ( wifi_ctrl_thread_id  ,
CONFIG_WIFI_CTRL_STACK_SIZE  ,
wifi_control_thread  ,
NULL  ,
NULL  ,
NULL  ,
CONFIG_WIFI_CTRL_PRIORITY  ,
,
 
)

◆ LOG_MODULE_DECLARE()

LOG_MODULE_DECLARE ( csk_wifi  ,
CONFIG_WIFI_LOG_LEVEL   
)

◆ wifi_async_event_handler()

static void wifi_async_event_handler ( const struct device dev,
csk_wifi_event_t  event 
)
static

◆ wifi_command_handler()

static void wifi_command_handler ( const struct device dev,
wifi_req_t  req 
)
static

◆ wifi_control_thread()

static void wifi_control_thread ( void arg1,
void arg2,
void arg3 
)
static

◆ wifi_driver_deinit()

static int wifi_driver_deinit ( void  )
static

◆ wifi_driver_init()

static int wifi_driver_init ( void  )
static

◆ wifi_get_encryption_mode()

csk_wifi_encryption_mode_t wifi_get_encryption_mode ( csk_wifi_encryption_mode_t  mode)

◆ wifi_get_message()

static int wifi_get_message ( csk_wifi_ctrl_msg_t msg,
k_timeout_t  timeouts 
)
inlinestatic

◆ wifi_get_wlan_mode()

enum wlan_mode wifi_get_wlan_mode ( csk_wifi_mode_t  mode)

◆ wifi_give_result()

static int wifi_give_result ( wifi_ret_msg_t ret_msg,
bool  async_mode 
)
inlinestatic

◆ wifi_obj_get_dev()

const struct device * wifi_obj_get_dev ( csk_wifi_mode_t  mode)

◆ wifi_obj_get_sm()

wifi_sta_state_machine_t wifi_obj_get_sm ( void  )

◆ wifi_obj_set_sm()

static void wifi_obj_set_sm ( wifi_sta_state_machine_t  sm)
inlinestatic

◆ wifi_reset_result()

static void wifi_reset_result ( void  )
inlinestatic

◆ wifi_scan_list()

static int wifi_scan_list ( const struct device dev,
int *  ap_count,
csk_wifi_scan_info_t **  ap_list 
)
static

-2 pending scan schedule -reject new request -1 interface is disabled -reject new request

◆ wifi_send_command()

int wifi_send_command ( const struct device dev,
wifi_cmd_t  command,
k_timeout_t  timeouts,
bool  async_mode 
)

◆ wifi_send_event()

static int wifi_send_event ( const struct device dev,
csk_wifi_event_t  event,
void event_data,
uint32_t  data_len,
k_timeout_t  timeouts 
)
inlinestatic

◆ wifi_sm_connected_handler()

int wifi_sm_connected_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_disconnected_handler()

int wifi_sm_disconnected_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_assoc_exception_handler()

int wifi_sm_on_assoc_exception_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_auth_exception_handler()

int wifi_sm_on_auth_exception_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_cmdtimeout_handler()

int wifi_sm_on_cmdtimeout_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_connect_handler()

int wifi_sm_on_connect_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_connect_scan_handler()

int wifi_sm_on_connect_scan_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_disconnect_handler()

int wifi_sm_on_disconnect_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_handshake_exception_handler()

int wifi_sm_on_handshake_exception_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_scan_handler()

int wifi_sm_on_scan_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_on_startup_handler()

int wifi_sm_on_startup_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sm_scandone_handler()

int wifi_sm_scandone_handler ( const struct device dev,
wlan_event_t  current_event 
)

◆ wifi_sta_connect()

static int wifi_sta_connect ( const struct device dev)
static

◆ wifi_sta_disconnect()

static int wifi_sta_disconnect ( const struct device dev)
static

◆ wifi_sta_get_connected_info()

static int wifi_sta_get_connected_info ( const struct device dev)
static

◆ wifi_sta_sm_handler()

void wifi_sta_sm_handler ( wlan_event_t  current_event)

◆ wifi_take_result()

int wifi_take_result ( wifi_ret_msg_t ret_msg,
k_timeout_t  timeout 
)

◆ wifi_virtual_netif_deinit()

static void wifi_virtual_netif_deinit ( const struct device dev)
static

◆ wifi_virtual_netif_init()

static void wifi_virtual_netif_init ( const struct device dev)
static

◆ wlan_event_clear()

void wlan_event_clear ( void  )

◆ wlan_event_give()

int wlan_event_give ( wlan_event_t *  event)

◆ wlan_event_handler()

static void wlan_event_handler ( uint32_t  param0,
uint32_t  param1 
)
static

◆ wlan_event_take()

int wlan_event_take ( wlan_event_t *  event,
k_timeout_t  timeout 
)

Variable Documentation

◆ csk_eth_apis

const struct ethernet_api csk_eth_apis
static
Initial value:
= {
.iface_api.init = csk_wifi_netif_init,
}
static void csk_wifi_netif_init(struct net_if *netif)
Definition: csk_wifi_819s.c:885
static int csk_wifi_send_pkt(const struct device *dev, struct net_pkt *pkt)
Definition: csk_wifi_819s.c:895

◆ s_csk_wifi_obj

csk_wifi_object_t s_csk_wifi_obj = {0}
static

◆ WIFI_STA_SM_STRINGS

const char* WIFI_STA_SM_STRINGS[]
Initial value:
= {
}
#define FOREACH_WIFI_STA_SM(WIFI_SM)
Definition: csk_wifi_priv.h:57
#define GENERATE_STRING(STRING)
Definition: csk_wifi_priv.h:95

◆ WLAN_EVENT_STRINGS

const char* WLAN_EVENT_STRINGS[]
Initial value:
= {
}
#define FOREACH_WLAN_EVENT(WLAN_EVENT)
Definition: csk_wifi_priv.h:72