Skip to content

Commit

Permalink
Upload wifi-host-driver 3.1.0.23284 [2307]
Browse files Browse the repository at this point in the history
  • Loading branch information
gitlab-runner committed Mar 28, 2024
1 parent 04ee318 commit 974a4bf
Show file tree
Hide file tree
Showing 242 changed files with 52,324 additions and 50,149 deletions.
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,3 @@ The [release notes](./RELEASE.md) detail the current release. You can also find
* [Infineon Technologies](http://www.infineon.com)

---
© Infineon Technologies, 2019.
27 changes: 12 additions & 15 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Wi-Fi Host Driver (WHD) v3.0.0
# Wi-Fi Host Driver (WHD) v3.1.0
Please refer to the [README File](./README.md) and the [WHD API Reference Manual](https://infineon.github.io/wifi-host-driver/html/index.html) for a complete description of the Wi-Fi Host Driver.

## Features
Expand All @@ -11,12 +11,16 @@ Please refer to the [README File](./README.md) and the [WHD API Reference Manual
* Supports low-power offloads, including ARP, packet filters, TCP Keepalive offload, DHCP lease time renewal offload, and Beacon trim
* Includes WFA pre-certification support for 802.11n and WPA3

## Changes since v2.7.0
## Changes since v3.0.0
### New Features
* 43022 support
* Added MQTT offload support
* Added NAT/NULL Keepalive offload support
* Added auto TKO offload support

### Defect Fixes

* 43022CUB M2 Board NVRAM update to rev1.2
* Remove ARM compilation warning
* Fix mfg firmware assoication issue with open security

### Known Issues

Expand All @@ -26,26 +30,20 @@ Please refer to the [README File](./README.md) and the [WHD API Reference Manual

#### CYW43012
* --- 13.10.271.305 ---
* Fixed CVE issue
* --- 13.10.271.293 ---

#### CYW4373
* --- 13.10.246.321 ---
* Fixed CVE issue
* --- 13.10.246.286 ---

#### CYW43439
* --- 7.95.64 ---
* CVE Fixs
* --- 7.95.62 ---

#### CYW43909
* --- 7.15.168.163 ---
* CVE fixs
* --- 7.15.168.159 ---

#### CYW43022
* --- 13.54.1 ---
* --- 13.60.4 ---
* Offload support
* --- 13.54.1 ---

Note: [r] is regulatory-related

Expand All @@ -55,7 +53,7 @@ This version of the WHD was validated for compatibility with the following softw
| Software and Tools | Version |
| :--- | :---- |
| GCC Compiler | 11.3 |
| IAR Compiler | 9.3 |
| IAR Compiler | 9.40 |
| Arm Compiler 6 | 6.16 |
| Mbed OS | 6.2.0 |
| ThreadX/NetX-Duo | 5.8 |
Expand All @@ -68,4 +66,3 @@ This version of the WHD was validated for compatibility with the following softw
* [Infineon Technologies](http://www.infineon.com)

---
© Infineon Technologies, 2019.
2 changes: 1 addition & 1 deletion WiFi_Host_Driver/inc/whd.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2023, Cypress Semiconductor Corporation (an Infineon company)
* Copyright 2024, Cypress Semiconductor Corporation (an Infineon company)
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down
10 changes: 5 additions & 5 deletions WiFi_Host_Driver/inc/whd_events.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2023, Cypress Semiconductor Corporation (an Infineon company)
* Copyright 2024, Cypress Semiconductor Corporation (an Infineon company)
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down Expand Up @@ -225,7 +225,7 @@ typedef void *(*whd_error_handler_t)(whd_driver_t whd_driver, const uint8_t *err
*
* @return WHD_SUCCESS or Error code
*/
uint32_t whd_wifi_set_event_handler(whd_interface_t ifp, const uint32_t *event_type, whd_event_handler_t handler_func,
whd_result_t whd_wifi_set_event_handler(whd_interface_t ifp, const uint32_t *event_type, whd_event_handler_t handler_func,
void *handler_user_data, uint16_t *event_index);
/** Registers a handler to receive error callbacks.
*
Expand All @@ -246,7 +246,7 @@ uint32_t whd_wifi_set_event_handler(whd_interface_t ifp, const uint32_t *event_t
*
* @return WHD_SUCCESS or Error code
*/
uint32_t whd_wifi_set_error_handler(whd_interface_t ifp, const uint8_t *error_nums, whd_error_handler_t handler_func,
whd_result_t whd_wifi_set_error_handler(whd_interface_t ifp, const uint8_t *error_nums, whd_error_handler_t handler_func,
void *handler_user_data, uint16_t *error_index);

/** Delete/Deregister the event entry where callback is registered
Expand All @@ -257,7 +257,7 @@ uint32_t whd_wifi_set_error_handler(whd_interface_t ifp, const uint8_t *error_nu
* @return WHD_SUCCESS or Error code
*/

uint32_t whd_wifi_deregister_event_handler(whd_interface_t ifp, uint16_t event_index);
whd_result_t whd_wifi_deregister_event_handler(whd_interface_t ifp, uint16_t event_index);
/** Delete/Deregister the error entry where callback is registered
*
* @param ifp Pointer to handle instance of whd interface
Expand All @@ -266,7 +266,7 @@ uint32_t whd_wifi_deregister_event_handler(whd_interface_t ifp, uint16_t event_i
* @return WHD_SUCCESS or Error code
*/

uint32_t whd_wifi_deregister_error_handler(whd_interface_t ifp, uint16_t error_index);
whd_result_t whd_wifi_deregister_error_handler(whd_interface_t ifp, uint16_t error_index);

#ifdef __cplusplus
} /* extern "C" */
Expand Down
2 changes: 1 addition & 1 deletion WiFi_Host_Driver/inc/whd_network_types.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2023, Cypress Semiconductor Corporation (an Infineon company)
* Copyright 2024, Cypress Semiconductor Corporation (an Infineon company)
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down
2 changes: 1 addition & 1 deletion WiFi_Host_Driver/inc/whd_resource_api.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2023, Cypress Semiconductor Corporation (an Infineon company)
* Copyright 2024, Cypress Semiconductor Corporation (an Infineon company)
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down
116 changes: 112 additions & 4 deletions WiFi_Host_Driver/inc/whd_types.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2023, Cypress Semiconductor Corporation (an Infineon company)
* Copyright 2024, Cypress Semiconductor Corporation (an Infineon company)
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down Expand Up @@ -65,9 +65,9 @@ extern "C"

#define PMKID_LEN (16) /**< PMKID LENGTH */

#define ULP_NO_SUPPORT (0) /* Flag to disable ULP in 43022 */
#define ULP_DS1_SUPPORT (1) /* Flag to enable DS1 mode in 43022 */
#define ULP_DS2_SUPPORT (2) /* Flag to enable DS2 mode in 43022(Only supported in DM) */
#define ULP_NO_SUPPORT (0) /**< Flag to disable ULP in 43022 */
#define ULP_DS1_SUPPORT (1) /**< Flag to enable DS1 mode in 43022 */
#define ULP_DS2_SUPPORT (2) /**< Flag to enable DS2 mode in 43022(Only supported in DM) */
#define WHD_OOB_CONFIG_VERSION (2) /**< Indicate the version for whd_oob_config structure */
#define WHD_SAP_USE_CHANSPEC (1) /**< Define this macro as any value indicate whd_wifi_init_ap api uses chanspec instead of channel */

Expand Down Expand Up @@ -104,6 +104,10 @@ typedef struct wl_pkt_filter_stats whd_pkt_filter_stats_t;
typedef struct whd_tko_retry whd_tko_retry_t;
typedef struct whd_tko_connect whd_tko_connect_t;
typedef struct whd_tko_status whd_tko_status_t;
typedef struct whd_tko_auto_filter whd_tko_auto_filter_t;
typedef struct whd_tko_autoconnect whd_tko_autoconnect_t;
typedef struct tls_param_info tls_param_info_t;
typedef struct secure_sess_info secure_sess_info_t;
/** @endcond */
/******************************************************
* Constants
Expand Down Expand Up @@ -1291,6 +1295,110 @@ typedef struct
whd_bool_t enabled_status; /**< When returned from wwd_wifi_get_packet_filters, indicates if the filter is enabled */
} whd_packet_filter_t;

typedef struct whd_keep_alive
{
uint32_t period_msec;
uint16_t len_bytes;
uint8_t *data;
} whd_keep_alive_t;

#define TLS_MAX_KEY_LENGTH 48
#define TLS_MAX_MAC_KEY_LENGTH 32
#define TLS_MAX_IV_LENGTH 32
#define TLS_MAX_SEQUENCE_LENGTH 8
#define TLS_MAX_PAYLOAD_LEN 1024

/* Secured WOWL packet was encrypted, need decrypted before check filter match */
typedef enum wl_wowl_tls_mode{
TLS_MODE_SSWOWL,
TLS_MODE_MIWOWL
} wl_wowl_tls_mode_t;

/* add supported cipher suite according rfc5246#appendix-A.5 */
typedef enum {
TLS_RSA_WITH_AES_128_CBC_SHA = 0x002F,
TLS_RSA_WITH_AES_256_CBC_SHA = 0x0035
} Cipher_Suite_e;

typedef enum {
CONTENTTYPE_CHANGE_CIPHER_SPEC = 20,
CONTENTTYPE_ALERT,
CONTENTTYPE_HANDSHAKE,
CONTENTTYPE_APPLICATION_DATA
} ContentType_e;

typedef enum {
COMPRESSIONMETHOD_NULL = 0
} CompressionMethod_e;

typedef enum {
BULKCIPHERALGORITHM_NULL,
BULKCIPHERALGORITHM_RC4,
BULKCIPHERALGORITHM_3DES,
BULKCIPHERALGORITHM_AES
} BulkCipherAlgorithm_e;

typedef enum {
CIPHERTYPE_STREAM = 1,
CIPHERTYPE_BLOCK,
CIPHERTYPE_AEAD
} CipherType_e;

typedef enum {
MACALGORITHM_NULL,
MACALGORITHM_HMAC_MD5,
MACALGORITHM_HMAC_SHA1,
MACALGORITHM_HMAC_SHA256,
MACALGORITHM_HMAC_SHA384,
MACALGORITHM_HMAC_SHA512
} MACAlgorithm_e;

typedef struct {
uint8_t major;
uint8_t minor;
uint8_t padding[2];
} ProtocolVersion;

#define ETHER_ADDR_LEN 6
#define IPV4_ADDR_LEN 4

struct tls_param_info{
ProtocolVersion version;
uint32_t compression_algorithm;
uint32_t cipher_algorithm;
uint32_t cipher_type;
uint32_t mac_algorithm;
uint32_t keepalive_interval; /* keepalive interval, in seconds */
uint8_t read_master_key[TLS_MAX_KEY_LENGTH];
uint32_t read_master_key_len;
uint8_t read_iv[TLS_MAX_IV_LENGTH];
uint32_t read_iv_len;
uint8_t read_mac_key[TLS_MAX_MAC_KEY_LENGTH];
uint32_t read_mac_key_len;
uint8_t read_sequence[TLS_MAX_SEQUENCE_LENGTH];
uint32_t read_sequence_len;
uint8_t write_master_key[TLS_MAX_KEY_LENGTH];
uint32_t write_master_key_len;
uint8_t write_iv[TLS_MAX_IV_LENGTH];
uint32_t write_iv_len;
uint8_t write_mac_key[TLS_MAX_MAC_KEY_LENGTH];
uint32_t write_mac_key_len;
uint8_t write_sequence[TLS_MAX_SEQUENCE_LENGTH];
uint32_t write_sequence_len;
uint32_t tcp_ack_num;
uint32_t tcp_seq_num;
uint8_t local_ip[IPV4_ADDR_LEN];
uint8_t remote_ip[IPV4_ADDR_LEN];
uint16_t local_port;
uint16_t remote_port;
uint8_t local_mac_addr[ETHER_ADDR_LEN];
uint8_t remote_mac_addr[ETHER_ADDR_LEN];
uint32_t app_syncid;
uint8_t payload[TLS_MAX_PAYLOAD_LEN];
uint16_t payload_len;
bool encrypt_then_mac;
};

#define TKO_DATA_OFFSET offsetof(wl_tko_t, data) /**< TKO data offset */

#ifdef __cplusplus
Expand Down
6 changes: 3 additions & 3 deletions WiFi_Host_Driver/inc/whd_version.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#define WHD_VERSION "3.0.0.22316"
#define WHD_BRANCH "v3.0.0"
#define WHD_DATE "2023-12-04 07:24:34 -0600"
#define WHD_VERSION "3.1.0.23284"
#define WHD_BRANCH "v3.1.0"
#define WHD_DATE "2024-03-21 22:57:11 +0800"
Loading

0 comments on commit 974a4bf

Please sign in to comment.