wifi8 2.0.0.0
wifi8_types.h File Reference
#include "stdint.h"

Go to the source code of this file.

Data Structures

struct  wifi8_m2m_wifi1x_hdr_t
 
struct  wifi8_auth1x_mschap2_t
 
struct  wifi8_sockaddr_t
 
struct  wifi8_socket_buffer_t
 
struct  wifi8_in_addr_t
 
struct  wifi8_sockaddr_in_t
 
struct  wifi8_socket_recv_msg_t
 
struct  wifi8_socket_info_t
 
struct  wifi8_m2m_ap_config_t
 
struct  wifi8_network_id_t
 
struct  wifi8_m2m_rev_t
 
struct  wifi8_sock_addr_t
 
struct  wifi8_send_cmd_t
 
struct  wifi8_gp_regs_t
 
struct  wifi8_m2m_wifi_rx_packet_info_t
 
struct  wifi8_m2m_wifi_state_changed_t
 
struct  wifi8_m2m_scan_done_t
 
struct  wifi8_m2m_wps_info_t
 
struct  wifi8_m2m_wifiscan_result_t
 
struct  wifi8_listen_cmd_t
 
struct  wifi8_socket_bind_msg_t
 
struct  wifi8_bind_cmd_t
 
struct  wifi8_ssl_socket_create_cmd_t
 
struct  wifi8_recv_cmd_t
 
struct  wifi8_listen_reply_t
 
struct  wifi8_close_cmd_t
 
struct  wifi8_socket_t
 
struct  wifi8_bind_reply_t
 
struct  wifi8_socket_listen_msg_t
 
struct  wifi8_socket_accept_msg_t
 
struct  wifi8_connect_reply_t
 
struct  wifi8_connect_alpn_reply_t
 
struct  wifi8_socket_connect_msg_t
 
struct  wifi8_m2m_wifi_wep_params_t
 
struct  wifi8_m2m_ap_config_ext_t
 
struct  wifi8_m2m_ap_mode_config_t
 
struct  wifi8_m2m_provision_mode_config_t
 
struct  wifi8_m2m_wifi_wep_t
 
struct  wifi8_m2m_req_scan_result_t
 
struct  wifi8_m2m_scan_t
 
struct  wifi8_m2m_wifi_psk_t
 
struct  wifi8_auth_psk_t
 
struct  wifi8_auth_wep_t
 
struct  wifi8_m2m_conn_cred_hdr_t
 
struct  wifi8_m2m_conn_cred_cmn_t
 
struct  wifi8_m2m_wifi_wep_params_legacy_1_2_t
 
union  wifi8_m2m_wifi_auth_legacy_1_2_t
 
struct  wifi8_m2m_wifi_conn_hdr_t
 
struct  wifi8_m2m_wifi_sec_info_legacy_1_2_t
 
struct  wifi8_m2m_wifi_connect_legacy_1_2_t
 
struct  wifi8_nm_bus_capabilities_t
 
struct  wifi8_dns_reply_t
 
struct  wifi8_recv_reply_t
 
struct  wifi8_send_reply_t
 
struct  wifi8_ping_reply_t
 
struct  wifi8_accept_reply_t
 
struct  wifi8_connect_cmd_t
 
struct  wifi8_m2m_conn_info_t
 
struct  wifi8_m2mip_config_t
 
struct  wifi8_m2m_provision_info_t
 
struct  wifi8_m2m_default_conn_resp_t
 
struct  wifi8_m2m_ble_api_msg_t
 
struct  wifi8_prng_t
 
struct  wifi8_m2m_gain_table_rsp_t
 
struct  wifi8_m2m_generic_resp_t
 
struct  wifi8_m2m_gain_table_t
 
struct  wifi8_hif_hdr_t
 
struct  wifi8_system_time_t
 
struct  wifi8_eth_init_param_t
 
struct  wifi8_init_param_t
 

Macros

#define M2M_STA_CMD_BASE   4
 
#define M2M_CONFIG_CMD_BASE
 
#define M2M_AP_CMD_BASE   7
 
#define M2M_SERVER_CMD_BASE   10
 
#define M2M_GEN_CMD_BASE   10
 
#define M2M_OTA_CMD_BASE   100
 
#define WIFI8_CMD_INTERNAL_WRITE   0xc3
 
#define WIFI8_CMD_INTERNAL_READ   0xc4
 
#define WIFI8_CMD_DMA_EXT_WRITE   0xc7
 
#define WIFI8_CMD_DMA_EXT_READ   0xc8
 
#define WIFI8_CMD_SINGLE_WRITE   0xc9
 
#define WIFI8_CMD_SINGLE_READ   0xca
 
#define WIFI8_CMD_RESET   0xcf
 
#define WIFI8_SPI_RESP_RETRY_COUNT   (10)
 
#define WIFI8_SPI_RETRY_COUNT   (10)
 
#define WIFI8_DATA_PKT_SZ_256   256
 
#define WIFI8_DATA_PKT_SZ_512   512
 
#define WIFI8_DATA_PKT_SZ_1K   1024
 
#define WIFI8_DATA_PKT_SZ_4K   (4 * 1024)
 
#define WIFI8_DATA_PKT_SZ_8K   (8 * 1024)
 
#define WIFI8_DATA_PKT_SZ   WIFI8_DATA_PKT_SZ_8K
 
#define PROGRAM_START   0x26961735ul
 
#define BOOT_SUCCESS   0x10add09eul
 
#define BOOT_START   0x12345678ul
 
#define NBIT31   (0x80000000ul)
 
#define NBIT30   (0x40000000ul)
 
#define NBIT29   (0x20000000ul)
 
#define NBIT28   (0x10000000ul)
 
#define NBIT27   (0x08000000ul)
 
#define NBIT26   (0x04000000ul)
 
#define NBIT25   (0x02000000ul)
 
#define NBIT24   (0x01000000ul)
 
#define NBIT23   (0x00800000ul)
 
#define NBIT22   (0x00400000ul)
 
#define NBIT21   (0x00200000ul)
 
#define NBIT20   (0x00100000ul)
 
#define NBIT19   (0x00080000ul)
 
#define NBIT18   (0x00040000ul)
 
#define NBIT17   (0x00020000ul)
 
#define NBIT16   (0x00010000ul)
 
#define NBIT15   (0x00008000ul)
 
#define NBIT14   (0x00004000ul)
 
#define NBIT13   (0x00002000ul)
 
#define NBIT12   (0x00001000ul)
 
#define NBIT11   (0x00000800ul)
 
#define NBIT10   (0x00000400ul)
 
#define NBIT9   (0x00000200ul)
 
#define NBIT8   (0x00000100ul)
 
#define NBIT7   (0x00000080ul)
 
#define NBIT6   (0x00000040ul)
 
#define NBIT5   (0x00000020ul)
 
#define NBIT4   (0x00000010ul)
 
#define NBIT3   (0x00000008ul)
 
#define NBIT2   (0x00000004ul)
 
#define NBIT1   (0x00000002ul)
 
#define NBIT0   (0x00000001ul)
 
#define NMI_PERIPH_REG_BASE   0x1000
 
#define NMI_CHIPID   (NMI_PERIPH_REG_BASE)
 
#define rNMI_GP_REG_0   (0x149c)
 
#define rNMI_GP_REG_1   (0x14A0)
 
#define rNMI_GLB_RESET   (0x1400)
 
#define rNMI_BOOT_RESET_MUX   (0x1118)
 
#define NMI_STATE_REG   (0x108c)
 
#define BOOTROM_REG   (0xc000cul)
 
#define NMI_REV_REG   (0x207acul) /*Also, Used to load ATE firmware from SPI Flash and to ensure that it is running too*/
 
#define M2M_WAIT_FOR_HOST_REG   (0x207bcul)
 
#define M2M_FINISH_INIT_STATE   0x02532636ul
 
#define M2M_FINISH_BOOT_ROM   0x10add09eul
 
#define M2M_START_FIRMWARE   0xef522f61ul
 
#define M2M_START_PS_FIRMWARE   0x94992610ul
 
#define M2M_ATE_FW_START_VALUE   (0x3C1CD57Dul) /*Also, Change this value in boot_firmware if it will be changed here*/
 
#define M2M_ATE_FW_IS_UP_VALUE   (0xD75DC1C3ul) /*Also, Change this value in ATE (Burst) firmware if it will be changed here*/
 
#define REV_2B0   (0x2B0)
 
#define REV_B0   (0x2B0)
 
#define REV_3A0   (0x3A0)
 
#define CHIP_ID_3000D   (0x3000D0ul)
 
#define GET_CHIPID()   nmi_get_chipid()
 
#define ISNMC1000(id)   (((id & 0xfffff000ul) == 0x100000ul) ? 1 : 0)
 
#define ISNMC1500(id)   (((id & 0xfffff000ul) == 0x150000ul) ? 1 : 0)
 
#define ISNMC3400(id)   (((id & 0xfff0f000ul) == 0x300000ul) ? 1 : 0)
 
#define REV(id)   (((id)&0x00000ffful))
 
#define EFUSED_MAC(value)   (value & 0xffff0000ul)
 
#define rHAVE_SDIO_IRQ_GPIO_BIT   (NBIT0)
 
#define rHAVE_USE_PMU_BIT   (NBIT1)
 
#define rHAVE_SLEEP_CLK_SRC_RTC_BIT   (NBIT2)
 
#define rHAVE_SLEEP_CLK_SRC_XO_BIT   (NBIT3)
 
#define rHAVE_EXT_PA_INV_TX_RX   (NBIT4)
 
#define rHAVE_LEGACY_RF_SETTINGS   (NBIT5)
 
#define rHAVE_LOGS_DISABLED_BIT   (NBIT6)
 
#define rHAVE_ETHERNET_MODE_BIT   (NBIT7)
 
#define NMI_GLB_RESET_0   (NMI_PERIPH_REG_BASE + 0x400)
 
#define NMI_INTR_REG_BASE   (NMI_PERIPH_REG_BASE + 0xa00)
 
#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)
 
#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)
 
#define GET_UINT32(X, Y)   (X[0 + Y] + ((uint32_t)X[1 + Y] << 8) + ((uint32_t)X[2 + Y] << 16) + ((uint32_t)X[3 + Y] << 24))
 
#define M2M_HIF_INFO_SHIFT   (0)
 
#define M2M_HIF_INFO_MASK   (0xffff)
 
#define M2M_HIF_BLOCK_SHIFT   (14)
 
#define M2M_HIF_BLOCK_MASK   (0x3)
 
#define M2M_HIF_LEVEL_SHIFT   (0)
 
#define M2M_HIF_LEVEL_MASK   (0x3fff)
 
#define M2M_HIF_MAJOR_SHIFT   (8)
 
#define M2M_HIF_MAJOR_MASK   (0x3f)
 
#define M2M_HIF_MINOR_SHIFT   (0)
 
#define M2M_HIF_MINOR_MASK   (0xff)
 
#define M2M_GET_HIF_INFO(hif_ver)   ((uint16_t)(((hif_ver) >> M2M_HIF_INFO_SHIFT) & M2M_HIF_INFO_MASK))
 
#define M2M_GET_HIF_BLOCK(hif_info)   ((uint8_t)(((hif_info) >> M2M_HIF_BLOCK_SHIFT) & M2M_HIF_BLOCK_MASK))
 
#define M2M_GET_HIF_LEVEL(hif_info)   ((uint16_t)(((hif_info) >> M2M_HIF_LEVEL_SHIFT) & M2M_HIF_LEVEL_MASK))
 
#define M2M_GET_HIF_MAJOR(hif_info)   ((uint8_t)(((hif_info) >> M2M_HIF_MAJOR_SHIFT) & M2M_HIF_MAJOR_MASK))
 
#define M2M_GET_HIF_MINOR(hif_info)   ((uint8_t)(((hif_info) >> M2M_HIF_MINOR_SHIFT) & M2M_HIF_MINOR_MASK))
 
#define M2M_MAKE_HIF_INFO(hif_level)
 
#define M2M_AUTH_1X_USER_LEN_MAX   100
 
#define M2M_AUTH_1X_PASSWORD_LEN_MAX   256
 
#define M2M_HIF_BLOCK_VALUE   (2
 
#define M2M_HIF_MAJOR_VALUE   (1
 
#define M2M_HIF_MINOR_VALUE   (4
 
#define TCP_SOCK_MAX   (7
 
#define UDP_SOCK_MAX
 
#define RAW_SOCK_MAX   1
 
#define MAX_SOCKET   (TCP_SOCK_MAX + UDP_SOCK_MAX + RAW_SOCK_MAX)
 
#define SOCKET_BUFFER_SIZE   1472
 
#define TLS_RECORD_HEADER_LENGTH   (5)
 
#define ETHERNET_HEADER_OFFSET   (34)
 
#define ETHERNET_HEADER_LENGTH   (14)
 
#define TCP_IP_HEADER_LENGTH   (40)
 
#define UDP_IP_HEADER_LENGTH   (28)
 
#define IP_PACKET_OFFSET   (ETHERNET_HEADER_LENGTH + ETHERNET_HEADER_OFFSET - M2M_HIF_HDR_OFFSET)
 
#define TCP_TX_PACKET_OFFSET   (IP_PACKET_OFFSET + TCP_IP_HEADER_LENGTH)
 
#define UDP_TX_PACKET_OFFSET   (IP_PACKET_OFFSET + UDP_IP_HEADER_LENGTH)
 
#define SSL_TX_PACKET_OFFSET   (TCP_TX_PACKET_OFFSET + TLS_RECORD_HEADER_LENGTH)
 
#define SOCKET_REQUEST(ctx, req_id, req_args, req_size, req_payload, req_payload_size, req_payload_offset)    hif_send(ctx, M2M_REQ_GROUP_IP, req_id, req_args, req_size, req_payload, req_payload_size, req_payload_offset)
 
#define SSL_FLAGS_ACTIVE   NBIT0
 
#define M2M_802_1X_UNENCRYPTED_USERNAME_FLAG   0x80
 
#define M2M_802_1X_PREPEND_DOMAIN_FLAG   0x4
 
#define M2M_802_1X_MSCHAP2_FLAG   0x0
 
#define SOCKET_CMD_BIND   0x41
 
#define SOCKET_CMD_LISTEN   0x42
 
#define SOCKET_CMD_ACCEPT   0x43
 
#define SOCKET_CMD_CONNECT   0x44
 
#define SOCKET_CMD_SEND   0x45
 
#define SOCKET_CMD_RECV   0x46
 
#define SOCKET_CMD_SENDTO   0x47
 
#define SOCKET_CMD_RECVFROM   0x48
 
#define SOCKET_CMD_CLOSE   0x49
 
#define SOCKET_CMD_DNS_RESOLVE   0x4A
 
#define SOCKET_CMD_SSL_CONNECT   0x4B
 
#define SOCKET_CMD_SSL_SEND   0x4C
 
#define SOCKET_CMD_SSL_RECV   0x4D
 
#define SOCKET_CMD_SSL_CLOSE   0x4E
 
#define SOCKET_CMD_SET_SOCKET_OPTION   0x4F
 
#define SOCKET_CMD_SSL_CREATE   0x50
 
#define SOCKET_CMD_SSL_SET_SOCK_OPT   0x51
 
#define SOCKET_CMD_PING   0x52
 
#define SOCKET_CMD_SSL_CONNECT_ALPN   0x53
 
#define SOCKET_CMD_RAW_SET_SOCK_OPT   0x54
 
#define PING_ERR_SUCCESS   0
 
#define PING_ERR_DEST_UNREACH   1
 
#define PING_ERR_TIMEOUT   2
 
#define HOSTNAME_MAX_SIZE   100
 
#define AF_INET   2
 
#define SOCK_ERR_NO_ERROR   0
 
#define SOCK_STREAM   1
 
#define SOCK_DGRAM   2
 
#define SOCK_RAW   3
 
#define SOCKET_FLAGS_SSL   0x01
 
#define SOCKET_FLAGS_IPPROTO_RAW   0x02
 
#define RAW_SOCK_ID   (TCP_SOCK_MAX + UDP_SOCK_MAX)
 
#define _htons(A)   (uint16_t)((((uint16_t)(A)) << 8) | (((uint16_t)(A)) >> 8))
 
#define NM_BSP_B_L_32(x)   (x)
 
#define NM_BSP_B_L_16(x)   (x)
 
#define NMI_PERIPH_REG_BASE   0x1000
 
#define NMI_CHIPID   (NMI_PERIPH_REG_BASE)
 
#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)
 
#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)
 
#define NMI_SPI_REG_BASE   0xe800
 
#define NMI_SPI_CTL   (NMI_SPI_REG_BASE)
 
#define NMI_SPI_MASTER_DMA_ADDR   (NMI_SPI_REG_BASE + 0x4)
 
#define NMI_SPI_MASTER_DMA_COUNT   (NMI_SPI_REG_BASE + 0x8)
 
#define NMI_SPI_SLAVE_DMA_ADDR   (NMI_SPI_REG_BASE + 0xc)
 
#define NMI_SPI_SLAVE_DMA_COUNT   (NMI_SPI_REG_BASE + 0x10)
 
#define NMI_SPI_TX_MODE   (NMI_SPI_REG_BASE + 0x20)
 
#define NMI_SPI_PROTOCOL_CONFIG   (NMI_SPI_REG_BASE + 0x24)
 
#define NMI_SPI_INTR_CTL   (NMI_SPI_REG_BASE + 0x2c)
 
#define NMI_SPI_PROTOCOL_OFFSET   (NMI_SPI_PROTOCOL_CONFIG - NMI_SPI_REG_BASE)
 
#define NMI_GLB_RESET_0   (NMI_PERIPH_REG_BASE + 0x400)
 
#define NMI_INTR_REG_BASE   (NMI_PERIPH_REG_BASE + 0xa00)
 
#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)
 
#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)
 
#define CORT_HOST_COMM   (0x14)
 
#define HOST_CORT_COMM   (0x0e)
 
#define WAKE_CLK_REG   (0x1)
 
#define CLOCKS_EN_REG   (0x13)
 
#define TIMEOUT   (2000)
 
#define WAKEUP_TRIALS   (4)
 
#define NMI_AHB_DATA_MEM_BASE   0x30000ul
 
#define NMI_AHB_SHARE_MEM_BASE   0xd0000ul
 
#define WIFI_HOST_RCV_CTRL_0   (0x1070)
 
#define WIFI_HOST_RCV_CTRL_1   (0x1084)
 
#define WIFI_HOST_RCV_CTRL_2   (0x1078)
 
#define WIFI_HOST_RCV_CTRL_3   (0x106c)
 
#define WIFI_HOST_RCV_CTRL_4   (0x150400ul)
 
#define INTERRUPT_CORTUS_0_3000D0   (0x10a8)
 
#define INTERRUPT_CORTUS_1_3000D0   (0x10ac)
 
#define INTERRUPT_CORTUS_2_3000D0   (0x10b0)
 
#define INTERRUPT_CORTUS_3_3000D0   (0x10b4)
 
#define M2M_HIF_MAX_PACKET_SIZE   (1600 - 4)
 
#define M2M_HIF_HDR_OFFSET   (sizeof(wifi8_hif_hdr_t) + 4)
 
#define SOCKET_BUFFER_MAX_LENGTH   1400
 
#define M2M_MAX_GRP_NUM_REQ   (127)
 
#define SOCKET_CMD_RAW_SET_SOCK_OPT   0x54
 
#define HIF_OTA_RB_ONLY   0xFFFF
 
#define HIFCODE_OTA_RB   ((M2M_REQ_GROUP_OTA << 8) | M2M_OTA_REQ_ROLLBACK)
 
#define HIFCODE_OTA_SW   ((M2M_REQ_GROUP_OTA << 8) | M2M_OTA_REQ_SWITCH_FIRMWARE)
 
#define HIFCODE_SSL_WRITECERT   ((M2M_REQ_GROUP_SSL << 8) | M2M_SSL_REQ_WRITE_OWN_CERTS)
 
#define HIFCODE_WIFI_PASSIVESCAN   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_PASSIVE_SCAN)
 
#define HIFCODE_WIFI_CONN   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_CONN)
 
#define HIFCODE_WIFI_CONN_PARAM   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_IND_CONN_PARAM)
 
#define HIFCODE_WIFI_DELETE_CRED   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQRSP_DELETE_APID)
 
#define HIFCODE_WIFI_START_PROV_MODE   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_START_PROVISION_MODE)
 
#define HIFCODE_WIFI_ENABLE_AP   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_ENABLE_AP)
 
#define HIFCODE_IP_RAW_SOCK_OPT   ((M2M_REQ_GROUP_IP << 8) | SOCKET_CMD_RAW_SET_SOCK_OPT)
 
#define NMI_PERIPH_REG_BASE   0x1000
 
#define NMI_CHIPID   (NMI_PERIPH_REG_BASE)
 
#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)
 
#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)
 
#define NMI_SPI_REG_BASE   0xe800
 
#define NMI_SPI_CTL   (NMI_SPI_REG_BASE)
 
#define NMI_SPI_MASTER_DMA_ADDR   (NMI_SPI_REG_BASE + 0x4)
 
#define NMI_SPI_MASTER_DMA_COUNT   (NMI_SPI_REG_BASE + 0x8)
 
#define NMI_SPI_SLAVE_DMA_ADDR   (NMI_SPI_REG_BASE + 0xc)
 
#define NMI_SPI_SLAVE_DMA_COUNT   (NMI_SPI_REG_BASE + 0x10)
 
#define NMI_SPI_TX_MODE   (NMI_SPI_REG_BASE + 0x20)
 
#define NMI_SPI_PROTOCOL_CONFIG   (NMI_SPI_REG_BASE + 0x24)
 
#define NMI_SPI_INTR_CTL   (NMI_SPI_REG_BASE + 0x2c)
 
#define NMI_SPI_PROTOCOL_OFFSET   (NMI_SPI_PROTOCOL_CONFIG - NMI_SPI_REG_BASE)
 
#define SPI_BASE   NMI_SPI_REG_BASE
 
#define SPI_RESP_RETRY_COUNT   (10)
 
#define SPI_RETRY_COUNT   (10)
 
#define DATA_PKT_SZ_256   256
 
#define DATA_PKT_SZ_512   512
 
#define DATA_PKT_SZ_1K   1024
 
#define DATA_PKT_SZ_4K   (4 * 1024)
 
#define DATA_PKT_SZ_8K   (8 * 1024)
 
