Loading fw/wmi_unified.h +79 −2 Original line number Diff line number Diff line Loading @@ -29012,6 +29012,78 @@ typedef struct { */ } wmi_afc_serv_resp_struct; /* * The following structures define the format used for AFC binary data objects * shared by the host SW and target FW. * FW expects these structures to be written in shared memory in little-endian * format. If the host/AFC app uses big endian format, Host/APP needs to * byteswap the data, so FW will get data in the expected little-endian format. */ typedef struct { A_UINT32 freq_info; /* bits 15:0 = u16 start_freq, * bits 31:16 = u16 end_freq * both in MHz units */ A_INT32 max_psd; /* Maximum PSD in dBm/MHz, value is stored in 0.01 dBm/MHz steps */ } afc_freq_info; typedef struct { A_UINT32 channel_cfi; /* channel center frequency index */ A_UINT32 max_eirp_pwr; /* maximum permissible EIRP available for above CFI in dBm, value is stored in 0.01 dBm steps */ } afc_eirp_info; typedef struct { A_UINT32 global_operating_class; A_UINT32 num_channels; /* num of valid channels for above global operating class */ /* This structure is followed by (num_channels*sizeof(afc_eirp_info)) * bytes array: * afc_eirp_info eirp_info[num_channels]; * List of channel cfi and eirp power values, * Total size will be num_channels * sizeof(afc_eirp_info) */ } afc_channel_info; /* * For case of afc_server_resp containing binary payload, the buf pointer * in wmi_afc_serv_resp_struct will be poiniting to binary format payload * which is in the format defined below. */ typedef struct { A_UINT32 local_error_code; /* Internal error code between AFC app and target success = 0, General failure = 1 */ A_UINT32 version; /* Internal version between AFC app and Target for structure pattern */ A_UINT32 afc_wfa_version; /* Version defined in AFC spec document. bits 15:0 -- minor version & bits 31:16 -- major version */ A_UINT32 request_id; /* AFC unique request ID */ A_UINT32 avail_exp_time_d; /* avail_exp_time_d and avail_exp_time_t are in UTC * Availability expiry time date format: YYYY-MM-DD, * bits 7:0 -DD - Day (expected values 1-31) * bits 15:8 -MM - Month (expected values 1-12) * bits 31:16 -YYYY - Year */ A_UINT32 avail_exp_time_t; /* Availability expiry time format HH-MM-SS * bits 7:0 -SS - Time in Sec (expected values 0-59) * bits 15:8 -MM - Minute (expected values 0-59) * bits 23:16 -HH - Hour (expected values 0-23) * bits 31:24 -reserved */ A_INT32 afc_serv_resp_code; /* response code defined in afc wfa document, refer WMI_AFC_SERV_RESP_CODE */ A_UINT32 num_frequency_obj; /* Total number of frequency objects */ A_UINT32 num_channel_obj; /* Total number of frequency objects */ char shortdesc[64]; /* This field represents a short description related to the result indicated by the response_code * field. End of description will be indicated by 0 */ A_UINT32 reserved[2]; /* reserve space for future fields - needs to be set to 0x0 */ /* * This structure is followed by an array of frequency info and * channel info array: * - afc_freq_info freq_info[num_frequency_obj]; * List of frequency power values, total size will be * num_frequency_obj * sizeof(afc_freq_info) * - afc_channel_info chan_info[num_channel_obj]; * List of channel power values, total size will be * num_channel_obj * sizeof(afc_channel_info) */ } afc_spectrum_inquiry_resp_bin_type; /* Freq units in MHz */ #define WMI_REG_RULE_START_FREQ_GET(freq_info) WMI_GET_BITS(freq_info, 0, 16) #define WMI_REG_RULE_START_FREQ_SET(freq_info, value) WMI_SET_BITS(freq_info, 0, 16, value) Loading Loading @@ -29313,6 +29385,11 @@ typedef struct { A_UINT32 tlv_header; A_UINT32 request_id; /* AFC unique Request ID for AFC expiry event, This is Nonce generated by FW for freshness */ A_UINT32 event_subtype; /* refer to WMI_AFC_EXPIRY_EVENT_SUBTYPE */ A_UINT32 afc_wfa_version; /* bits 15:0 -- minor version * bits 31:16 -- major version * WMI_AFC_WFA_MINOR_VERSION_GET & * WMI_AFC_WFA_MAJOR_VERSION_GET */ } wmi_afc_expiry_event_param; typedef struct { Loading Loading @@ -29353,7 +29430,7 @@ typedef struct { * use MACRO as WMI_REG_RULE_START_FREQ_GET & * WMI_REG_RULE_START_FREQ_SET */ A_INT32 psd_power_info; /* Maximum PSD in dBm/MHz */ A_INT32 psd_power_info; /* Maximum PSD in dBm/MHz, value is stored in 0.01 dBm/MHz steps */ } wmi_6g_afc_frequency_info; typedef struct { Loading Loading @@ -29387,7 +29464,7 @@ typedef struct { * tag equals WMITLV_TAG_STRUC_wmi_afc_chan_eirp_power_info */ A_UINT32 tlv_header ; A_UINT32 channel_cfi; /* channel center frequency indices */ A_UINT32 eirp_pwr; /* maximum permissible EIRP available for above CFI in dBm */ A_UINT32 eirp_pwr; /* maximum permissible EIRP available for above CFI in dBm, value is stored in 0.01 dBm steps */ } wmi_afc_chan_eirp_power_info; typedef struct { fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ #define __WMI_VER_MINOR_ 0 /** WMI revision number has to be incremented when there is a * change that may or may not break compatibility. */ #define __WMI_REVISION_ 1022 #define __WMI_REVISION_ 1023 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading Loading
fw/wmi_unified.h +79 −2 Original line number Diff line number Diff line Loading @@ -29012,6 +29012,78 @@ typedef struct { */ } wmi_afc_serv_resp_struct; /* * The following structures define the format used for AFC binary data objects * shared by the host SW and target FW. * FW expects these structures to be written in shared memory in little-endian * format. If the host/AFC app uses big endian format, Host/APP needs to * byteswap the data, so FW will get data in the expected little-endian format. */ typedef struct { A_UINT32 freq_info; /* bits 15:0 = u16 start_freq, * bits 31:16 = u16 end_freq * both in MHz units */ A_INT32 max_psd; /* Maximum PSD in dBm/MHz, value is stored in 0.01 dBm/MHz steps */ } afc_freq_info; typedef struct { A_UINT32 channel_cfi; /* channel center frequency index */ A_UINT32 max_eirp_pwr; /* maximum permissible EIRP available for above CFI in dBm, value is stored in 0.01 dBm steps */ } afc_eirp_info; typedef struct { A_UINT32 global_operating_class; A_UINT32 num_channels; /* num of valid channels for above global operating class */ /* This structure is followed by (num_channels*sizeof(afc_eirp_info)) * bytes array: * afc_eirp_info eirp_info[num_channels]; * List of channel cfi and eirp power values, * Total size will be num_channels * sizeof(afc_eirp_info) */ } afc_channel_info; /* * For case of afc_server_resp containing binary payload, the buf pointer * in wmi_afc_serv_resp_struct will be poiniting to binary format payload * which is in the format defined below. */ typedef struct { A_UINT32 local_error_code; /* Internal error code between AFC app and target success = 0, General failure = 1 */ A_UINT32 version; /* Internal version between AFC app and Target for structure pattern */ A_UINT32 afc_wfa_version; /* Version defined in AFC spec document. bits 15:0 -- minor version & bits 31:16 -- major version */ A_UINT32 request_id; /* AFC unique request ID */ A_UINT32 avail_exp_time_d; /* avail_exp_time_d and avail_exp_time_t are in UTC * Availability expiry time date format: YYYY-MM-DD, * bits 7:0 -DD - Day (expected values 1-31) * bits 15:8 -MM - Month (expected values 1-12) * bits 31:16 -YYYY - Year */ A_UINT32 avail_exp_time_t; /* Availability expiry time format HH-MM-SS * bits 7:0 -SS - Time in Sec (expected values 0-59) * bits 15:8 -MM - Minute (expected values 0-59) * bits 23:16 -HH - Hour (expected values 0-23) * bits 31:24 -reserved */ A_INT32 afc_serv_resp_code; /* response code defined in afc wfa document, refer WMI_AFC_SERV_RESP_CODE */ A_UINT32 num_frequency_obj; /* Total number of frequency objects */ A_UINT32 num_channel_obj; /* Total number of frequency objects */ char shortdesc[64]; /* This field represents a short description related to the result indicated by the response_code * field. End of description will be indicated by 0 */ A_UINT32 reserved[2]; /* reserve space for future fields - needs to be set to 0x0 */ /* * This structure is followed by an array of frequency info and * channel info array: * - afc_freq_info freq_info[num_frequency_obj]; * List of frequency power values, total size will be * num_frequency_obj * sizeof(afc_freq_info) * - afc_channel_info chan_info[num_channel_obj]; * List of channel power values, total size will be * num_channel_obj * sizeof(afc_channel_info) */ } afc_spectrum_inquiry_resp_bin_type; /* Freq units in MHz */ #define WMI_REG_RULE_START_FREQ_GET(freq_info) WMI_GET_BITS(freq_info, 0, 16) #define WMI_REG_RULE_START_FREQ_SET(freq_info, value) WMI_SET_BITS(freq_info, 0, 16, value) Loading Loading @@ -29313,6 +29385,11 @@ typedef struct { A_UINT32 tlv_header; A_UINT32 request_id; /* AFC unique Request ID for AFC expiry event, This is Nonce generated by FW for freshness */ A_UINT32 event_subtype; /* refer to WMI_AFC_EXPIRY_EVENT_SUBTYPE */ A_UINT32 afc_wfa_version; /* bits 15:0 -- minor version * bits 31:16 -- major version * WMI_AFC_WFA_MINOR_VERSION_GET & * WMI_AFC_WFA_MAJOR_VERSION_GET */ } wmi_afc_expiry_event_param; typedef struct { Loading Loading @@ -29353,7 +29430,7 @@ typedef struct { * use MACRO as WMI_REG_RULE_START_FREQ_GET & * WMI_REG_RULE_START_FREQ_SET */ A_INT32 psd_power_info; /* Maximum PSD in dBm/MHz */ A_INT32 psd_power_info; /* Maximum PSD in dBm/MHz, value is stored in 0.01 dBm/MHz steps */ } wmi_6g_afc_frequency_info; typedef struct { Loading Loading @@ -29387,7 +29464,7 @@ typedef struct { * tag equals WMITLV_TAG_STRUC_wmi_afc_chan_eirp_power_info */ A_UINT32 tlv_header ; A_UINT32 channel_cfi; /* channel center frequency indices */ A_UINT32 eirp_pwr; /* maximum permissible EIRP available for above CFI in dBm */ A_UINT32 eirp_pwr; /* maximum permissible EIRP available for above CFI in dBm, value is stored in 0.01 dBm steps */ } wmi_afc_chan_eirp_power_info; typedef struct {
fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ #define __WMI_VER_MINOR_ 0 /** WMI revision number has to be incremented when there is a * change that may or may not break compatibility. */ #define __WMI_REVISION_ 1022 #define __WMI_REVISION_ 1023 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading