Merge "Update legacy headers in the new directory." into main

This commit is contained in:
Gabriel Biren 2024-04-04 22:06:55 +00:00 committed by Android (Google) Code Review
commit dc7e857273
3 changed files with 65 additions and 22 deletions

View file

@ -121,12 +121,10 @@ typedef struct {
/* RTT configuration v3 (11az support)*/
typedef struct {
wifi_rtt_config rtt_config;
byte ntb_min_measurement_time_millis; // 11az Non-Trigger-based (non-TB) minimum measurement
// time in milliseconds
byte ntb_max_measurement_time_millis; // 11az Non-Trigger-based (non-TB) maximum measurement
// time in milliseconds
byte tx_ltf_repetition_count; // Multiple transmissions of HE-LTF symbols in an HE
// Ranging NDP. A value of 1 indicates no repetition.
u64 ntb_min_measurement_time; // 11az Non-Trigger-based (non-TB) minimum measurement time in
// units of 100 microseconds
u64 ntb_max_measurement_time; // 11az Non-Trigger-based (non-TB) maximum measurement time in
// units of 10 milliseconds
} wifi_rtt_config_v3;
/* RTT results */
@ -184,11 +182,19 @@ typedef struct {
/* RTT results v3 (11az support)*/
typedef struct {
wifi_rtt_result_v2 rtt_result;
int tx_ltf_repetition_count; // 11az Transmit LTF repetitions used to get this result.
int ntb_min_measurement_time_millis; // Minimum non-trigger based (non-TB) dynamic measurement
// time in milliseconds assigned by the 11az responder.
int ntb_max_measurement_time_millis; // Maximum non-trigger based (non-TB) dynamic measurement
// time in milliseconds assigned by the 11az responder.
byte i2r_tx_ltf_repetition_count;// Multiple transmissions of HE-LTF symbols in an HE (I2R)
// Ranging NDP. An HE-LTF repetition value of 1 indicates no
// repetitions.
byte r2i_tx_ltf_repetition_count;// Multiple transmissions of HE-LTF symbols in an HE (R2I)
// Ranging NDP. An HE-LTF repetition value of 1 indicates no
// repetitions.
u64 ntb_min_measurement_time; // Minimum non-trigger based (non-TB) dynamic measurement time
// in units of 100 microseconds assigned by the 11az responder.
u64 ntb_max_measurement_time; // Maximum non-trigger based (non-TB) dynamic measurement
// time in units of 10 milliseconds assigned by the 11az
// responder.
byte num_tx_sts; // Number of transmit space-time streams used.
byte num_rx_sts; // Number of receive space-time streams used.
} wifi_rtt_result_v3;
@ -305,8 +311,6 @@ typedef struct {
byte az_bw_support; // bit mask indicates what BW is supported by 11az initiator
byte ntb_initiator_supported; // if 11az non-TB initiator is supported
byte ntb_responder_supported; // if 11az non-TB responder is supported
byte max_tx_ltf_repetition_count;// maximum HE LTF repetitions the 11az initiator is capable of
// transmitting in the preamble of I2R NDP
} wifi_rtt_capabilities_v3;
/* RTT capabilities v3 of the device (11az support) */

View file

@ -417,6 +417,24 @@ typedef struct {
wifi_iface_combination iface_combinations[MAX_IFACE_COMBINATIONS];
} wifi_iface_concurrency_matrix;
/* Wifi OUI data */
typedef struct {
/* OUI : 24-bit organizationally unique identifier to identify the Vendor/OEM */
u32 oui;
/* Length of the data buffer */
u32 data_len;
/* Vendor-specific data */
const u8 *data;
} oui_keyed_data;
/* Wifi Vendor data list */
typedef struct {
/* Number of OUI Keyed Data objects */
u32 num_oui_keyed_data;
/* List of OUI Keyed Data */
oui_keyed_data *oui_data;
} wifi_vendor_data;
/* Initialize/Cleanup */
wifi_error wifi_initialize(wifi_handle *handle);
@ -1007,6 +1025,16 @@ typedef struct {
*/
wifi_error (*wifi_twt_get_capabilities)(wifi_interface_handle iface,
wifi_twt_capabilities* capabilities);
/**
* Register TWT events before sending any TWT request
*
* @param wifi_interface_handle:
* @param events: TWT events callbacks to register
* @return Synchronous wifi_error
*/
wifi_error (*wifi_twt_register_events)(wifi_interface_handle iface, wifi_twt_events events);
/**
* Setup a TWT session.
*
@ -1017,11 +1045,10 @@ typedef struct {
* @param id Identifier for the command. The value 0 is reserved.
* @param iface Wifi interface handle
* @param request TWT request parameters
* @param events TWT events
* @return Synchronous wifi_error
*/
wifi_error (*wifi_twt_session_setup)(wifi_request_id id, wifi_interface_handle iface,
wifi_twt_request request, wifi_twt_events events);
wifi_twt_request request);
/**
* Update a TWT session.
*
@ -1098,7 +1125,7 @@ typedef struct {
* @param TwtCallbackHandler: callback function pointers
* @return Synchronous wifi_error
*
* Note: This function is deprecated
* Note: This function is deprecated by wifi_twt_register_events
*/
wifi_error (*wifi_twt_register_handler)(wifi_interface_handle iface,
TwtCallbackHandler handler);
@ -1170,7 +1197,7 @@ typedef struct {
* @param config_id: configuration ID of TWT request
* @return Synchronous wifi_error
*
* Note: This function is deprecated by wifi_twt_session_clear_stats
* Note: This function is deprecated.
*/
wifi_error (*wifi_twt_clear_stats)(wifi_interface_handle iface, u8 config_id);
@ -1373,6 +1400,18 @@ typedef struct {
*/
wifi_error (*wifi_set_mlo_mode)(wifi_handle handle, wifi_mlo_mode mode);
/**@brief wifi_virtual_interface_create_with_vendor_data
* Create new virtual interface using vendor data.
* @param handle: global wifi_handle
* @param ifname: name of interface to be created.
* @param iface_type: one of interface types from wifi_interface_type.
* @param vendor_data: vendor data to apply on this interface.
* @return Synchronous wifi_error
*/
wifi_error (*wifi_virtual_interface_create_with_vendor_data)
(wifi_handle handle, const char* ifname,
wifi_interface_type iface_type, wifi_vendor_data* vendor_data);
/*
* when adding new functions make sure to add stubs in
* wifi_legacy_hal_stubs.cpp::initHalFuncTableWithStubs

View file

@ -31,8 +31,8 @@ typedef struct {
u8 is_flexible_twt_supported; // 0 for not supporting flexible twt schedules
u32 min_wake_duration_micros; // minimum twt wake duration capable in microseconds
u32 max_wake_duration_micros; // maximum twt wake duration capable in microseconds
u32 min_wake_interval_micros; // minimum twt wake interval capable in microseconds
u32 max_wake_interval_micros; // maximum twt wake interval capable in microseconds
u64 min_wake_interval_micros; // minimum twt wake interval capable in microseconds
u64 max_wake_interval_micros; // maximum twt wake interval capable in microseconds
} wifi_twt_capabilities;
/* TWT request parameters to setup or update a TWT session */
@ -41,8 +41,8 @@ typedef struct {
// Otherwise UNSPECIFIED.
u32 min_wake_duration_micros; // minimum twt wake duration in microseconds
u32 max_wake_duration_micros; // maximum twt wake duration in microseconds
u32 min_wake_interval_micros; // minimum twt wake interval in microseconds
u32 max_wake_interval_micros; // maximum twt wake interval in microseconds
u64 min_wake_interval_micros; // minimum twt wake interval in microseconds
u64 max_wake_interval_micros; // maximum twt wake interval in microseconds
} wifi_twt_request;
/* TWT negotiation types */
@ -56,7 +56,7 @@ typedef struct {
u32 session_id; // a unique identifier for the session
s8 mlo_link_id; // link id in case of MLO connection. Otherwise UNSPECIFIED.
u32 wake_duration_micros; // TWT service period in microseconds
u32 wake_interval_micros; // TWT wake interval for this session in microseconds
u64 wake_interval_micros; // TWT wake interval for this session in microseconds
wifi_twt_negotiation_type negotiation_type; // TWT negotiation type
u8 is_trigger_enabled; // 0 if this TWT session is not trigger enabled
u8 is_announced; // 0 if this TWT session is not announced