#define DATA_PKT_SZ   DATA_PKT_SZ_8K
 
#define NEW_HIF_LIST
 
#define WIFI_1X_TLS_HS_FLAGS_PEER_AUTH   NBIT1
 
#define WIFI_1X_TLS_HS_FLAGS_PEER_CERTTIMECHECK   NBIT2
 
#define WIFI_1X_TLS_HS_FLAGS_REQUIRE_TIME   NBIT3
 
#define WIFI_1X_TLS_HS_FLAGS_SESSION_CACHING   NBIT4
 
#define WIFI_1X_TLS_HS_FLAGS_SPECIFY_ROOTCERT   NBIT6
 
#define WIFI_1X_TLS_HS_FLAGS_DEFAULT
 
#define HIF_BLACKLIST_SZ   (sizeof(gau16_hif_blacklist) / sizeof(gau16_hif_blacklist[0]))
 
#define WEP_104_KEY_SIZE   ((uint8_t)13)
 
#define PSK_CALC_LEN   40
 
#define M2M_MAC_ADDRES_LEN   6
 
#define MAX_TRX_CFG_SZ   8
 
#define M2M_CRED_ENCRYPT_FLAG   0x02
 
#define M2M_WIFI_CONN_BSSID_FLAG   0x01
 
#define M2M_CRED_STORE_FLAG   0x01
 
#define M2M_OTA_CMD_BASE   100
 
#define M2M_MAX_GRP_NUM_REQ   (127)
 
#define WEP_40_KEY_SIZE   ((uint8_t)5)
 
#define WEP_104_KEY_SIZE   ((uint8_t)13)
 
#define WEP_40_KEY_STRING_SIZE   ((uint8_t)10)
 
#define WEP_104_KEY_STRING_SIZE   ((uint8_t)26)
 
#define WEP_KEY_MAX_INDEX   ((uint8_t)4)
 
#define M2M_SCAN_DEFAULT_NUM_SLOTS   (2)
 
#define M2M_SCAN_DEFAULT_SLOT_TIME   (20)
 
#define M2M_SCAN_DEFAULT_PASSIVE_SLOT_TIME   (300)
 
#define M2M_SCAN_DEFAULT_NUM_PROBE   (2)
 
#define M2M_FASTCONNECT_DEFAULT_RSSI_THRESH   (-45)
 
#define NM_BUS_MAX_TRX_SZ   256
 
#define M2M_MAX_SSID_LEN   33
 
#define WEP_104_KEY_STRING_SIZE   ((uint8_t)26)
 
#define M2M_MAX_PSK_LEN   65
 
#define __PADDING_TSTR_M2MWPS_INFO_   (4 - ((2 + M2M_MAX_SSID_LEN + M2M_MAX_PSK_LEN) % 4))
 
#define __padding_tstr_system_time_   (4 - (7 % 4))
 

Typedefs

typedef void(* wifi8_app_wifi_cb_t) (uint8_t u8_msg_type, void *pv_msg)
 
typedef void(* wifi8_app_mon_cb_t) (wifi8_m2m_wifi_rx_packet_info_t *pstr_wifi_rx_packet, uint8_t *pu8_payload, uint16_t u16_payload_size)
 
typedef void(* wifi8_app_socket_cb_t) (int8_t sock, uint8_t u8_msg, void *pv_msg)
 
typedef void(* wifi8_app_resolve_cb_t) (uint8_t *pu8_domain_name, uint32_t u32_server_ip)
 
typedef void(* wifi8_ping_cb_t) (uint32_t u32ip_addr, uint32_t u32rtt, uint8_t u8_error_code)
 
typedef void(* wifi8_app_eth_cb_t) (uint8_t u8_msg_type, void *pv_msg, void *pv_ctrl_buf)
 

Enumerations

enum  wifi8_m2m_scan_ch_t {
  M2M_WIFI_CH_1 = ((uint8_t)1) , M2M_WIFI_CH_2 , M2M_WIFI_CH_3 , M2M_WIFI_CH_4 ,
  M2M_WIFI_CH_5 , M2M_WIFI_CH_6 , M2M_WIFI_CH_7 , M2M_WIFI_CH_8 ,
  M2M_WIFI_CH_9 , M2M_WIFI_CH_10 , M2M_WIFI_CH_11 , M2M_WIFI_CH_12 ,
  M2M_WIFI_CH_13 , M2M_WIFI_CH_14 , M2M_WIFI_CH_ALL = ((uint8_t)255)
}
 
enum  wifi8_m2m_sec_type_t {
  M2M_WIFI_SEC_INVALID = 0 , M2M_WIFI_SEC_OPEN , M2M_WIFI_SEC_WPA_PSK , M2M_WIFI_SEC_WEP ,
  M2M_WIFI_SEC_802_1X , M2M_WIFI_NUM_AUTH_TYPES
}
 
enum  wifi8_m2m_conn_state_t { M2M_WIFI_DISCONNECTED = 0 , M2M_WIFI_CONNECTED , M2M_WIFI_ROAMED , M2M_WIFI_UNDEF = 0xff }
 
enum  wifi8_m2m_sta_cmd_t {
  M2M_WIFI_REQ_CONNECT = M2M_STA_CMD_BASE , M2M_WIFI_REQ_DEFAULT_CONNECT , M2M_WIFI_RESP_DEFAULT_CONNECT , M2M_WIFI_REQ_DISCONNECT ,
  M2M_WIFI_RESP_CON_STATE_CHANGED , M2M_WIFI_REQ_SLEEP , M2M_WIFI_REQ_WPS_SCAN , M2M_WIFI_REQ_WPS ,
  M2M_WIFI_REQ_START_WPS , M2M_WIFI_REQ_DISABLE_WPS , M2M_WIFI_REQ_DHCP_CONF , M2M_WIFI_RESP_IP_CONFIGURED ,
  M2M_WIFI_RESP_IP_CONFLICT , M2M_WIFI_REQ_ENABLE_MONITORING , M2M_WIFI_REQ_DISABLE_MONITORING , M2M_WIFI_RESP_WIFI_RX_PACKET ,
  M2M_WIFI_REQ_SEND_WIFI_PACKET , M2M_WIFI_REQ_LSN_INT , M2M_WIFI_REQ_DOZE , M2M_WIFI_REQ_GET_PRNG ,
  M2M_WIFI_RESP_GET_PRNG , M2M_WIFI_REQ_CONN , M2M_WIFI_IND_CONN_PARAM , M2M_WIFI_MAX_STA_ALL
}
 
enum  wifi8_m2m_config_cmd_t {
  M2M_WIFI_REQ_RESTART = M2M_CONFIG_CMD_BASE , M2M_WIFI_REQ_SET_MAC_ADDRESS , M2M_WIFI_REQ_CURRENT_RSSI , M2M_WIFI_RESP_CURRENT_RSSI ,
  M2M_WIFI_REQ_RESTRICT_BLE , M2M_WIFI_REQ_UNRESTRICT_BLE , M2M_WIFI_REQ_GET_CONN_INFO , M2M_WIFI_RESP_CONN_INFO ,
  M2M_WIFI_REQ_SET_DEVICE_NAME , M2M_WIFI_REQ_START_PROVISION_MODE_LEGACY , M2M_WIFI_RESP_PROVISION_INFO , M2M_WIFI_REQ_STOP_PROVISION_MODE ,
  M2M_WIFI_REQ_SET_SYS_TIME , M2M_WIFI_REQ_ENABLE_SNTP_CLIENT , M2M_WIFI_REQ_DISABLE_SNTP_CLIENT , M2M_WIFI_RESP_MEMORY_RECOVER ,
  M2M_WIFI_REQ_CUST_INFO_ELEMENT , M2M_WIFI_REQ_SCAN , M2M_WIFI_RESP_SCAN_DONE , M2M_WIFI_REQ_SCAN_RESULT ,
  M2M_WIFI_RESP_SCAN_RESULT , M2M_WIFI_REQ_SET_SCAN_OPTION , M2M_WIFI_REQ_SET_SCAN_REGION , M2M_WIFI_REQ_SET_POWER_PROFILE ,
  M2M_WIFI_REQ_SET_TX_POWER , M2M_WIFI_REQ_SET_BATTERY_VOLTAGE , M2M_WIFI_REQ_SET_ENABLE_LOGS , M2M_WIFI_REQ_GET_SYS_TIME ,
  M2M_WIFI_RESP_GET_SYS_TIME , M2M_WIFI_REQ_SEND_ETHERNET_PACKET , M2M_WIFI_RESP_ETHERNET_RX_PACKET , M2M_WIFI_REQ_SET_MAC_MCAST ,
  M2M_WIFI_REQ_BLE_API_SEND , M2M_WIFI_RESP_BLE_API_RECV , M2M_WIFI_REQ_SET_GAIN_TABLE , M2M_WIFI_RESP_SET_GAIN_TABLE ,
  M2M_WIFI_REQ_PASSIVE_SCAN , M2M_WIFI_REQ_CONFIG_SNTP , M2M_WIFI_REQ_START_PROVISION_MODE , M2M_WIFI_MAX_CONFIG_ALL
}
 
enum  wifi8_socket_callback_msg_t {
  SOCKET_MSG_BIND = 1 , SOCKET_MSG_LISTEN , SOCKET_MSG_DNS_RESOLVE , SOCKET_MSG_ACCEPT ,
  SOCKET_MSG_CONNECT , SOCKET_MSG_RECV , SOCKET_MSG_SEND , SOCKET_MSG_SENDTO ,
  SOCKET_MSG_RECVFROM
}
 
enum  wifi8_m2m_gen_cmd_t { M2M_WIFI_REQRSP_DELETE_APID = M2M_GEN_CMD_BASE , M2M_WIFI_REQ_ROAMING , M2M_WIFI_MAX_GEN_ALL }
 
enum  wifi8_m2m_ap_cmd_t { M2M_WIFI_REQ_ENABLE_AP_LEGACY = M2M_AP_CMD_BASE , M2M_WIFI_REQ_DISABLE_AP , M2M_WIFI_REQ_ENABLE_AP , M2M_WIFI_MAX_AP_ALL }
 
enum  wifi8_m2m_ssid_mode_t { SSID_MODE_VISIBLE = 0 , SSID_MODE_HIDDEN }
 
enum  wifi8_wifi_state_t { WIFI_STATE_DEINIT , WIFI_STATE_INIT , WIFI_STATE_START }
 
enum  wifi8_return_value_t { WIFI8_OK = 0 , WIFI8_ERROR = -1 }
 WiFi 8 Click return value data. More...
 
enum  wifi8_m2m_wifi_mode_t { M2M_WIFI_MODE_NORMAL = ((uint8_t)1) , M2M_WIFI_MODE_CONFIG , M2M_WIFI_MODE_ETHERNET , M2M_WIFI_MODE_MAX }
 
enum  wifi8_m2m_req_group_t {
  M2M_REQ_GROUP_MAIN = 0 , M2M_REQ_GROUP_WIFI , M2M_REQ_GROUP_IP , M2M_REQ_GROUP_HIF ,
  M2M_REQ_GROUP_OTA , M2M_REQ_GROUP_SSL , M2M_REQ_GROUP_SIGMA , M2M_REQ_GROUP_INTERNAL
}
 
