wlan_platform: Bring initial files for ICNSS family drivers

Bring ICNSS family drivers from msm-5.10 kernel as of commit
'cb298739ee51 ("icnss2: Download bdf file for helium targets")'
to WLAN platform project.

Updated wlan_firmware_service files and makefiles to support
ICNSS2 compilation.

Change-Id: I02cf792b61772f07ac0607be7bb6b3bfda7815e4
This commit is contained in:
Naman Padhiar
2022-02-14 13:58:53 +05:30
父節點 6df6dd4662
當前提交 3983bc4503
共有 18 個文件被更改,包括 11552 次插入2 次删除

查看文件

@@ -9,6 +9,8 @@
#define WLFW_SERVICE_ID_V01 0x45
#define WLFW_SERVICE_VERS_V01 0x01
#define QMI_WLFW_SUBSYS_RESTART_LEVEL_RESP_V01 0x0055
#define QMI_WLFW_SUBSYS_RESTART_LEVEL_REQ_V01 0x0055
#define QMI_WLFW_POWER_SAVE_RESP_V01 0x0050
#define QMI_WLFW_CAP_REQ_V01 0x0024
#define QMI_WLFW_CAL_REPORT_REQ_V01 0x0026
@@ -107,6 +109,7 @@
#define QMI_WLFW_MAX_NUM_SVC_V01 24
#define QMI_WLFW_MAX_NUM_MEMORY_REGIONS_V01 2
#define QMI_WLFW_MAC_ADDR_SIZE_V01 6
#define QMI_WLFW_MAX_NUM_GPIO_INFO_V01 20
#define QMI_WLFW_MAX_NUM_MEM_CFG_V01 2
#define QMI_WLFW_MAX_NUM_MEM_SEG_V01 52
#define QMI_WLFW_MAX_WFC_CALL_STATUS_DATA_SIZE_V01 256
@@ -166,6 +169,7 @@ enum wlfw_mem_type_enum_v01 {
QMI_WLFW_MEM_HANG_DATA_V01 = 7,
QMI_WLFW_MLO_GLOBAL_MEM_V01 = 8,
QMI_WLFW_PAGEABLE_MEM_V01 = 9,
QMI_WLFW_AFC_MEM_V01 = 10,
WLFW_MEM_TYPE_ENUM_MAX_VAL_V01 = INT_MAX,
};
@@ -248,10 +252,28 @@ enum cnss_feature_v01 {
CNSS_FEATURE_MIN_VAL_V01 = INT_MIN,
BOOTSTRAP_CLOCK_SELECT_V01 = 0,
CNSS_DRV_SUPPORT_V01 = 1,
CNSS_WLAN_EN_SUPPORT_V01 = 2,
CNSS_MAX_FEATURE_V01 = 64,
CNSS_FEATURE_MAX_VAL_V01 = INT_MAX,
};
enum wlfw_bdf_dnld_method_v01 {
WLFW_BDF_DNLD_METHOD_MIN_VAL_V01 = INT_MIN,
WLFW_DIRECT_BDF_COPY_V01 = 0,
WLFW_SEND_BDF_OVER_QMI_V01 = 1,
WLFW_BDF_DNLD_METHOD_MAX_VAL_V01 = INT_MAX,
};
enum wlfw_gpio_info_type_v01 {
WLFW_GPIO_INFO_TYPE_MIN_VAL_V01 = INT_MIN,
WLAN_EN_GPIO_V01 = 0,
BT_EN_GPIO_V01 = 1,
HOST_SOL_GPIO_V01 = 2,
TARGET_SOL_GPIO_V01 = 3,
GPIO_TYPE_MAX_V01 = 4,
WLFW_GPIO_INFO_TYPE_MAX_VAL_V01 = INT_MAX,
};
#define QMI_WLFW_CE_ATTR_FLAGS_V01 ((u32)0x00)
#define QMI_WLFW_CE_ATTR_NO_SNOOP_V01 ((u32)0x01)
#define QMI_WLFW_CE_ATTR_BYTE_SWAP_DATA_V01 ((u32)0x02)
@@ -530,8 +552,19 @@ struct wlfw_cap_resp_msg_v01 {
enum wlfw_rd_card_chain_cap_v01 rd_card_chain_cap;
u8 dev_mem_info_valid;
struct wlfw_dev_mem_info_s_v01 dev_mem_info[QMI_WLFW_MAX_DEV_MEM_NUM_V01];
u8 foundry_name_valid;
char foundry_name[QMI_WLFW_MAX_STR_LEN_V01 + 1];
u8 hang_data_addr_offset_valid;
u32 hang_data_addr_offset;
u8 hang_data_length_valid;
u16 hang_data_length;
u8 bdf_dnld_method_valid;
enum wlfw_bdf_dnld_method_v01 bdf_dnld_method;
u8 hwid_bitmap_valid;
u8 hwid_bitmap;
};
#define WLFW_CAP_RESP_MSG_V01_MAX_MSG_LEN 320
#define WLFW_CAP_RESP_MSG_V01_MAX_MSG_LEN 362
extern struct qmi_elem_info wlfw_cap_resp_msg_v01_ei[];
struct wlfw_bdf_download_req_msg_v01 {
@@ -803,9 +836,16 @@ struct wlfw_host_cap_req_msg_v01 {
u8 num_wlan_vaps;
u8 wake_msi_addr_valid;
u32 wake_msi_addr;
u8 wlan_enable_delay_valid;
u32 wlan_enable_delay;
u8 ddr_type_valid;
u32 ddr_type;
u8 gpio_info_valid;
u32 gpio_info_len;
u32 gpio_info[QMI_WLFW_MAX_NUM_GPIO_INFO_V01];
};
#define WLFW_HOST_CAP_REQ_MSG_V01_MAX_MSG_LEN 389
#define WLFW_HOST_CAP_REQ_MSG_V01_MAX_MSG_LEN 487
extern struct qmi_elem_info wlfw_host_cap_req_msg_v01_ei[];
struct wlfw_host_cap_resp_msg_v01 {
@@ -1268,4 +1308,19 @@ struct wlfw_m3_dump_upload_segments_req_ind_msg_v01 {
#define WLFW_M3_DUMP_UPLOAD_SEGMENTS_REQ_IND_MSG_V01_MAX_MSG_LEN 387
extern struct qmi_elem_info wlfw_m3_dump_upload_segments_req_ind_msg_v01_ei[];
struct wlfw_subsys_restart_level_req_msg_v01 {
u8 restart_level_type_valid;
u8 restart_level_type;
};
#define WLFW_SUBSYS_RESTART_LEVEL_REQ_MSG_V01_MAX_MSG_LEN 4
extern struct qmi_elem_info wlfw_subsys_restart_level_req_msg_v01_ei[];
struct wlfw_subsys_restart_level_resp_msg_v01 {
struct qmi_response_type_v01 resp;
};
#define WLFW_SUBSYS_RESTART_LEVEL_RESP_MSG_V01_MAX_MSG_LEN 7
extern struct qmi_elem_info wlfw_subsys_restart_level_resp_msg_v01_ei[];
#endif