enum  wifi8_m2m_reqpkt_t { M2M_REQ_CONFIG_PKT , M2M_REQ_DATA_PKT = 0x80 }
 
enum  wifi8_m2m_ssl_cmd_t {
  M2M_SSL_REQ_CERT_VERIF , M2M_SSL_REQ_ECC , M2M_SSL_RESP_ECC , M2M_SSL_RSV ,
  M2M_SSL_REQ_WRITE_OWN_CERTS , M2M_SSL_REQ_SET_CS_LIST , M2M_SSL_RESP_SET_CS_LIST , M2M_SSL_RESP_WRITE_OWN_CERTS ,
  M2M_SSL_REQ_SET_CERT_VERIF_MODE
}
 
enum  wifi8_nm_state_t { NM_STATE_DEINIT , NM_STATE_INIT , NM_STATE_START }
 
enum  wifi8_m2m_ota_cmd_t {
  M2M_OTA_REQ_NOTIF_SET_URL = M2M_OTA_CMD_BASE , M2M_OTA_REQ_NOTIF_CHECK_FOR_UPDATE , M2M_OTA_REQ_NOTIF_SCHED , M2M_OTA_REQ_START_UPDATE ,
  M2M_OTA_REQ_SWITCH_FIRMWARE , M2M_OTA_REQ_ROLLBACK , M2M_OTA_REQ_ABORT , M2M_OTA_RESP_NOTIF_UPDATE_INFO ,
  M2M_OTA_RESP_UPDATE_STATUS , M2M_OTA_REQ_TEST , M2M_OTA_MAX_ALL
}
 
enum  wifi8_m2m_server_cmd_t { M2M_WIFI_REQ_CLIENT_CTRL = M2M_SERVER_CMD_BASE , M2M_WIFI_RESP_CLIENT_INFO , M2M_WIFI_REQ_SERVER_INIT , M2M_WIFI_MAX_SERVER_ALL }
 
enum  wifi8_cred_store_option_t { WIFI_CRED_DONTSAVE , WIFI_CRED_SAVE_UNENCRYPTED , WIFI_CRED_SAVE_ENCRYPTED }
 
enum  wifi8_1x_option_t { WIFI_1X_BYPASS_SERVER_AUTH , WIFI_1X_TIME_VERIF_MODE , WIFI_1X_SESSION_CACHING , WIFI_1X_SPECIFIC_ROOTCERT }
 
enum  wifi8_tls_cert_exp_settings_t { TLS_CERT_EXP_CHECK_DISABLE , TLS_CERT_EXP_CHECK_ENABLE , TLS_CERT_EXP_CHECK_EN_IF_SYS_TIME }
 

Macro Definition Documentation

◆ __PADDING_TSTR_M2MWPS_INFO_

#define __PADDING_TSTR_M2MWPS_INFO_   (4 - ((2 + M2M_MAX_SSID_LEN + M2M_MAX_PSK_LEN) % 4))

◆ __padding_tstr_system_time_

#define __padding_tstr_system_time_   (4 - (7 % 4))

padding for wifi8_system_time_t structure.

◆ _htons

#define _htons ( A)    (uint16_t)((((uint16_t)(A)) << 8) | (((uint16_t)(A)) >> 8))

◆ AF_INET

#define AF_INET   2

◆ BOOT_START

#define BOOT_START   0x12345678ul

◆ BOOT_SUCCESS

#define BOOT_SUCCESS   0x10add09eul

◆ BOOTROM_REG

#define BOOTROM_REG   (0xc000cul)

◆ CHIP_ID_3000D

#define CHIP_ID_3000D   (0x3000D0ul)

◆ CLOCKS_EN_REG

#define CLOCKS_EN_REG   (0x13)

◆ CORT_HOST_COMM

#define CORT_HOST_COMM   (0x14)

◆ DATA_PKT_SZ

#define DATA_PKT_SZ   DATA_PKT_SZ_8K

◆ DATA_PKT_SZ_1K

#define DATA_PKT_SZ_1K   1024

◆ DATA_PKT_SZ_256

#define DATA_PKT_SZ_256   256

◆ DATA_PKT_SZ_4K

#define DATA_PKT_SZ_4K   (4 * 1024)

◆ DATA_PKT_SZ_512

#define DATA_PKT_SZ_512   512

◆ DATA_PKT_SZ_8K

#define DATA_PKT_SZ_8K   (8 * 1024)

◆ EFUSED_MAC

#define EFUSED_MAC ( value)    (value & 0xffff0000ul)

◆ ETHERNET_HEADER_LENGTH

#define ETHERNET_HEADER_LENGTH   (14)

◆ ETHERNET_HEADER_OFFSET

#define ETHERNET_HEADER_OFFSET   (34)

◆ GET_CHIPID

#define GET_CHIPID ( )    nmi_get_chipid()

◆ GET_UINT32

#define GET_UINT32 ( X,
Y )   (X[0 + Y] + ((uint32_t)X[1 + Y] << 8) + ((uint32_t)X[2 + Y] << 16) + ((uint32_t)X[3 + Y] << 24))

◆ HIF_BLACKLIST_SZ

#define HIF_BLACKLIST_SZ   (sizeof(gau16_hif_blacklist) / sizeof(gau16_hif_blacklist[0]))

◆ HIF_OTA_RB_ONLY

#define HIF_OTA_RB_ONLY   0xFFFF

◆ HIFCODE_IP_RAW_SOCK_OPT

#define HIFCODE_IP_RAW_SOCK_OPT   ((M2M_REQ_GROUP_IP << 8) | SOCKET_CMD_RAW_SET_SOCK_OPT)

◆ HIFCODE_OTA_RB

#define HIFCODE_OTA_RB   ((M2M_REQ_GROUP_OTA << 8) | M2M_OTA_REQ_ROLLBACK)

◆ HIFCODE_OTA_SW

#define HIFCODE_OTA_SW   ((M2M_REQ_GROUP_OTA << 8) | M2M_OTA_REQ_SWITCH_FIRMWARE)

◆ HIFCODE_SSL_WRITECERT

#define HIFCODE_SSL_WRITECERT   ((M2M_REQ_GROUP_SSL << 8) | M2M_SSL_REQ_WRITE_OWN_CERTS)

◆ HIFCODE_WIFI_CONN

#define HIFCODE_WIFI_CONN   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_CONN)

◆ HIFCODE_WIFI_CONN_PARAM

#define HIFCODE_WIFI_CONN_PARAM   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_IND_CONN_PARAM)

◆ HIFCODE_WIFI_DELETE_CRED

#define HIFCODE_WIFI_DELETE_CRED   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQRSP_DELETE_APID)

◆ HIFCODE_WIFI_ENABLE_AP

#define HIFCODE_WIFI_ENABLE_AP   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_ENABLE_AP)

◆ HIFCODE_WIFI_PASSIVESCAN

#define HIFCODE_WIFI_PASSIVESCAN   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_PASSIVE_SCAN)

◆ HIFCODE_WIFI_START_PROV_MODE

#define HIFCODE_WIFI_START_PROV_MODE   ((M2M_REQ_GROUP_WIFI << 8) | M2M_WIFI_REQ_START_PROVISION_MODE)

◆ HOST_CORT_COMM

#define HOST_CORT_COMM   (0x0e)

◆ HOSTNAME_MAX_SIZE

#define HOSTNAME_MAX_SIZE   100

◆ INTERRUPT_CORTUS_0_3000D0

#define INTERRUPT_CORTUS_0_3000D0   (0x10a8)

◆ INTERRUPT_CORTUS_1_3000D0

#define INTERRUPT_CORTUS_1_3000D0   (0x10ac)

◆ INTERRUPT_CORTUS_2_3000D0

#define INTERRUPT_CORTUS_2_3000D0   (0x10b0)

◆ INTERRUPT_CORTUS_3_3000D0

#define INTERRUPT_CORTUS_3_3000D0   (0x10b4)

◆ IP_PACKET_OFFSET

◆ ISNMC1000

#define ISNMC1000 ( id)    (((id & 0xfffff000ul) == 0x100000ul) ? 1 : 0)

◆ ISNMC1500

#define ISNMC1500 ( id)    (((id & 0xfffff000ul) == 0x150000ul) ? 1 : 0)

◆ ISNMC3400

#define ISNMC3400 ( id)    (((id & 0xfff0f000ul) == 0x300000ul) ? 1 : 0)

◆ M2M_802_1X_MSCHAP2_FLAG

#define M2M_802_1X_MSCHAP2_FLAG   0x0

Flag to indicate 802.1x MsChapV2 credentials: domain/user-name/password.

◆ M2M_802_1X_PREPEND_DOMAIN_FLAG

#define M2M_802_1X_PREPEND_DOMAIN_FLAG   0x4

Flag to indicate that the 802.1x domain name should be prepended to the user-name: "Domain\Username". If the flag is not set then domain name is appended to the user-name: "Username@Domain". (Note that the '@' or '\' must be included in the domain name.)

◆ M2M_802_1X_UNENCRYPTED_USERNAME_FLAG

#define M2M_802_1X_UNENCRYPTED_USERNAME_FLAG   0x80

Flag to indicate that the 802.1x user-name should be sent (unencrypted) in the initial EAP identity response. Intended for use with EAP-TLS only.

◆ M2M_AP_CMD_BASE

#define M2M_AP_CMD_BASE   7

The base value of all the Access Point mode host commands opcodes.

◆ M2M_ATE_FW_IS_UP_VALUE

#define M2M_ATE_FW_IS_UP_VALUE   (0xD75DC1C3ul) /*Also, Change this value in ATE (Burst) firmware if it will be changed here*/

◆ M2M_ATE_FW_START_VALUE

#define M2M_ATE_FW_START_VALUE   (0x3C1CD57Dul) /*Also, Change this value in boot_firmware if it will be changed here*/

◆ M2M_AUTH_1X_PASSWORD_LEN_MAX

#define M2M_AUTH_1X_PASSWORD_LEN_MAX   256

◆ M2M_AUTH_1X_USER_LEN_MAX

#define M2M_AUTH_1X_USER_LEN_MAX   100

◆ M2M_CONFIG_CMD_BASE

#define M2M_CONFIG_CMD_BASE

The base value of all the Station mode host commands opcodes.

◆ M2M_CRED_ENCRYPT_FLAG

#define M2M_CRED_ENCRYPT_FLAG   0x02

◆ M2M_CRED_STORE_FLAG

#define M2M_CRED_STORE_FLAG   0x01

◆ M2M_FASTCONNECT_DEFAULT_RSSI_THRESH

#define M2M_FASTCONNECT_DEFAULT_RSSI_THRESH   (-45)

◆ M2M_FINISH_BOOT_ROM

#define M2M_FINISH_BOOT_ROM   0x10add09eul

◆ M2M_FINISH_INIT_STATE

#define M2M_FINISH_INIT_STATE   0x02532636ul

◆ M2M_GEN_CMD_BASE

#define M2M_GEN_CMD_BASE   10

The base value of additional host wifi command opcodes. Usage restrictions (eg STA mode only) should always be made clear at the API layer in any case.

◆ M2M_GET_HIF_BLOCK

#define M2M_GET_HIF_BLOCK ( hif_info)    ((uint8_t)(((hif_info) >> M2M_HIF_BLOCK_SHIFT) & M2M_HIF_BLOCK_MASK))

◆ M2M_GET_HIF_INFO

#define M2M_GET_HIF_INFO ( hif_ver)    ((uint16_t)(((hif_ver) >> M2M_HIF_INFO_SHIFT) & M2M_HIF_INFO_MASK))

◆ M2M_GET_HIF_LEVEL

#define M2M_GET_HIF_LEVEL ( hif_info)    ((uint16_t)(((hif_info) >> M2M_HIF_LEVEL_SHIFT) & M2M_HIF_LEVEL_MASK))

◆ M2M_GET_HIF_MAJOR

#define M2M_GET_HIF_MAJOR ( hif_info)    ((uint8_t)(((hif_info) >> M2M_HIF_MAJOR_SHIFT) & M2M_HIF_MAJOR_MASK))

◆ M2M_GET_HIF_MINOR

#define M2M_GET_HIF_MINOR ( hif_info)    ((uint8_t)(((hif_info) >> M2M_HIF_MINOR_SHIFT) & M2M_HIF_MINOR_MASK))

◆ M2M_HIF_BLOCK_MASK

#define M2M_HIF_BLOCK_MASK   (0x3)

◆ M2M_HIF_BLOCK_SHIFT

#define M2M_HIF_BLOCK_SHIFT   (14)

◆ M2M_HIF_BLOCK_VALUE

#define M2M_HIF_BLOCK_VALUE   (2

Drv/Fw blocking compatibility check.

◆ M2M_HIF_HDR_OFFSET

#define M2M_HIF_HDR_OFFSET   (sizeof(wifi8_hif_hdr_t) + 4)

The base value of all the OTA mode host commands opcodes. The OTA messages have their own group so op codes can extended from 1 to M2M_MAX_GRP_NUM_REQ.

◆ M2M_HIF_INFO_MASK

#define M2M_HIF_INFO_MASK   (0xffff)

◆ M2M_HIF_INFO_SHIFT

#define M2M_HIF_INFO_SHIFT   (0)

◆ M2M_HIF_LEVEL_MASK

#define M2M_HIF_LEVEL_MASK   (0x3fff)

◆ M2M_HIF_LEVEL_SHIFT

#define M2M_HIF_LEVEL_SHIFT   (0)

◆ M2M_HIF_MAJOR_MASK

#define M2M_HIF_MAJOR_MASK   (0x3f)

◆ M2M_HIF_MAJOR_SHIFT

#define M2M_HIF_MAJOR_SHIFT   (8)

◆ M2M_HIF_MAJOR_VALUE

#define M2M_HIF_MAJOR_VALUE   (1

Drv/Fw major compatibility check.

◆ M2M_HIF_MAX_PACKET_SIZE

#define M2M_HIF_MAX_PACKET_SIZE   (1600 - 4)

◆ M2M_HIF_MINOR_MASK

#define M2M_HIF_MINOR_MASK   (0xff)

◆ M2M_HIF_MINOR_SHIFT

#define M2M_HIF_MINOR_SHIFT   (0)

◆ M2M_HIF_MINOR_VALUE

#define M2M_HIF_MINOR_VALUE   (4

Drv/Fw minor compatibility check.

◆ M2M_MAC_ADDRES_LEN

#define M2M_MAC_ADDRES_LEN   6

◆ M2M_MAKE_HIF_INFO

#define M2M_MAKE_HIF_INFO ( hif_level)
Value:
( \
(((uint16_t)(hif_level)&M2M_HIF_LEVEL_MASK) << M2M_HIF_LEVEL_SHIFT) | \
#define M2M_HIF_BLOCK_VALUE
Definition wifi8_types.h:170
#define M2M_HIF_LEVEL_MASK
Definition wifi8_types.h:149
#define M2M_HIF_BLOCK_SHIFT
Definition wifi8_types.h:146
#define M2M_HIF_BLOCK_MASK
Definition wifi8_types.h:147
#define M2M_HIF_LEVEL_SHIFT
Definition wifi8_types.h:148

◆ M2M_MAX_GRP_NUM_REQ [1/2]

#define M2M_MAX_GRP_NUM_REQ   (127)

◆ M2M_MAX_GRP_NUM_REQ [2/2]

#define M2M_MAX_GRP_NUM_REQ   (127)

◆ M2M_MAX_PSK_LEN

#define M2M_MAX_PSK_LEN   65

◆ M2M_MAX_SSID_LEN

#define M2M_MAX_SSID_LEN   33

◆ M2M_OTA_CMD_BASE [1/2]

#define M2M_OTA_CMD_BASE   100

◆ M2M_OTA_CMD_BASE [2/2]

#define M2M_OTA_CMD_BASE   100

◆ M2M_SCAN_DEFAULT_NUM_PROBE

#define M2M_SCAN_DEFAULT_NUM_PROBE   (2)

◆ M2M_SCAN_DEFAULT_NUM_SLOTS

#define M2M_SCAN_DEFAULT_NUM_SLOTS   (2)

◆ M2M_SCAN_DEFAULT_PASSIVE_SLOT_TIME

#define M2M_SCAN_DEFAULT_PASSIVE_SLOT_TIME   (300)

◆ M2M_SCAN_DEFAULT_SLOT_TIME

#define M2M_SCAN_DEFAULT_SLOT_TIME   (20)

◆ M2M_SERVER_CMD_BASE

#define M2M_SERVER_CMD_BASE   10

The base value of all the Power Save mode host commands codes.

◆ M2M_STA_CMD_BASE

#define M2M_STA_CMD_BASE   4

The base value of all the Host configuration commands opcodes.

◆ M2M_START_FIRMWARE

#define M2M_START_FIRMWARE   0xef522f61ul

◆ M2M_START_PS_FIRMWARE

#define M2M_START_PS_FIRMWARE   0x94992610ul

◆ M2M_WAIT_FOR_HOST_REG

#define M2M_WAIT_FOR_HOST_REG   (0x207bcul)

◆ M2M_WIFI_CONN_BSSID_FLAG

#define M2M_WIFI_CONN_BSSID_FLAG   0x01

◆ MAX_SOCKET

#define MAX_SOCKET   (TCP_SOCK_MAX + UDP_SOCK_MAX + RAW_SOCK_MAX)

◆ MAX_TRX_CFG_SZ

#define MAX_TRX_CFG_SZ   8

◆ NBIT0

#define NBIT0   (0x00000001ul)

◆ NBIT1

#define NBIT1   (0x00000002ul)

◆ NBIT10

#define NBIT10   (0x00000400ul)

◆ NBIT11

#define NBIT11   (0x00000800ul)

◆ NBIT12

#define NBIT12   (0x00001000ul)

◆ NBIT13

#define NBIT13   (0x00002000ul)

◆ NBIT14

#define NBIT14   (0x00004000ul)

◆ NBIT15

#define NBIT15   (0x00008000ul)

◆ NBIT16

#define NBIT16   (0x00010000ul)

◆ NBIT17

#define NBIT17   (0x00020000ul)

◆ NBIT18

#define NBIT18   (0x00040000ul)

◆ NBIT19

#define NBIT19   (0x00080000ul)

◆ NBIT2

#define NBIT2   (0x00000004ul)

◆ NBIT20

#define NBIT20   (0x00100000ul)

◆ NBIT21

#define NBIT21   (0x00200000ul)

◆ NBIT22

#define NBIT22   (0x00400000ul)

◆ NBIT23

#define NBIT23   (0x00800000ul)

◆ NBIT24

#define NBIT24   (0x01000000ul)

◆ NBIT25

#define NBIT25   (0x02000000ul)

◆ NBIT26

#define NBIT26   (0x04000000ul)

◆ NBIT27

#define NBIT27   (0x08000000ul)

◆ NBIT28

#define NBIT28   (0x10000000ul)

◆ NBIT29

#define NBIT29   (0x20000000ul)

◆ NBIT3

#define NBIT3   (0x00000008ul)

◆ NBIT30

#define NBIT30   (0x40000000ul)

◆ NBIT31

#define NBIT31   (0x80000000ul)

◆ NBIT4

#define NBIT4   (0x00000010ul)

◆ NBIT5

#define NBIT5   (0x00000020ul)

◆ NBIT6

#define NBIT6   (0x00000040ul)

◆ NBIT7

#define NBIT7   (0x00000080ul)

◆ NBIT8

#define NBIT8   (0x00000100ul)

◆ NBIT9

#define NBIT9   (0x00000200ul)

◆ NEW_HIF_LIST

#define NEW_HIF_LIST
Value:
#define HIF_OTA_RB_ONLY
Definition wifi8_types.h:306
#define HIFCODE_WIFI_CONN_PARAM
Definition wifi8_types.h:317
#define HIFCODE_WIFI_CONN
Definition wifi8_types.h:316
#define HIFCODE_WIFI_START_PROV_MODE
Definition wifi8_types.h:319
#define HIFCODE_SSL_WRITECERT
Definition wifi8_types.h:314
#define HIFCODE_WIFI_ENABLE_AP
Definition wifi8_types.h:320
#define HIFCODE_IP_RAW_SOCK_OPT
Definition wifi8_types.h:321
#define HIFCODE_WIFI_PASSIVESCAN
Definition wifi8_types.h:315
#define HIFCODE_WIFI_DELETE_CRED
Definition wifi8_types.h:318

◆ NM_BSP_B_L_16

#define NM_BSP_B_L_16 ( x)    (x)

Retain endianness of 16bit word (In the case that Host is LE)

◆ NM_BSP_B_L_32

#define NM_BSP_B_L_32 ( x)    (x)

Retain endianness of 32bit word (In the case that Host is LE)

◆ NM_BUS_MAX_TRX_SZ

#define NM_BUS_MAX_TRX_SZ   256

◆ NMI_AHB_DATA_MEM_BASE

#define NMI_AHB_DATA_MEM_BASE   0x30000ul

◆ NMI_AHB_SHARE_MEM_BASE

#define NMI_AHB_SHARE_MEM_BASE   0xd0000ul

◆ NMI_CHIPID [1/3]

#define NMI_CHIPID   (NMI_PERIPH_REG_BASE)

◆ NMI_CHIPID [2/3]

#define NMI_CHIPID   (NMI_PERIPH_REG_BASE)

◆ NMI_CHIPID [3/3]

#define NMI_CHIPID   (NMI_PERIPH_REG_BASE)

◆ NMI_GLB_RESET_0 [1/2]

#define NMI_GLB_RESET_0   (NMI_PERIPH_REG_BASE + 0x400)

◆ NMI_GLB_RESET_0 [2/2]

#define NMI_GLB_RESET_0   (NMI_PERIPH_REG_BASE + 0x400)

◆ NMI_INTR_ENABLE [1/4]

#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)

◆ NMI_INTR_ENABLE [2/4]

#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)

◆ NMI_INTR_ENABLE [3/4]

#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)

◆ NMI_INTR_ENABLE [4/4]

#define NMI_INTR_ENABLE   (NMI_INTR_REG_BASE)

◆ NMI_INTR_REG_BASE [1/2]

#define NMI_INTR_REG_BASE   (NMI_PERIPH_REG_BASE + 0xa00)

◆ NMI_INTR_REG_BASE [2/2]

#define NMI_INTR_REG_BASE   (NMI_PERIPH_REG_BASE + 0xa00)

◆ NMI_PERIPH_REG_BASE [1/3]

#define NMI_PERIPH_REG_BASE   0x1000

◆ NMI_PERIPH_REG_BASE [2/3]

#define NMI_PERIPH_REG_BASE   0x1000

◆ NMI_PERIPH_REG_BASE [3/3]

#define NMI_PERIPH_REG_BASE   0x1000

◆ NMI_PIN_MUX_0 [1/4]

#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)

◆ NMI_PIN_MUX_0 [2/4]

#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)

◆ NMI_PIN_MUX_0 [3/4]

#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)

◆ NMI_PIN_MUX_0 [4/4]

#define NMI_PIN_MUX_0   (NMI_PERIPH_REG_BASE + 0x408)

◆ NMI_REV_REG

#define NMI_REV_REG   (0x207acul) /*Also, Used to load ATE firmware from SPI Flash and to ensure that it is running too*/

◆ NMI_SPI_CTL [1/2]

#define NMI_SPI_CTL   (NMI_SPI_REG_BASE)

◆ NMI_SPI_CTL [2/2]

#define NMI_SPI_CTL   (NMI_SPI_REG_BASE)

◆ NMI_SPI_INTR_CTL [1/2]

#define NMI_SPI_INTR_CTL   (NMI_SPI_REG_BASE + 0x2c)

◆ NMI_SPI_INTR_CTL [2/2]

#define NMI_SPI_INTR_CTL   (NMI_SPI_REG_BASE + 0x2c)

◆ NMI_SPI_MASTER_DMA_ADDR [1/2]

#define NMI_SPI_MASTER_DMA_ADDR   (NMI_SPI_REG_BASE + 0x4)

◆ NMI_SPI_MASTER_DMA_ADDR [2/2]

#define NMI_SPI_MASTER_DMA_ADDR   (NMI_SPI_REG_BASE + 0x4)

◆ NMI_SPI_MASTER_DMA_COUNT [1/2]

#define NMI_SPI_MASTER_DMA_COUNT   (NMI_SPI_REG_BASE + 0x8)

◆ NMI_SPI_MASTER_DMA_COUNT [2/2]

#define NMI_SPI_MASTER_DMA_COUNT   (NMI_SPI_REG_BASE + 0x8)

◆ NMI_SPI_PROTOCOL_CONFIG [1/2]

#define NMI_SPI_PROTOCOL_CONFIG   (NMI_SPI_REG_BASE + 0x24)

◆ NMI_SPI_PROTOCOL_CONFIG [2/2]

#define NMI_SPI_PROTOCOL_CONFIG   (NMI_SPI_REG_BASE + 0x24)

◆ NMI_SPI_PROTOCOL_OFFSET [1/2]

#define NMI_SPI_PROTOCOL_OFFSET   (NMI_SPI_PROTOCOL_CONFIG - NMI_SPI_REG_BASE)

◆ NMI_SPI_PROTOCOL_OFFSET [2/2]

#define NMI_SPI_PROTOCOL_OFFSET   (NMI_SPI_PROTOCOL_CONFIG - NMI_SPI_REG_BASE)

◆ NMI_SPI_REG_BASE [1/2]

#define NMI_SPI_REG_BASE   0xe800

◆ NMI_SPI_REG_BASE [2/2]

#define NMI_SPI_REG_BASE   0xe800

◆ NMI_SPI_SLAVE_DMA_ADDR [1/2]

#define NMI_SPI_SLAVE_DMA_ADDR   (NMI_SPI_REG_BASE + 0xc)

◆ NMI_SPI_SLAVE_DMA_ADDR [2/2]

#define NMI_SPI_SLAVE_DMA_ADDR   (NMI_SPI_REG_BASE + 0xc)

◆ NMI_SPI_SLAVE_DMA_COUNT [1/2]

#define NMI_SPI_SLAVE_DMA_COUNT   (NMI_SPI_REG_BASE + 0x10)

◆ NMI_SPI_SLAVE_DMA_COUNT [2/2]

#define NMI_SPI_SLAVE_DMA_COUNT   (NMI_SPI_REG_BASE + 0x10)

◆ NMI_SPI_TX_MODE [1/2]

#define NMI_SPI_TX_MODE   (NMI_SPI_REG_BASE + 0x20)

◆ NMI_SPI_TX_MODE [2/2]

#define NMI_SPI_TX_MODE   (NMI_SPI_REG_BASE + 0x20)

◆ NMI_STATE_REG

#define NMI_STATE_REG   (0x108c)

◆ PING_ERR_DEST_UNREACH

#define PING_ERR_DEST_UNREACH   1

◆ PING_ERR_SUCCESS

#define PING_ERR_SUCCESS   0

◆ PING_ERR_TIMEOUT

#define PING_ERR_TIMEOUT   2

◆ PROGRAM_START

#define PROGRAM_START   0x26961735ul

◆ PSK_CALC_LEN

#define PSK_CALC_LEN   40

◆ RAW_SOCK_ID

#define RAW_SOCK_ID   (TCP_SOCK_MAX + UDP_SOCK_MAX)

◆ RAW_SOCK_MAX

#define RAW_SOCK_MAX   1

◆ REV

#define REV ( id)    (((id)&0x00000ffful))

◆ REV_2B0

#define REV_2B0   (0x2B0)

◆ REV_3A0

#define REV_3A0   (0x3A0)

◆ REV_B0

#define REV_B0   (0x2B0)

◆ rHAVE_ETHERNET_MODE_BIT

#define rHAVE_ETHERNET_MODE_BIT   (NBIT7)

◆ rHAVE_EXT_PA_INV_TX_RX

#define rHAVE_EXT_PA_INV_TX_RX   (NBIT4)

◆ rHAVE_LEGACY_RF_SETTINGS

#define rHAVE_LEGACY_RF_SETTINGS   (NBIT5)

◆ rHAVE_LOGS_DISABLED_BIT

#define rHAVE_LOGS_DISABLED_BIT   (NBIT6)

◆ rHAVE_SDIO_IRQ_GPIO_BIT

#define rHAVE_SDIO_IRQ_GPIO_BIT   (NBIT0)

◆ rHAVE_SLEEP_CLK_SRC_RTC_BIT

#define rHAVE_SLEEP_CLK_SRC_RTC_BIT   (NBIT2)

◆ rHAVE_SLEEP_CLK_SRC_XO_BIT

#define rHAVE_SLEEP_CLK_SRC_XO_BIT   (NBIT3)

◆ rHAVE_USE_PMU_BIT

#define rHAVE_USE_PMU_BIT   (NBIT1)

◆ rNMI_BOOT_RESET_MUX

#define rNMI_BOOT_RESET_MUX   (0x1118)

◆ rNMI_GLB_RESET

#define rNMI_GLB_RESET   (0x1400)

◆ rNMI_GP_REG_0

#define rNMI_GP_REG_0   (0x149c)

◆ rNMI_GP_REG_1

#define rNMI_GP_REG_1   (0x14A0)

◆ SOCK_DGRAM

#define SOCK_DGRAM   2

◆ SOCK_ERR_NO_ERROR

#define SOCK_ERR_NO_ERROR   0

◆ SOCK_RAW

#define SOCK_RAW   3

◆ SOCK_STREAM

#define SOCK_STREAM   1

◆ SOCKET_BUFFER_MAX_LENGTH

#define SOCKET_BUFFER_MAX_LENGTH   1400

◆ SOCKET_BUFFER_SIZE

#define SOCKET_BUFFER_SIZE   1472

◆ SOCKET_CMD_ACCEPT

#define SOCKET_CMD_ACCEPT   0x43

◆ SOCKET_CMD_BIND

#define SOCKET_CMD_BIND   0x41

◆ SOCKET_CMD_CLOSE

#define SOCKET_CMD_CLOSE   0x49

◆ SOCKET_CMD_CONNECT

#define SOCKET_CMD_CONNECT   0x44

◆ SOCKET_CMD_DNS_RESOLVE

#define SOCKET_CMD_DNS_RESOLVE   0x4A

◆ SOCKET_CMD_LISTEN

#define SOCKET_CMD_LISTEN   0x42

◆ SOCKET_CMD_PING

#define SOCKET_CMD_PING   0x52

◆ SOCKET_CMD_RAW_SET_SOCK_OPT [1/2]

#define SOCKET_CMD_RAW_SET_SOCK_OPT   0x54

◆ SOCKET_CMD_RAW_SET_SOCK_OPT [2/2]

#define SOCKET_CMD_RAW_SET_SOCK_OPT   0x54

◆ SOCKET_CMD_RECV

#define SOCKET_CMD_RECV   0x46

◆ SOCKET_CMD_RECVFROM

#define SOCKET_CMD_RECVFROM   0x48

◆ SOCKET_CMD_SEND

#define SOCKET_CMD_SEND   0x45

◆ SOCKET_CMD_SENDTO

#define SOCKET_CMD_SENDTO   0x47

◆ SOCKET_CMD_SET_SOCKET_OPTION

#define SOCKET_CMD_SET_SOCKET_OPTION   0x4F

◆ SOCKET_CMD_SSL_CLOSE

#define SOCKET_CMD_SSL_CLOSE   0x4E

◆ SOCKET_CMD_SSL_CONNECT

#define SOCKET_CMD_SSL_CONNECT   0x4B

◆ SOCKET_CMD_SSL_CONNECT_ALPN

#define SOCKET_CMD_SSL_CONNECT_ALPN   0x53

◆ SOCKET_CMD_SSL_CREATE

#define SOCKET_CMD_SSL_CREATE   0x50

◆ SOCKET_CMD_SSL_RECV

#define SOCKET_CMD_SSL_RECV   0x4D

◆ SOCKET_CMD_SSL_SEND

#define SOCKET_CMD_SSL_SEND   0x4C

◆ SOCKET_CMD_SSL_SET_SOCK_OPT

#define SOCKET_CMD_SSL_SET_SOCK_OPT   0x51

◆ SOCKET_FLAGS_IPPROTO_RAW

#define SOCKET_FLAGS_IPPROTO_RAW   0x02

◆ SOCKET_FLAGS_SSL

#define SOCKET_FLAGS_SSL   0x01

◆ SOCKET_REQUEST

#define SOCKET_REQUEST ( ctx,
req_id,
req_args,
req_size,
req_payload,
req_payload_size,
req_payload_offset )    hif_send(ctx, M2M_REQ_GROUP_IP, req_id, req_args, req_size, req_payload, req_payload_size, req_payload_offset)

◆ SPI_BASE

#define SPI_BASE   NMI_SPI_REG_BASE

◆ SPI_RESP_RETRY_COUNT

#define SPI_RESP_RETRY_COUNT   (10)

◆ SPI_RETRY_COUNT

#define SPI_RETRY_COUNT   (10)

◆ SSL_FLAGS_ACTIVE

#define SSL_FLAGS_ACTIVE   NBIT0

◆ SSL_TX_PACKET_OFFSET

#define SSL_TX_PACKET_OFFSET   (TCP_TX_PACKET_OFFSET + TLS_RECORD_HEADER_LENGTH)

◆ TCP_IP_HEADER_LENGTH

#define TCP_IP_HEADER_LENGTH   (40)

◆ TCP_SOCK_MAX

#define TCP_SOCK_MAX   (7

Maximum number of simultaneous TCP sockets.

◆ TCP_TX_PACKET_OFFSET

#define TCP_TX_PACKET_OFFSET   (IP_PACKET_OFFSET + TCP_IP_HEADER_LENGTH)

◆ TIMEOUT

#define TIMEOUT   (2000)

◆ TLS_RECORD_HEADER_LENGTH

#define TLS_RECORD_HEADER_LENGTH   (5)

◆ UDP_IP_HEADER_LENGTH

#define UDP_IP_HEADER_LENGTH   (28)

◆ UDP_SOCK_MAX

#define UDP_SOCK_MAX

Maximum number of simultaneous UDP sockets.

◆ UDP_TX_PACKET_OFFSET

#define UDP_TX_PACKET_OFFSET   (IP_PACKET_OFFSET + UDP_IP_HEADER_LENGTH)

◆ WAKE_CLK_REG

#define WAKE_CLK_REG   (0x1)

◆ WAKEUP_TRIALS

#define WAKEUP_TRIALS   (4)

◆ WEP_104_KEY_SIZE [1/2]

#define WEP_104_KEY_SIZE   ((uint8_t)13)

◆ WEP_104_KEY_SIZE [2/2]

#define WEP_104_KEY_SIZE   ((uint8_t)13)

◆ WEP_104_KEY_STRING_SIZE [1/2]

#define WEP_104_KEY_STRING_SIZE   ((uint8_t)26)

◆ WEP_104_KEY_STRING_SIZE [2/2]

#define WEP_104_KEY_STRING_SIZE   ((uint8_t)26)

◆ WEP_40_KEY_SIZE

#define WEP_40_KEY_SIZE   ((uint8_t)5)

◆ WEP_40_KEY_STRING_SIZE

#define WEP_40_KEY_STRING_SIZE   ((uint8_t)10)

◆ WEP_KEY_MAX_INDEX

#define WEP_KEY_MAX_INDEX   ((uint8_t)4)

◆ WIFI8_CMD_DMA_EXT_READ

#define WIFI8_CMD_DMA_EXT_READ   0xc8

◆ WIFI8_CMD_DMA_EXT_WRITE

#define WIFI8_CMD_DMA_EXT_WRITE   0xc7

◆ WIFI8_CMD_INTERNAL_READ

#define WIFI8_CMD_INTERNAL_READ   0xc4

◆ WIFI8_CMD_INTERNAL_WRITE

#define WIFI8_CMD_INTERNAL_WRITE   0xc3

◆ WIFI8_CMD_RESET

#define WIFI8_CMD_RESET   0xcf

◆ WIFI8_CMD_SINGLE_READ

#define WIFI8_CMD_SINGLE_READ   0xca

◆ WIFI8_CMD_SINGLE_WRITE

#define WIFI8_CMD_SINGLE_WRITE   0xc9

◆ WIFI8_DATA_PKT_SZ

#define WIFI8_DATA_PKT_SZ   WIFI8_DATA_PKT_SZ_8K

◆ WIFI8_DATA_PKT_SZ_1K

#define WIFI8_DATA_PKT_SZ_1K   1024

◆ WIFI8_DATA_PKT_SZ_256

#define WIFI8_DATA_PKT_SZ_256   256

◆ WIFI8_DATA_PKT_SZ_4K

#define WIFI8_DATA_PKT_SZ_4K   (4 * 1024)

◆ WIFI8_DATA_PKT_SZ_512

#define WIFI8_DATA_PKT_SZ_512   512

◆ WIFI8_DATA_PKT_SZ_8K

#define WIFI8_DATA_PKT_SZ_8K   (8 * 1024)

◆ WIFI8_SPI_RESP_RETRY_COUNT

#define WIFI8_SPI_RESP_RETRY_COUNT   (10)

◆ WIFI8_SPI_RETRY_COUNT

#define WIFI8_SPI_RETRY_COUNT   (10)

◆ WIFI_1X_TLS_HS_FLAGS_DEFAULT

#define WIFI_1X_TLS_HS_FLAGS_DEFAULT
Value:
( \
#define WIFI_1X_TLS_HS_FLAGS_SESSION_CACHING
Definition wifi8_types.h:370
#define WIFI_1X_TLS_HS_FLAGS_PEER_AUTH
Definition wifi8_types.h:367
#define WIFI_1X_TLS_HS_FLAGS_PEER_CERTTIMECHECK
Definition wifi8_types.h:368

◆ WIFI_1X_TLS_HS_FLAGS_PEER_AUTH

#define WIFI_1X_TLS_HS_FLAGS_PEER_AUTH   NBIT1

◆ WIFI_1X_TLS_HS_FLAGS_PEER_CERTTIMECHECK

#define WIFI_1X_TLS_HS_FLAGS_PEER_CERTTIMECHECK   NBIT2

◆ WIFI_1X_TLS_HS_FLAGS_REQUIRE_TIME

#define WIFI_1X_TLS_HS_FLAGS_REQUIRE_TIME   NBIT3

◆ WIFI_1X_TLS_HS_FLAGS_SESSION_CACHING

#define WIFI_1X_TLS_HS_FLAGS_SESSION_CACHING   NBIT4

◆ WIFI_1X_TLS_HS_FLAGS_SPECIFY_ROOTCERT

#define WIFI_1X_TLS_HS_FLAGS_SPECIFY_ROOTCERT   NBIT6

◆ WIFI_HOST_RCV_CTRL_0

#define WIFI_HOST_RCV_CTRL_0   (0x1070)

◆ WIFI_HOST_RCV_CTRL_1

#define WIFI_HOST_RCV_CTRL_1   (0x1084)

◆ WIFI_HOST_RCV_CTRL_2

#define WIFI_HOST_RCV_CTRL_2   (0x1078)

◆ WIFI_HOST_RCV_CTRL_3

#define WIFI_HOST_RCV_CTRL_3   (0x106c)

◆ WIFI_HOST_RCV_CTRL_4

#define WIFI_HOST_RCV_CTRL_4   (0x150400ul)

Typedef Documentation

◆ wifi8_app_eth_cb_t

typedef void(* wifi8_app_eth_cb_t) (uint8_t u8_msg_type, void *pv_msg, void *pv_ctrl_buf)

◆ wifi8_app_mon_cb_t

typedef void(* wifi8_app_mon_cb_t) (wifi8_m2m_wifi_rx_packet_info_t *pstr_wifi_rx_packet, uint8_t *pu8_payload, uint16_t u16_payload_size)

◆ wifi8_app_resolve_cb_t

typedef void(* wifi8_app_resolve_cb_t) (uint8_t *pu8_domain_name, uint32_t u32_server_ip)

◆ wifi8_app_socket_cb_t

typedef void(* wifi8_app_socket_cb_t) (int8_t sock, uint8_t u8_msg, void *pv_msg)

◆ wifi8_app_wifi_cb_t

typedef void(* wifi8_app_wifi_cb_t) (uint8_t u8_msg_type, void *pv_msg)

◆ wifi8_ping_cb_t

typedef void(* wifi8_ping_cb_t) (uint32_t u32ip_addr, uint32_t u32rtt, uint8_t u8_error_code)

Enumeration Type Documentation

◆ wifi8_1x_option_t

Enumerator
WIFI_1X_BYPASS_SERVER_AUTH 

Server authentication for 802.1x connections. Values are of type int.
0: Authenticate server; Default, Recommended.
1: Bypass server authentication.

WIFI_1X_TIME_VERIF_MODE 

Mode for checking expiry of server certificate chain. Values are of type tenuTlsCertExpSettings. Default is TLS_CERT_EXP_CHECK_EN_IF_SYS_TIME.

WIFI_1X_SESSION_CACHING 

TLS session caching on/off for 802.1x connections. Values are of type int.
0: Session caching off.
1: Session caching on; Default.
Note that the WINC implementation of PEAPv0 does not support session caching; this setting is ignored for PEAPv0 methods.

WIFI_1X_SPECIFIC_ROOTCERT 

SHA1 digest of subject name of the root certificate to be used during server authentication. Values are:
20-byte arrays: authentication is limited to this particular root certificate; Recommended
0-byte array: authentication can succeed with any certificate in the WINC root certificate store; Default.

◆ wifi8_cred_store_option_t

Enumerator
WIFI_CRED_DONTSAVE 

Credentials will not be stored in WINC flash.

WIFI_CRED_SAVE_UNENCRYPTED 

Credentials will be stored unencrypted in WINC flash.

WIFI_CRED_SAVE_ENCRYPTED 

Credentials will be stored encrypted in WINC flash. The encryption is not secure; it is merely intended to prevent sensitive information being leaked by an opportunistic read of WINC flash contents. The encryption keys involve WINC efuse contents, so WINC efuses should not be written while this option is in use.

◆ wifi8_m2m_ap_cmd_t

Enumerator
M2M_WIFI_REQ_ENABLE_AP_LEGACY 

Request to enable AP mode.

M2M_WIFI_REQ_DISABLE_AP 

Request to disable AP mode.

M2M_WIFI_REQ_ENABLE_AP 

Request to enable AP mode.

M2M_WIFI_MAX_AP_ALL 

◆ wifi8_m2m_config_cmd_t

Enumerator
M2M_WIFI_REQ_RESTART 

Restart the WINC MAC layer, it's doesn't restart the IP layer.

M2M_WIFI_REQ_SET_MAC_ADDRESS 

Set the WINC mac address (not possible for production effused boards).

M2M_WIFI_REQ_CURRENT_RSSI 

Request the current connected AP RSSI.

M2M_WIFI_RESP_CURRENT_RSSI 

Response to M2M_WIFI_REQ_CURRENT_RSSI with the RSSI value.

M2M_WIFI_REQ_RESTRICT_BLE 

Request restrict ble.

M2M_WIFI_REQ_UNRESTRICT_BLE 

Request unrestrict ble.

M2M_WIFI_REQ_GET_CONN_INFO 

Request connection information.

M2M_WIFI_RESP_CONN_INFO 

Response to M2M_WIFI_REQ_GET_CONN_INFO with the connection information.

M2M_WIFI_REQ_SET_DEVICE_NAME 

Request to set WINC device name property.

M2M_WIFI_REQ_START_PROVISION_MODE_LEGACY 

Request to start provisioning mode.

M2M_WIFI_RESP_PROVISION_INFO 

Response to the host with the provisioning information.

M2M_WIFI_REQ_STOP_PROVISION_MODE 

Request to stop provision mode.

M2M_WIFI_REQ_SET_SYS_TIME 

Request to set system time.

M2M_WIFI_REQ_ENABLE_SNTP_CLIENT 

Request to enable the simple network time protocol to get the time from the Internet. This is required for security purposes.

M2M_WIFI_REQ_DISABLE_SNTP_CLIENT 

Request to disable the simple network time protocol for applications that do not need it.

M2M_WIFI_RESP_MEMORY_RECOVER 

Reserved for debugging

M2M_WIFI_REQ_CUST_INFO_ELEMENT 

Request to add custom information to the Beacons IE.

M2M_WIFI_REQ_SCAN 

Request scan command.

M2M_WIFI_RESP_SCAN_DONE 

Response to notify scan complete.

M2M_WIFI_REQ_SCAN_RESULT 

Request for scan results.

M2M_WIFI_RESP_SCAN_RESULT 

Response to provide the scan results.

M2M_WIFI_REQ_SET_SCAN_OPTION 

Request to set scan options "slot time, slot number .. etc".

M2M_WIFI_REQ_SET_SCAN_REGION 

Request to set scan region.

M2M_WIFI_REQ_SET_POWER_PROFILE 

Request to set the Power Profile.

M2M_WIFI_REQ_SET_TX_POWER 

Request to set the TX Power.

M2M_WIFI_REQ_SET_BATTERY_VOLTAGE 

Request to set the Battery Voltage.

M2M_WIFI_REQ_SET_ENABLE_LOGS 

Request to enable logs.

M2M_WIFI_REQ_GET_SYS_TIME 

Request to get system time.

M2M_WIFI_RESP_GET_SYS_TIME 

Response to retrieve the system time.

M2M_WIFI_REQ_SEND_ETHERNET_PACKET 

Request to send Ethernet packet in bypass mode.

M2M_WIFI_RESP_ETHERNET_RX_PACKET 

Response to receive an Ethernet packet in bypass mode.

M2M_WIFI_REQ_SET_MAC_MCAST 

Request to set multicast filters.

M2M_WIFI_REQ_BLE_API_SEND 

Request to send an Encapsulated BLE API MSG

M2M_WIFI_RESP_BLE_API_RECV 

Response to receive an Encapsulated BLE API MSG

M2M_WIFI_REQ_SET_GAIN_TABLE 

Request to use Gain table from Flash

M2M_WIFI_RESP_SET_GAIN_TABLE 

Response to fail to use Gain table from Flash

M2M_WIFI_REQ_PASSIVE_SCAN 

Request a passive scan.

M2M_WIFI_REQ_CONFIG_SNTP 

Configure NTP servers.

M2M_WIFI_REQ_START_PROVISION_MODE 

Request to start provisioning mode.

M2M_WIFI_MAX_CONFIG_ALL 

◆ wifi8_m2m_conn_state_t

Enumerator
M2M_WIFI_DISCONNECTED 

Wi-Fi state is disconnected.

M2M_WIFI_CONNECTED 

Wi-Fi state is connected.

M2M_WIFI_ROAMED 

Wi-Fi state is roamed to new AP.

M2M_WIFI_UNDEF 

Undefined Wi-Fi State.

◆ wifi8_m2m_gen_cmd_t

Enumerator
M2M_WIFI_REQRSP_DELETE_APID 

Request/response to delete security credentials from WINC flash. (Processing matches tenuM2mConfigCmd.)

M2M_WIFI_REQ_ROAMING 

Request to enable/disable wifi roaming.(Processing matches tenuM2mConfigCmd.)

M2M_WIFI_MAX_GEN_ALL 

◆ wifi8_m2m_ota_cmd_t

Enumerator
M2M_OTA_REQ_NOTIF_SET_URL 

Reserved. Do not use.

M2M_OTA_REQ_NOTIF_CHECK_FOR_UPDATE 

Reserved. Do not use.

M2M_OTA_REQ_NOTIF_SCHED 

Reserved. Do not use.

M2M_OTA_REQ_START_UPDATE 

Request to start an OTA update.

M2M_OTA_REQ_SWITCH_FIRMWARE 

Request to switch firmware.

M2M_OTA_REQ_ROLLBACK 

Request to perform an OTA rollback.

M2M_OTA_REQ_ABORT 

Request to abort OTA.

M2M_OTA_RESP_NOTIF_UPDATE_INFO 

Reserved. Do not use.

M2M_OTA_RESP_UPDATE_STATUS 

Response to indicate the OTA update status.

M2M_OTA_REQ_TEST 

Reserved. Do not use.

M2M_OTA_MAX_ALL 

◆ wifi8_m2m_req_group_t

Enumerator
M2M_REQ_GROUP_MAIN 
M2M_REQ_GROUP_WIFI 
M2M_REQ_GROUP_IP 
M2M_REQ_GROUP_HIF 
M2M_REQ_GROUP_OTA 
M2M_REQ_GROUP_SSL 
M2M_REQ_GROUP_SIGMA 
M2M_REQ_GROUP_INTERNAL 

◆ wifi8_m2m_reqpkt_t

Enumerator
M2M_REQ_CONFIG_PKT 
M2M_REQ_DATA_PKT 

◆ wifi8_m2m_scan_ch_t

Enumerator
M2M_WIFI_CH_1 

Channel 1.

M2M_WIFI_CH_2 

Channel 2.

M2M_WIFI_CH_3 

Channel 3.

M2M_WIFI_CH_4 

Channel 4.

M2M_WIFI_CH_5 

Channel 5.

M2M_WIFI_CH_6 

Channel 6.

M2M_WIFI_CH_7 

Channel 7.

M2M_WIFI_CH_8 

Channel 8.

M2M_WIFI_CH_9 

Channel 9.

M2M_WIFI_CH_10 

Channel 10.

M2M_WIFI_CH_11 

Channel 11.

M2M_WIFI_CH_12 

Channel 12.

M2M_WIFI_CH_13 

Channel 13.

M2M_WIFI_CH_14 

Channel 14.

M2M_WIFI_CH_ALL 

◆ wifi8_m2m_sec_type_t

Enumerator
M2M_WIFI_SEC_INVALID 

Invalid security type.

M2M_WIFI_SEC_OPEN 

Wi-Fi network is not secured.

M2M_WIFI_SEC_WPA_PSK 

Wi-Fi network is secured with WPA/WPA2 personal(PSK).

M2M_WIFI_SEC_WEP 

Security type WEP (40 or 104) OPEN OR SHARED.

M2M_WIFI_SEC_802_1X 

Wi-Fi network is secured with WPA/WPA2 Enterprise.IEEE802.1x.

M2M_WIFI_NUM_AUTH_TYPES 

Upper limit for enum value.

◆ wifi8_m2m_server_cmd_t

Enumerator
M2M_WIFI_REQ_CLIENT_CTRL 

Currently not supported.

M2M_WIFI_RESP_CLIENT_INFO 

Currently not supported.

M2M_WIFI_REQ_SERVER_INIT 

Currently not supported.

M2M_WIFI_MAX_SERVER_ALL 

◆ wifi8_m2m_ssid_mode_t

Enumerator
SSID_MODE_VISIBLE 

SSID is visible to others.

SSID_MODE_HIDDEN 

SSID is hidden.

◆ wifi8_m2m_ssl_cmd_t

Enumerator
M2M_SSL_REQ_CERT_VERIF 
M2M_SSL_REQ_ECC 
M2M_SSL_RESP_ECC 
M2M_SSL_RSV 
M2M_SSL_REQ_WRITE_OWN_CERTS 
M2M_SSL_REQ_SET_CS_LIST 
M2M_SSL_RESP_SET_CS_LIST 
M2M_SSL_RESP_WRITE_OWN_CERTS 
M2M_SSL_REQ_SET_CERT_VERIF_MODE 

◆ wifi8_m2m_sta_cmd_t

Enumerator
M2M_WIFI_REQ_CONNECT 

Request to connect with a specified AP. This command is deprecated in favour of M2M_WIFI_REQ_CONN.

M2M_WIFI_REQ_DEFAULT_CONNECT 

Request to connect with a cached AP.

M2M_WIFI_RESP_DEFAULT_CONNECT 

Response for the default connect.

M2M_WIFI_REQ_DISCONNECT 

Request to disconnect from the AP.

M2M_WIFI_RESP_CON_STATE_CHANGED 

Response to indicate a change in the connection state.

M2M_WIFI_REQ_SLEEP 

Request to sleep.

M2M_WIFI_REQ_WPS_SCAN 

Request to WPS scan.

M2M_WIFI_REQ_WPS 

Request to start WPS.

M2M_WIFI_REQ_START_WPS 

This command is for internal use by the WINC and should not be used by the host driver.

M2M_WIFI_REQ_DISABLE_WPS 

Request to disable WPS.

M2M_WIFI_REQ_DHCP_CONF 

Response to indicate the obtained IP address.

M2M_WIFI_RESP_IP_CONFIGURED 

This command is for internal use by the WINC and should not be used by the host driver.

M2M_WIFI_RESP_IP_CONFLICT 

Response to indicate a conflict in obtained IP address. The user should re attempt the DHCP request.

M2M_WIFI_REQ_ENABLE_MONITORING 

Request to enable monitor mode.

M2M_WIFI_REQ_DISABLE_MONITORING 

Request to disable monitor mode.

M2M_WIFI_RESP_WIFI_RX_PACKET 

Response to indicate a packet was received in monitor mode.

M2M_WIFI_REQ_SEND_WIFI_PACKET 

Request to send a packet in monitor mode.

M2M_WIFI_REQ_LSN_INT 

Request to set the listen interval.

M2M_WIFI_REQ_DOZE 

Request to doze

M2M_WIFI_REQ_GET_PRNG 

Request PRNG.

M2M_WIFI_RESP_GET_PRNG 

Response for PRNG.

M2M_WIFI_REQ_CONN 

New command to connect with AP. This replaces M2M_WIFI_REQ_CONNECT. (Firmware continues to handle M2M_WIFI_REQ_CONNECT for backwards compatibility purposes.)

M2M_WIFI_IND_CONN_PARAM 

Provide extra information (such as Enterprise client certificate) required for connection.

M2M_WIFI_MAX_STA_ALL 

◆ wifi8_m2m_wifi_mode_t

Enumerator
M2M_WIFI_MODE_NORMAL 

Customer firmware.

M2M_WIFI_MODE_CONFIG 

Production test firmware.

M2M_WIFI_MODE_ETHERNET 

Ethernet Mode

M2M_WIFI_MODE_MAX 

◆ wifi8_nm_state_t

Enumerator
NM_STATE_DEINIT 

WINC is not initialized

NM_STATE_INIT 

WINC has been initialized. SPI flash access is possible.

NM_STATE_START 

WINC has started

◆ wifi8_return_value_t

WiFi 8 Click return value data.

Predefined enum values for driver return values.

Enumerator
WIFI8_OK 
WIFI8_ERROR 

◆ wifi8_socket_callback_msg_t

Enumerator
SOCKET_MSG_BIND 

Bind socket event.

SOCKET_MSG_LISTEN 

Listen socket event.

SOCKET_MSG_DNS_RESOLVE 

DNS Resolution event.

SOCKET_MSG_ACCEPT 

Accept socket event.

SOCKET_MSG_CONNECT 

Connect socket event.

SOCKET_MSG_RECV 

Receive socket event.

SOCKET_MSG_SEND 

Send socket event.

SOCKET_MSG_SENDTO 

Sendto socket event.

SOCKET_MSG_RECVFROM 

Recvfrom socket event.

◆ wifi8_tls_cert_exp_settings_t

Enumerator
TLS_CERT_EXP_CHECK_DISABLE 

Certificate expiry is not checked. Server authentication does not depend on expiry of certificates.

TLS_CERT_EXP_CHECK_ENABLE 

Certificate expiry is checked and current time is required. Server authentication fails if a certificate has expired or the current time is unknown.

TLS_CERT_EXP_CHECK_EN_IF_SYS_TIME 

Certificate expiry is only checked if current time is known. Server authentication fails if a certificate has expired; passes if the current time is unknown.

◆ wifi8_wifi_state_t

Enumerator
WIFI_STATE_DEINIT 

Wifi is not initialized

WIFI_STATE_INIT 

Wifi has been initialized. WINC flash access is possible via m2m_flash APIs.

WIFI_STATE_START 

Wifi has started