1 // SPDX-License-Identifier: ISC
3 * Copyright (c) 2018 The Linux Foundation. All rights reserved.
6 #include <linux/soc/qcom/qmi.h>
7 #include <linux/types.h>
8 #include "qmi_wlfw_v01.h"
10 static struct qmi_elem_info wlfw_ce_tgt_pipe_cfg_s_v01_ei[] = {
12 .data_type = QMI_UNSIGNED_4_BYTE,
14 .elem_size = sizeof(u32),
15 .array_type = NO_ARRAY,
17 .offset = offsetof(struct wlfw_ce_tgt_pipe_cfg_s_v01,
21 .data_type = QMI_SIGNED_4_BYTE_ENUM,
23 .elem_size = sizeof(enum wlfw_pipedir_enum_v01),
24 .array_type = NO_ARRAY,
26 .offset = offsetof(struct wlfw_ce_tgt_pipe_cfg_s_v01,
30 .data_type = QMI_UNSIGNED_4_BYTE,
32 .elem_size = sizeof(u32),
33 .array_type = NO_ARRAY,
35 .offset = offsetof(struct wlfw_ce_tgt_pipe_cfg_s_v01,
39 .data_type = QMI_UNSIGNED_4_BYTE,
41 .elem_size = sizeof(u32),
42 .array_type = NO_ARRAY,
44 .offset = offsetof(struct wlfw_ce_tgt_pipe_cfg_s_v01,
48 .data_type = QMI_UNSIGNED_4_BYTE,
50 .elem_size = sizeof(u32),
51 .array_type = NO_ARRAY,
53 .offset = offsetof(struct wlfw_ce_tgt_pipe_cfg_s_v01,
59 static struct qmi_elem_info wlfw_ce_svc_pipe_cfg_s_v01_ei[] = {
61 .data_type = QMI_UNSIGNED_4_BYTE,
63 .elem_size = sizeof(u32),
64 .array_type = NO_ARRAY,
66 .offset = offsetof(struct wlfw_ce_svc_pipe_cfg_s_v01,
70 .data_type = QMI_SIGNED_4_BYTE_ENUM,
72 .elem_size = sizeof(enum wlfw_pipedir_enum_v01),
73 .array_type = NO_ARRAY,
75 .offset = offsetof(struct wlfw_ce_svc_pipe_cfg_s_v01,
79 .data_type = QMI_UNSIGNED_4_BYTE,
81 .elem_size = sizeof(u32),
82 .array_type = NO_ARRAY,
84 .offset = offsetof(struct wlfw_ce_svc_pipe_cfg_s_v01,
90 static struct qmi_elem_info wlfw_shadow_reg_cfg_s_v01_ei[] = {
92 .data_type = QMI_UNSIGNED_2_BYTE,
94 .elem_size = sizeof(u16),
95 .array_type = NO_ARRAY,
97 .offset = offsetof(struct wlfw_shadow_reg_cfg_s_v01,
101 .data_type = QMI_UNSIGNED_2_BYTE,
103 .elem_size = sizeof(u16),
104 .array_type = NO_ARRAY,
106 .offset = offsetof(struct wlfw_shadow_reg_cfg_s_v01,
112 static struct qmi_elem_info wlfw_shadow_reg_v2_cfg_s_v01_ei[] = {
114 .data_type = QMI_UNSIGNED_4_BYTE,
116 .elem_size = sizeof(u32),
117 .array_type = NO_ARRAY,
119 .offset = offsetof(struct wlfw_shadow_reg_v2_cfg_s_v01,
125 static struct qmi_elem_info wlfw_memory_region_info_s_v01_ei[] = {
127 .data_type = QMI_UNSIGNED_8_BYTE,
129 .elem_size = sizeof(u64),
130 .array_type = NO_ARRAY,
132 .offset = offsetof(struct wlfw_memory_region_info_s_v01,
136 .data_type = QMI_UNSIGNED_4_BYTE,
138 .elem_size = sizeof(u32),
139 .array_type = NO_ARRAY,
141 .offset = offsetof(struct wlfw_memory_region_info_s_v01,
145 .data_type = QMI_UNSIGNED_1_BYTE,
147 .elem_size = sizeof(u8),
148 .array_type = NO_ARRAY,
150 .offset = offsetof(struct wlfw_memory_region_info_s_v01,
156 static struct qmi_elem_info wlfw_mem_cfg_s_v01_ei[] = {
158 .data_type = QMI_UNSIGNED_8_BYTE,
160 .elem_size = sizeof(u64),
161 .array_type = NO_ARRAY,
163 .offset = offsetof(struct wlfw_mem_cfg_s_v01,
167 .data_type = QMI_UNSIGNED_4_BYTE,
169 .elem_size = sizeof(u32),
170 .array_type = NO_ARRAY,
172 .offset = offsetof(struct wlfw_mem_cfg_s_v01,
176 .data_type = QMI_UNSIGNED_1_BYTE,
178 .elem_size = sizeof(u8),
179 .array_type = NO_ARRAY,
181 .offset = offsetof(struct wlfw_mem_cfg_s_v01,
187 static struct qmi_elem_info wlfw_mem_seg_s_v01_ei[] = {
189 .data_type = QMI_UNSIGNED_4_BYTE,
191 .elem_size = sizeof(u32),
192 .array_type = NO_ARRAY,
194 .offset = offsetof(struct wlfw_mem_seg_s_v01,
198 .data_type = QMI_SIGNED_4_BYTE_ENUM,
200 .elem_size = sizeof(enum wlfw_mem_type_enum_v01),
201 .array_type = NO_ARRAY,
203 .offset = offsetof(struct wlfw_mem_seg_s_v01,
207 .data_type = QMI_DATA_LEN,
209 .elem_size = sizeof(u8),
210 .array_type = NO_ARRAY,
212 .offset = offsetof(struct wlfw_mem_seg_s_v01,
216 .data_type = QMI_STRUCT,
217 .elem_len = QMI_WLFW_MAX_NUM_MEM_CFG_V01,
218 .elem_size = sizeof(struct wlfw_mem_cfg_s_v01),
219 .array_type = VAR_LEN_ARRAY,
221 .offset = offsetof(struct wlfw_mem_seg_s_v01,
223 .ei_array = wlfw_mem_cfg_s_v01_ei,
228 static struct qmi_elem_info wlfw_mem_seg_resp_s_v01_ei[] = {
230 .data_type = QMI_UNSIGNED_8_BYTE,
232 .elem_size = sizeof(u64),
233 .array_type = NO_ARRAY,
235 .offset = offsetof(struct wlfw_mem_seg_resp_s_v01,
239 .data_type = QMI_UNSIGNED_4_BYTE,
241 .elem_size = sizeof(u32),
242 .array_type = NO_ARRAY,
244 .offset = offsetof(struct wlfw_mem_seg_resp_s_v01,
248 .data_type = QMI_SIGNED_4_BYTE_ENUM,
250 .elem_size = sizeof(enum wlfw_mem_type_enum_v01),
251 .array_type = NO_ARRAY,
253 .offset = offsetof(struct wlfw_mem_seg_resp_s_v01,
259 static struct qmi_elem_info wlfw_rf_chip_info_s_v01_ei[] = {
261 .data_type = QMI_UNSIGNED_4_BYTE,
263 .elem_size = sizeof(u32),
264 .array_type = NO_ARRAY,
266 .offset = offsetof(struct wlfw_rf_chip_info_s_v01,
270 .data_type = QMI_UNSIGNED_4_BYTE,
272 .elem_size = sizeof(u32),
273 .array_type = NO_ARRAY,
275 .offset = offsetof(struct wlfw_rf_chip_info_s_v01,
281 static struct qmi_elem_info wlfw_rf_board_info_s_v01_ei[] = {
283 .data_type = QMI_UNSIGNED_4_BYTE,
285 .elem_size = sizeof(u32),
286 .array_type = NO_ARRAY,
288 .offset = offsetof(struct wlfw_rf_board_info_s_v01,
294 static struct qmi_elem_info wlfw_soc_info_s_v01_ei[] = {
296 .data_type = QMI_UNSIGNED_4_BYTE,
298 .elem_size = sizeof(u32),
299 .array_type = NO_ARRAY,
301 .offset = offsetof(struct wlfw_soc_info_s_v01,
307 static struct qmi_elem_info wlfw_fw_version_info_s_v01_ei[] = {
309 .data_type = QMI_UNSIGNED_4_BYTE,
311 .elem_size = sizeof(u32),
312 .array_type = NO_ARRAY,
314 .offset = offsetof(struct wlfw_fw_version_info_s_v01,
318 .data_type = QMI_STRING,
319 .elem_len = QMI_WLFW_MAX_TIMESTAMP_LEN_V01 + 1,
320 .elem_size = sizeof(char),
321 .array_type = NO_ARRAY,
323 .offset = offsetof(struct wlfw_fw_version_info_s_v01,
329 struct qmi_elem_info wlfw_ind_register_req_msg_v01_ei[] = {
331 .data_type = QMI_OPT_FLAG,
333 .elem_size = sizeof(u8),
334 .array_type = NO_ARRAY,
336 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
337 fw_ready_enable_valid),
340 .data_type = QMI_UNSIGNED_1_BYTE,
342 .elem_size = sizeof(u8),
343 .array_type = NO_ARRAY,
345 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
349 .data_type = QMI_OPT_FLAG,
351 .elem_size = sizeof(u8),
352 .array_type = NO_ARRAY,
354 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
355 initiate_cal_download_enable_valid),
358 .data_type = QMI_UNSIGNED_1_BYTE,
360 .elem_size = sizeof(u8),
361 .array_type = NO_ARRAY,
363 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
364 initiate_cal_download_enable),
367 .data_type = QMI_OPT_FLAG,
369 .elem_size = sizeof(u8),
370 .array_type = NO_ARRAY,
372 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
373 initiate_cal_update_enable_valid),
376 .data_type = QMI_UNSIGNED_1_BYTE,
378 .elem_size = sizeof(u8),
379 .array_type = NO_ARRAY,
381 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
382 initiate_cal_update_enable),
385 .data_type = QMI_OPT_FLAG,
387 .elem_size = sizeof(u8),
388 .array_type = NO_ARRAY,
390 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
391 msa_ready_enable_valid),
394 .data_type = QMI_UNSIGNED_1_BYTE,
396 .elem_size = sizeof(u8),
397 .array_type = NO_ARRAY,
399 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
403 .data_type = QMI_OPT_FLAG,
405 .elem_size = sizeof(u8),
406 .array_type = NO_ARRAY,
408 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
409 pin_connect_result_enable_valid),
412 .data_type = QMI_UNSIGNED_1_BYTE,
414 .elem_size = sizeof(u8),
415 .array_type = NO_ARRAY,
417 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
418 pin_connect_result_enable),
421 .data_type = QMI_OPT_FLAG,
423 .elem_size = sizeof(u8),
424 .array_type = NO_ARRAY,
426 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
430 .data_type = QMI_UNSIGNED_4_BYTE,
432 .elem_size = sizeof(u32),
433 .array_type = NO_ARRAY,
435 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
439 .data_type = QMI_OPT_FLAG,
441 .elem_size = sizeof(u8),
442 .array_type = NO_ARRAY,
444 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
445 request_mem_enable_valid),
448 .data_type = QMI_UNSIGNED_1_BYTE,
450 .elem_size = sizeof(u8),
451 .array_type = NO_ARRAY,
453 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
457 .data_type = QMI_OPT_FLAG,
459 .elem_size = sizeof(u8),
460 .array_type = NO_ARRAY,
462 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
463 mem_ready_enable_valid),
466 .data_type = QMI_UNSIGNED_1_BYTE,
468 .elem_size = sizeof(u8),
469 .array_type = NO_ARRAY,
471 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
475 .data_type = QMI_OPT_FLAG,
477 .elem_size = sizeof(u8),
478 .array_type = NO_ARRAY,
480 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
481 fw_init_done_enable_valid),
484 .data_type = QMI_UNSIGNED_1_BYTE,
486 .elem_size = sizeof(u8),
487 .array_type = NO_ARRAY,
489 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
490 fw_init_done_enable),
493 .data_type = QMI_OPT_FLAG,
495 .elem_size = sizeof(u8),
496 .array_type = NO_ARRAY,
498 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
499 rejuvenate_enable_valid),
502 .data_type = QMI_UNSIGNED_4_BYTE,
504 .elem_size = sizeof(u32),
505 .array_type = NO_ARRAY,
507 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
511 .data_type = QMI_OPT_FLAG,
513 .elem_size = sizeof(u8),
514 .array_type = NO_ARRAY,
516 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
517 xo_cal_enable_valid),
520 .data_type = QMI_UNSIGNED_1_BYTE,
522 .elem_size = sizeof(u8),
523 .array_type = NO_ARRAY,
525 .offset = offsetof(struct wlfw_ind_register_req_msg_v01,
531 struct qmi_elem_info wlfw_ind_register_resp_msg_v01_ei[] = {
533 .data_type = QMI_STRUCT,
535 .elem_size = sizeof(struct qmi_response_type_v01),
536 .array_type = NO_ARRAY,
538 .offset = offsetof(struct wlfw_ind_register_resp_msg_v01,
540 .ei_array = qmi_response_type_v01_ei,
543 .data_type = QMI_OPT_FLAG,
545 .elem_size = sizeof(u8),
546 .array_type = NO_ARRAY,
548 .offset = offsetof(struct wlfw_ind_register_resp_msg_v01,
552 .data_type = QMI_UNSIGNED_8_BYTE,
554 .elem_size = sizeof(u64),
555 .array_type = NO_ARRAY,
557 .offset = offsetof(struct wlfw_ind_register_resp_msg_v01,
563 struct qmi_elem_info wlfw_fw_ready_ind_msg_v01_ei[] = {
567 struct qmi_elem_info wlfw_msa_ready_ind_msg_v01_ei[] = {
571 struct qmi_elem_info wlfw_pin_connect_result_ind_msg_v01_ei[] = {
573 .data_type = QMI_OPT_FLAG,
575 .elem_size = sizeof(u8),
576 .array_type = NO_ARRAY,
578 .offset = offsetof(struct wlfw_pin_connect_result_ind_msg_v01,
579 pwr_pin_result_valid),
582 .data_type = QMI_UNSIGNED_4_BYTE,
584 .elem_size = sizeof(u32),
585 .array_type = NO_ARRAY,
587 .offset = offsetof(struct wlfw_pin_connect_result_ind_msg_v01,
591 .data_type = QMI_OPT_FLAG,
593 .elem_size = sizeof(u8),
594 .array_type = NO_ARRAY,
596 .offset = offsetof(struct wlfw_pin_connect_result_ind_msg_v01,
597 phy_io_pin_result_valid),
600 .data_type = QMI_UNSIGNED_4_BYTE,
602 .elem_size = sizeof(u32),
603 .array_type = NO_ARRAY,
605 .offset = offsetof(struct wlfw_pin_connect_result_ind_msg_v01,
609 .data_type = QMI_OPT_FLAG,
611 .elem_size = sizeof(u8),
612 .array_type = NO_ARRAY,
614 .offset = offsetof(struct wlfw_pin_connect_result_ind_msg_v01,
615 rf_pin_result_valid),
618 .data_type = QMI_UNSIGNED_4_BYTE,
620 .elem_size = sizeof(u32),
621 .array_type = NO_ARRAY,
623 .offset = offsetof(struct wlfw_pin_connect_result_ind_msg_v01,
629 struct qmi_elem_info wlfw_wlan_mode_req_msg_v01_ei[] = {
631 .data_type = QMI_SIGNED_4_BYTE_ENUM,
633 .elem_size = sizeof(enum wlfw_driver_mode_enum_v01),
634 .array_type = NO_ARRAY,
636 .offset = offsetof(struct wlfw_wlan_mode_req_msg_v01,
640 .data_type = QMI_OPT_FLAG,
642 .elem_size = sizeof(u8),
643 .array_type = NO_ARRAY,
645 .offset = offsetof(struct wlfw_wlan_mode_req_msg_v01,
649 .data_type = QMI_UNSIGNED_1_BYTE,
651 .elem_size = sizeof(u8),
652 .array_type = NO_ARRAY,
654 .offset = offsetof(struct wlfw_wlan_mode_req_msg_v01,
660 struct qmi_elem_info wlfw_wlan_mode_resp_msg_v01_ei[] = {
662 .data_type = QMI_STRUCT,
664 .elem_size = sizeof(struct qmi_response_type_v01),
665 .array_type = NO_ARRAY,
667 .offset = offsetof(struct wlfw_wlan_mode_resp_msg_v01,
669 .ei_array = qmi_response_type_v01_ei,
674 struct qmi_elem_info wlfw_wlan_cfg_req_msg_v01_ei[] = {
676 .data_type = QMI_OPT_FLAG,
678 .elem_size = sizeof(u8),
679 .array_type = NO_ARRAY,
681 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
685 .data_type = QMI_STRING,
686 .elem_len = QMI_WLFW_MAX_STR_LEN_V01 + 1,
687 .elem_size = sizeof(char),
688 .array_type = NO_ARRAY,
690 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
694 .data_type = QMI_OPT_FLAG,
696 .elem_size = sizeof(u8),
697 .array_type = NO_ARRAY,
699 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
703 .data_type = QMI_DATA_LEN,
705 .elem_size = sizeof(u8),
706 .array_type = NO_ARRAY,
708 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
712 .data_type = QMI_STRUCT,
713 .elem_len = QMI_WLFW_MAX_NUM_CE_V01,
714 .elem_size = sizeof(struct wlfw_ce_tgt_pipe_cfg_s_v01),
715 .array_type = VAR_LEN_ARRAY,
717 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
719 .ei_array = wlfw_ce_tgt_pipe_cfg_s_v01_ei,
722 .data_type = QMI_OPT_FLAG,
724 .elem_size = sizeof(u8),
725 .array_type = NO_ARRAY,
727 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
731 .data_type = QMI_DATA_LEN,
733 .elem_size = sizeof(u8),
734 .array_type = NO_ARRAY,
736 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
740 .data_type = QMI_STRUCT,
741 .elem_len = QMI_WLFW_MAX_NUM_SVC_V01,
742 .elem_size = sizeof(struct wlfw_ce_svc_pipe_cfg_s_v01),
743 .array_type = VAR_LEN_ARRAY,
745 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
747 .ei_array = wlfw_ce_svc_pipe_cfg_s_v01_ei,
750 .data_type = QMI_OPT_FLAG,
752 .elem_size = sizeof(u8),
753 .array_type = NO_ARRAY,
755 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
759 .data_type = QMI_DATA_LEN,
761 .elem_size = sizeof(u8),
762 .array_type = NO_ARRAY,
764 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
768 .data_type = QMI_STRUCT,
769 .elem_len = QMI_WLFW_MAX_NUM_SHADOW_REG_V01,
770 .elem_size = sizeof(struct wlfw_shadow_reg_cfg_s_v01),
771 .array_type = VAR_LEN_ARRAY,
773 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
775 .ei_array = wlfw_shadow_reg_cfg_s_v01_ei,
778 .data_type = QMI_OPT_FLAG,
780 .elem_size = sizeof(u8),
781 .array_type = NO_ARRAY,
783 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
784 shadow_reg_v2_valid),
787 .data_type = QMI_DATA_LEN,
789 .elem_size = sizeof(u8),
790 .array_type = NO_ARRAY,
792 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
796 .data_type = QMI_STRUCT,
797 .elem_len = QMI_WLFW_MAX_SHADOW_REG_V2,
798 .elem_size = sizeof(struct wlfw_shadow_reg_v2_cfg_s_v01),
799 .array_type = VAR_LEN_ARRAY,
801 .offset = offsetof(struct wlfw_wlan_cfg_req_msg_v01,
803 .ei_array = wlfw_shadow_reg_v2_cfg_s_v01_ei,
808 struct qmi_elem_info wlfw_wlan_cfg_resp_msg_v01_ei[] = {
810 .data_type = QMI_STRUCT,
812 .elem_size = sizeof(struct qmi_response_type_v01),
813 .array_type = NO_ARRAY,
815 .offset = offsetof(struct wlfw_wlan_cfg_resp_msg_v01,
817 .ei_array = qmi_response_type_v01_ei,
822 struct qmi_elem_info wlfw_cap_req_msg_v01_ei[] = {
826 struct qmi_elem_info wlfw_cap_resp_msg_v01_ei[] = {
828 .data_type = QMI_STRUCT,
830 .elem_size = sizeof(struct qmi_response_type_v01),
831 .array_type = NO_ARRAY,
833 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
835 .ei_array = qmi_response_type_v01_ei,
838 .data_type = QMI_OPT_FLAG,
840 .elem_size = sizeof(u8),
841 .array_type = NO_ARRAY,
843 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
847 .data_type = QMI_STRUCT,
849 .elem_size = sizeof(struct wlfw_rf_chip_info_s_v01),
850 .array_type = NO_ARRAY,
852 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
854 .ei_array = wlfw_rf_chip_info_s_v01_ei,
857 .data_type = QMI_OPT_FLAG,
859 .elem_size = sizeof(u8),
860 .array_type = NO_ARRAY,
862 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
866 .data_type = QMI_STRUCT,
868 .elem_size = sizeof(struct wlfw_rf_board_info_s_v01),
869 .array_type = NO_ARRAY,
871 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
873 .ei_array = wlfw_rf_board_info_s_v01_ei,
876 .data_type = QMI_OPT_FLAG,
878 .elem_size = sizeof(u8),
879 .array_type = NO_ARRAY,
881 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
885 .data_type = QMI_STRUCT,
887 .elem_size = sizeof(struct wlfw_soc_info_s_v01),
888 .array_type = NO_ARRAY,
890 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
892 .ei_array = wlfw_soc_info_s_v01_ei,
895 .data_type = QMI_OPT_FLAG,
897 .elem_size = sizeof(u8),
898 .array_type = NO_ARRAY,
900 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
901 fw_version_info_valid),
904 .data_type = QMI_STRUCT,
906 .elem_size = sizeof(struct wlfw_fw_version_info_s_v01),
907 .array_type = NO_ARRAY,
909 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
911 .ei_array = wlfw_fw_version_info_s_v01_ei,
914 .data_type = QMI_OPT_FLAG,
916 .elem_size = sizeof(u8),
917 .array_type = NO_ARRAY,
919 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
923 .data_type = QMI_STRING,
924 .elem_len = QMI_WLFW_MAX_BUILD_ID_LEN_V01 + 1,
925 .elem_size = sizeof(char),
926 .array_type = NO_ARRAY,
928 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
932 .data_type = QMI_OPT_FLAG,
934 .elem_size = sizeof(u8),
935 .array_type = NO_ARRAY,
937 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
941 .data_type = QMI_UNSIGNED_1_BYTE,
943 .elem_size = sizeof(u8),
944 .array_type = NO_ARRAY,
946 .offset = offsetof(struct wlfw_cap_resp_msg_v01,
952 struct qmi_elem_info wlfw_bdf_download_req_msg_v01_ei[] = {
954 .data_type = QMI_UNSIGNED_1_BYTE,
956 .elem_size = sizeof(u8),
957 .array_type = NO_ARRAY,
959 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
963 .data_type = QMI_OPT_FLAG,
965 .elem_size = sizeof(u8),
966 .array_type = NO_ARRAY,
968 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
972 .data_type = QMI_SIGNED_4_BYTE_ENUM,
974 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
975 .array_type = NO_ARRAY,
977 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
981 .data_type = QMI_OPT_FLAG,
983 .elem_size = sizeof(u8),
984 .array_type = NO_ARRAY,
986 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
990 .data_type = QMI_UNSIGNED_4_BYTE,
992 .elem_size = sizeof(u32),
993 .array_type = NO_ARRAY,
995 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
999 .data_type = QMI_OPT_FLAG,
1001 .elem_size = sizeof(u8),
1002 .array_type = NO_ARRAY,
1004 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1008 .data_type = QMI_UNSIGNED_4_BYTE,
1010 .elem_size = sizeof(u32),
1011 .array_type = NO_ARRAY,
1013 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1017 .data_type = QMI_OPT_FLAG,
1019 .elem_size = sizeof(u8),
1020 .array_type = NO_ARRAY,
1022 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1026 .data_type = QMI_DATA_LEN,
1028 .elem_size = sizeof(u16),
1029 .array_type = NO_ARRAY,
1031 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1035 .data_type = QMI_UNSIGNED_1_BYTE,
1036 .elem_len = QMI_WLFW_MAX_DATA_SIZE_V01,
1037 .elem_size = sizeof(u8),
1038 .array_type = VAR_LEN_ARRAY,
1040 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1044 .data_type = QMI_OPT_FLAG,
1046 .elem_size = sizeof(u8),
1047 .array_type = NO_ARRAY,
1049 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1053 .data_type = QMI_UNSIGNED_1_BYTE,
1055 .elem_size = sizeof(u8),
1056 .array_type = NO_ARRAY,
1058 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1062 .data_type = QMI_OPT_FLAG,
1064 .elem_size = sizeof(u8),
1065 .array_type = NO_ARRAY,
1067 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1071 .data_type = QMI_UNSIGNED_1_BYTE,
1073 .elem_size = sizeof(u8),
1074 .array_type = NO_ARRAY,
1076 .offset = offsetof(struct wlfw_bdf_download_req_msg_v01,
1082 struct qmi_elem_info wlfw_bdf_download_resp_msg_v01_ei[] = {
1084 .data_type = QMI_STRUCT,
1086 .elem_size = sizeof(struct qmi_response_type_v01),
1087 .array_type = NO_ARRAY,
1089 .offset = offsetof(struct wlfw_bdf_download_resp_msg_v01,
1091 .ei_array = qmi_response_type_v01_ei,
1096 struct qmi_elem_info wlfw_cal_report_req_msg_v01_ei[] = {
1098 .data_type = QMI_DATA_LEN,
1100 .elem_size = sizeof(u8),
1101 .array_type = NO_ARRAY,
1103 .offset = offsetof(struct wlfw_cal_report_req_msg_v01,
1107 .data_type = QMI_SIGNED_4_BYTE_ENUM,
1108 .elem_len = QMI_WLFW_MAX_NUM_CAL_V01,
1109 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
1110 .array_type = VAR_LEN_ARRAY,
1112 .offset = offsetof(struct wlfw_cal_report_req_msg_v01,
1116 .data_type = QMI_OPT_FLAG,
1118 .elem_size = sizeof(u8),
1119 .array_type = NO_ARRAY,
1121 .offset = offsetof(struct wlfw_cal_report_req_msg_v01,
1125 .data_type = QMI_UNSIGNED_1_BYTE,
1127 .elem_size = sizeof(u8),
1128 .array_type = NO_ARRAY,
1130 .offset = offsetof(struct wlfw_cal_report_req_msg_v01,
1136 struct qmi_elem_info wlfw_cal_report_resp_msg_v01_ei[] = {
1138 .data_type = QMI_STRUCT,
1140 .elem_size = sizeof(struct qmi_response_type_v01),
1141 .array_type = NO_ARRAY,
1143 .offset = offsetof(struct wlfw_cal_report_resp_msg_v01,
1145 .ei_array = qmi_response_type_v01_ei,
1150 struct qmi_elem_info wlfw_initiate_cal_download_ind_msg_v01_ei[] = {
1152 .data_type = QMI_SIGNED_4_BYTE_ENUM,
1154 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
1155 .array_type = NO_ARRAY,
1157 .offset = offsetof(struct wlfw_initiate_cal_download_ind_msg_v01,
1163 struct qmi_elem_info wlfw_cal_download_req_msg_v01_ei[] = {
1165 .data_type = QMI_UNSIGNED_1_BYTE,
1167 .elem_size = sizeof(u8),
1168 .array_type = NO_ARRAY,
1170 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1174 .data_type = QMI_OPT_FLAG,
1176 .elem_size = sizeof(u8),
1177 .array_type = NO_ARRAY,
1179 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1183 .data_type = QMI_SIGNED_4_BYTE_ENUM,
1185 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
1186 .array_type = NO_ARRAY,
1188 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1192 .data_type = QMI_OPT_FLAG,
1194 .elem_size = sizeof(u8),
1195 .array_type = NO_ARRAY,
1197 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1201 .data_type = QMI_UNSIGNED_4_BYTE,
1203 .elem_size = sizeof(u32),
1204 .array_type = NO_ARRAY,
1206 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1210 .data_type = QMI_OPT_FLAG,
1212 .elem_size = sizeof(u8),
1213 .array_type = NO_ARRAY,
1215 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1219 .data_type = QMI_UNSIGNED_4_BYTE,
1221 .elem_size = sizeof(u32),
1222 .array_type = NO_ARRAY,
1224 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1228 .data_type = QMI_OPT_FLAG,
1230 .elem_size = sizeof(u8),
1231 .array_type = NO_ARRAY,
1233 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1237 .data_type = QMI_DATA_LEN,
1239 .elem_size = sizeof(u16),
1240 .array_type = NO_ARRAY,
1242 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1246 .data_type = QMI_UNSIGNED_1_BYTE,
1247 .elem_len = QMI_WLFW_MAX_DATA_SIZE_V01,
1248 .elem_size = sizeof(u8),
1249 .array_type = VAR_LEN_ARRAY,
1251 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1255 .data_type = QMI_OPT_FLAG,
1257 .elem_size = sizeof(u8),
1258 .array_type = NO_ARRAY,
1260 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1264 .data_type = QMI_UNSIGNED_1_BYTE,
1266 .elem_size = sizeof(u8),
1267 .array_type = NO_ARRAY,
1269 .offset = offsetof(struct wlfw_cal_download_req_msg_v01,
1275 struct qmi_elem_info wlfw_cal_download_resp_msg_v01_ei[] = {
1277 .data_type = QMI_STRUCT,
1279 .elem_size = sizeof(struct qmi_response_type_v01),
1280 .array_type = NO_ARRAY,
1282 .offset = offsetof(struct wlfw_cal_download_resp_msg_v01,
1284 .ei_array = qmi_response_type_v01_ei,
1289 struct qmi_elem_info wlfw_initiate_cal_update_ind_msg_v01_ei[] = {
1291 .data_type = QMI_SIGNED_4_BYTE_ENUM,
1293 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
1294 .array_type = NO_ARRAY,
1296 .offset = offsetof(struct wlfw_initiate_cal_update_ind_msg_v01,
1300 .data_type = QMI_UNSIGNED_4_BYTE,
1302 .elem_size = sizeof(u32),
1303 .array_type = NO_ARRAY,
1305 .offset = offsetof(struct wlfw_initiate_cal_update_ind_msg_v01,
1311 struct qmi_elem_info wlfw_cal_update_req_msg_v01_ei[] = {
1313 .data_type = QMI_SIGNED_4_BYTE_ENUM,
1315 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
1316 .array_type = NO_ARRAY,
1318 .offset = offsetof(struct wlfw_cal_update_req_msg_v01,
1322 .data_type = QMI_UNSIGNED_4_BYTE,
1324 .elem_size = sizeof(u32),
1325 .array_type = NO_ARRAY,
1327 .offset = offsetof(struct wlfw_cal_update_req_msg_v01,
1333 struct qmi_elem_info wlfw_cal_update_resp_msg_v01_ei[] = {
1335 .data_type = QMI_STRUCT,
1337 .elem_size = sizeof(struct qmi_response_type_v01),
1338 .array_type = NO_ARRAY,
1340 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1342 .ei_array = qmi_response_type_v01_ei,
1345 .data_type = QMI_OPT_FLAG,
1347 .elem_size = sizeof(u8),
1348 .array_type = NO_ARRAY,
1350 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1354 .data_type = QMI_SIGNED_4_BYTE_ENUM,
1356 .elem_size = sizeof(enum wlfw_cal_temp_id_enum_v01),
1357 .array_type = NO_ARRAY,
1359 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1363 .data_type = QMI_OPT_FLAG,
1365 .elem_size = sizeof(u8),
1366 .array_type = NO_ARRAY,
1368 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1372 .data_type = QMI_UNSIGNED_4_BYTE,
1374 .elem_size = sizeof(u32),
1375 .array_type = NO_ARRAY,
1377 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1381 .data_type = QMI_OPT_FLAG,
1383 .elem_size = sizeof(u8),
1384 .array_type = NO_ARRAY,
1386 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1390 .data_type = QMI_UNSIGNED_4_BYTE,
1392 .elem_size = sizeof(u32),
1393 .array_type = NO_ARRAY,
1395 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1399 .data_type = QMI_OPT_FLAG,
1401 .elem_size = sizeof(u8),
1402 .array_type = NO_ARRAY,
1404 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1408 .data_type = QMI_DATA_LEN,
1410 .elem_size = sizeof(u16),
1411 .array_type = NO_ARRAY,
1413 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1417 .data_type = QMI_UNSIGNED_1_BYTE,
1418 .elem_len = QMI_WLFW_MAX_DATA_SIZE_V01,
1419 .elem_size = sizeof(u8),
1420 .array_type = VAR_LEN_ARRAY,
1422 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1426 .data_type = QMI_OPT_FLAG,
1428 .elem_size = sizeof(u8),
1429 .array_type = NO_ARRAY,
1431 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1435 .data_type = QMI_UNSIGNED_1_BYTE,
1437 .elem_size = sizeof(u8),
1438 .array_type = NO_ARRAY,
1440 .offset = offsetof(struct wlfw_cal_update_resp_msg_v01,
1446 struct qmi_elem_info wlfw_msa_info_req_msg_v01_ei[] = {
1448 .data_type = QMI_UNSIGNED_8_BYTE,
1450 .elem_size = sizeof(u64),
1451 .array_type = NO_ARRAY,
1453 .offset = offsetof(struct wlfw_msa_info_req_msg_v01,
1457 .data_type = QMI_UNSIGNED_4_BYTE,
1459 .elem_size = sizeof(u32),
1460 .array_type = NO_ARRAY,
1462 .offset = offsetof(struct wlfw_msa_info_req_msg_v01,
1468 struct qmi_elem_info wlfw_msa_info_resp_msg_v01_ei[] = {
1470 .data_type = QMI_STRUCT,
1472 .elem_size = sizeof(struct qmi_response_type_v01),
1473 .array_type = NO_ARRAY,
1475 .offset = offsetof(struct wlfw_msa_info_resp_msg_v01,
1477 .ei_array = qmi_response_type_v01_ei,
1480 .data_type = QMI_DATA_LEN,
1482 .elem_size = sizeof(u8),
1483 .array_type = NO_ARRAY,
1485 .offset = offsetof(struct wlfw_msa_info_resp_msg_v01,
1486 mem_region_info_len),
1489 .data_type = QMI_STRUCT,
1490 .elem_len = QMI_WLFW_MAX_MEM_REG_V01,
1491 .elem_size = sizeof(struct wlfw_memory_region_info_s_v01),
1492 .array_type = VAR_LEN_ARRAY,
1494 .offset = offsetof(struct wlfw_msa_info_resp_msg_v01,
1496 .ei_array = wlfw_memory_region_info_s_v01_ei,
1501 struct qmi_elem_info wlfw_msa_ready_req_msg_v01_ei[] = {
1505 struct qmi_elem_info wlfw_msa_ready_resp_msg_v01_ei[] = {
1507 .data_type = QMI_STRUCT,
1509 .elem_size = sizeof(struct qmi_response_type_v01),
1510 .array_type = NO_ARRAY,
1512 .offset = offsetof(struct wlfw_msa_ready_resp_msg_v01,
1514 .ei_array = qmi_response_type_v01_ei,
1519 struct qmi_elem_info wlfw_ini_req_msg_v01_ei[] = {
1521 .data_type = QMI_OPT_FLAG,
1523 .elem_size = sizeof(u8),
1524 .array_type = NO_ARRAY,
1526 .offset = offsetof(struct wlfw_ini_req_msg_v01,
1530 .data_type = QMI_UNSIGNED_1_BYTE,
1532 .elem_size = sizeof(u8),
1533 .array_type = NO_ARRAY,
1535 .offset = offsetof(struct wlfw_ini_req_msg_v01,
1541 struct qmi_elem_info wlfw_ini_resp_msg_v01_ei[] = {
1543 .data_type = QMI_STRUCT,
1545 .elem_size = sizeof(struct qmi_response_type_v01),
1546 .array_type = NO_ARRAY,
1548 .offset = offsetof(struct wlfw_ini_resp_msg_v01,
1550 .ei_array = qmi_response_type_v01_ei,
1555 struct qmi_elem_info wlfw_athdiag_read_req_msg_v01_ei[] = {
1557 .data_type = QMI_UNSIGNED_4_BYTE,
1559 .elem_size = sizeof(u32),
1560 .array_type = NO_ARRAY,
1562 .offset = offsetof(struct wlfw_athdiag_read_req_msg_v01,
1566 .data_type = QMI_UNSIGNED_4_BYTE,
1568 .elem_size = sizeof(u32),
1569 .array_type = NO_ARRAY,
1571 .offset = offsetof(struct wlfw_athdiag_read_req_msg_v01,
1575 .data_type = QMI_UNSIGNED_4_BYTE,
1577 .elem_size = sizeof(u32),
1578 .array_type = NO_ARRAY,
1580 .offset = offsetof(struct wlfw_athdiag_read_req_msg_v01,
1586 struct qmi_elem_info wlfw_athdiag_read_resp_msg_v01_ei[] = {
1588 .data_type = QMI_STRUCT,
1590 .elem_size = sizeof(struct qmi_response_type_v01),
1591 .array_type = NO_ARRAY,
1593 .offset = offsetof(struct wlfw_athdiag_read_resp_msg_v01,
1595 .ei_array = qmi_response_type_v01_ei,
1598 .data_type = QMI_OPT_FLAG,
1600 .elem_size = sizeof(u8),
1601 .array_type = NO_ARRAY,
1603 .offset = offsetof(struct wlfw_athdiag_read_resp_msg_v01,
1607 .data_type = QMI_DATA_LEN,
1609 .elem_size = sizeof(u16),
1610 .array_type = NO_ARRAY,
1612 .offset = offsetof(struct wlfw_athdiag_read_resp_msg_v01,
1616 .data_type = QMI_UNSIGNED_1_BYTE,
1617 .elem_len = QMI_WLFW_MAX_ATHDIAG_DATA_SIZE_V01,
1618 .elem_size = sizeof(u8),
1619 .array_type = VAR_LEN_ARRAY,
1621 .offset = offsetof(struct wlfw_athdiag_read_resp_msg_v01,
1627 struct qmi_elem_info wlfw_athdiag_write_req_msg_v01_ei[] = {
1629 .data_type = QMI_UNSIGNED_4_BYTE,
1631 .elem_size = sizeof(u32),
1632 .array_type = NO_ARRAY,
1634 .offset = offsetof(struct wlfw_athdiag_write_req_msg_v01,
1638 .data_type = QMI_UNSIGNED_4_BYTE,
1640 .elem_size = sizeof(u32),
1641 .array_type = NO_ARRAY,
1643 .offset = offsetof(struct wlfw_athdiag_write_req_msg_v01,
1647 .data_type = QMI_DATA_LEN,
1649 .elem_size = sizeof(u16),
1650 .array_type = NO_ARRAY,
1652 .offset = offsetof(struct wlfw_athdiag_write_req_msg_v01,
1656 .data_type = QMI_UNSIGNED_1_BYTE,
1657 .elem_len = QMI_WLFW_MAX_ATHDIAG_DATA_SIZE_V01,
1658 .elem_size = sizeof(u8),
1659 .array_type = VAR_LEN_ARRAY,
1661 .offset = offsetof(struct wlfw_athdiag_write_req_msg_v01,
1667 struct qmi_elem_info wlfw_athdiag_write_resp_msg_v01_ei[] = {
1669 .data_type = QMI_STRUCT,
1671 .elem_size = sizeof(struct qmi_response_type_v01),
1672 .array_type = NO_ARRAY,
1674 .offset = offsetof(struct wlfw_athdiag_write_resp_msg_v01,
1676 .ei_array = qmi_response_type_v01_ei,
1681 struct qmi_elem_info wlfw_vbatt_req_msg_v01_ei[] = {
1683 .data_type = QMI_UNSIGNED_8_BYTE,
1685 .elem_size = sizeof(u64),
1686 .array_type = NO_ARRAY,
1688 .offset = offsetof(struct wlfw_vbatt_req_msg_v01,
1694 struct qmi_elem_info wlfw_vbatt_resp_msg_v01_ei[] = {
1696 .data_type = QMI_STRUCT,
1698 .elem_size = sizeof(struct qmi_response_type_v01),
1699 .array_type = NO_ARRAY,
1701 .offset = offsetof(struct wlfw_vbatt_resp_msg_v01,
1703 .ei_array = qmi_response_type_v01_ei,
1708 struct qmi_elem_info wlfw_mac_addr_req_msg_v01_ei[] = {
1710 .data_type = QMI_OPT_FLAG,
1712 .elem_size = sizeof(u8),
1713 .array_type = NO_ARRAY,
1715 .offset = offsetof(struct wlfw_mac_addr_req_msg_v01,
1719 .data_type = QMI_UNSIGNED_1_BYTE,
1720 .elem_len = QMI_WLFW_MAC_ADDR_SIZE_V01,
1721 .elem_size = sizeof(u8),
1722 .array_type = STATIC_ARRAY,
1724 .offset = offsetof(struct wlfw_mac_addr_req_msg_v01,
1730 struct qmi_elem_info wlfw_mac_addr_resp_msg_v01_ei[] = {
1732 .data_type = QMI_STRUCT,
1734 .elem_size = sizeof(struct qmi_response_type_v01),
1735 .array_type = NO_ARRAY,
1737 .offset = offsetof(struct wlfw_mac_addr_resp_msg_v01,
1739 .ei_array = qmi_response_type_v01_ei,
1744 struct qmi_elem_info wlfw_host_cap_req_msg_v01_ei[] = {
1746 .data_type = QMI_OPT_FLAG,
1748 .elem_size = sizeof(u8),
1749 .array_type = NO_ARRAY,
1751 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1752 daemon_support_valid),
1755 .data_type = QMI_UNSIGNED_4_BYTE,
1757 .elem_size = sizeof(u32),
1758 .array_type = NO_ARRAY,
1760 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1764 .data_type = QMI_OPT_FLAG,
1766 .elem_size = sizeof(u8),
1767 .array_type = NO_ARRAY,
1769 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1773 .data_type = QMI_UNSIGNED_4_BYTE,
1775 .elem_size = sizeof(u32),
1776 .array_type = NO_ARRAY,
1778 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1782 .data_type = QMI_OPT_FLAG,
1784 .elem_size = sizeof(u8),
1785 .array_type = NO_ARRAY,
1787 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1791 .data_type = QMI_DATA_LEN,
1793 .elem_size = sizeof(u32),
1794 .array_type = NO_ARRAY,
1796 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1800 .data_type = QMI_UNSIGNED_4_BYTE,
1801 .elem_len = QMI_WLFW_MAX_NUM_GPIO_V01,
1802 .elem_size = sizeof(u32),
1803 .array_type = VAR_LEN_ARRAY,
1805 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1809 .data_type = QMI_OPT_FLAG,
1811 .elem_size = sizeof(u8),
1812 .array_type = NO_ARRAY,
1814 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1818 .data_type = QMI_UNSIGNED_1_BYTE,
1820 .elem_size = sizeof(u8),
1821 .array_type = NO_ARRAY,
1823 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1827 .data_type = QMI_OPT_FLAG,
1829 .elem_size = sizeof(u8),
1830 .array_type = NO_ARRAY,
1832 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1836 .data_type = QMI_UNSIGNED_1_BYTE,
1838 .elem_size = sizeof(u8),
1839 .array_type = NO_ARRAY,
1841 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1845 .data_type = QMI_OPT_FLAG,
1847 .elem_size = sizeof(u8),
1848 .array_type = NO_ARRAY,
1850 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1851 bdf_cache_support_valid),
1854 .data_type = QMI_UNSIGNED_1_BYTE,
1856 .elem_size = sizeof(u8),
1857 .array_type = NO_ARRAY,
1859 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1863 .data_type = QMI_OPT_FLAG,
1865 .elem_size = sizeof(u8),
1866 .array_type = NO_ARRAY,
1868 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1872 .data_type = QMI_UNSIGNED_1_BYTE,
1874 .elem_size = sizeof(u8),
1875 .array_type = NO_ARRAY,
1877 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1881 .data_type = QMI_OPT_FLAG,
1883 .elem_size = sizeof(u8),
1884 .array_type = NO_ARRAY,
1886 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1887 m3_cache_support_valid),
1890 .data_type = QMI_UNSIGNED_1_BYTE,
1892 .elem_size = sizeof(u8),
1893 .array_type = NO_ARRAY,
1895 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1899 .data_type = QMI_OPT_FLAG,
1901 .elem_size = sizeof(u8),
1902 .array_type = NO_ARRAY,
1904 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1905 cal_filesys_support_valid),
1908 .data_type = QMI_UNSIGNED_1_BYTE,
1910 .elem_size = sizeof(u8),
1911 .array_type = NO_ARRAY,
1913 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1914 cal_filesys_support),
1917 .data_type = QMI_OPT_FLAG,
1919 .elem_size = sizeof(u8),
1920 .array_type = NO_ARRAY,
1922 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1923 cal_cache_support_valid),
1926 .data_type = QMI_UNSIGNED_1_BYTE,
1928 .elem_size = sizeof(u8),
1929 .array_type = NO_ARRAY,
1931 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1935 .data_type = QMI_OPT_FLAG,
1937 .elem_size = sizeof(u8),
1938 .array_type = NO_ARRAY,
1940 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1944 .data_type = QMI_UNSIGNED_1_BYTE,
1946 .elem_size = sizeof(u8),
1947 .array_type = NO_ARRAY,
1949 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1953 .data_type = QMI_OPT_FLAG,
1955 .elem_size = sizeof(u8),
1956 .array_type = NO_ARRAY,
1958 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1962 .data_type = QMI_UNSIGNED_4_BYTE,
1964 .elem_size = sizeof(u32),
1965 .array_type = NO_ARRAY,
1967 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1971 .data_type = QMI_OPT_FLAG,
1973 .elem_size = sizeof(u8),
1974 .array_type = NO_ARRAY,
1976 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1977 mem_cfg_mode_valid),
1980 .data_type = QMI_UNSIGNED_1_BYTE,
1982 .elem_size = sizeof(u8),
1983 .array_type = NO_ARRAY,
1985 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1991 struct qmi_elem_info wlfw_host_cap_8bit_req_msg_v01_ei[] = {
1993 .data_type = QMI_OPT_FLAG,
1995 .elem_size = sizeof(u8),
1996 .array_type = NO_ARRAY,
1998 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
1999 daemon_support_valid),
2002 .data_type = QMI_UNSIGNED_1_BYTE,
2004 .elem_size = sizeof(u8),
2005 .array_type = NO_ARRAY,
2007 .offset = offsetof(struct wlfw_host_cap_req_msg_v01,
2013 struct qmi_elem_info wlfw_host_cap_resp_msg_v01_ei[] = {
2015 .data_type = QMI_STRUCT,
2017 .elem_size = sizeof(struct qmi_response_type_v01),
2018 .array_type = NO_ARRAY,
2020 .offset = offsetof(struct wlfw_host_cap_resp_msg_v01,
2022 .ei_array = qmi_response_type_v01_ei,
2027 struct qmi_elem_info wlfw_request_mem_ind_msg_v01_ei[] = {
2029 .data_type = QMI_DATA_LEN,
2031 .elem_size = sizeof(u8),
2032 .array_type = NO_ARRAY,
2034 .offset = offsetof(struct wlfw_request_mem_ind_msg_v01,
2038 .data_type = QMI_STRUCT,
2039 .elem_len = QMI_WLFW_MAX_NUM_MEM_SEG_V01,
2040 .elem_size = sizeof(struct wlfw_mem_seg_s_v01),
2041 .array_type = VAR_LEN_ARRAY,
2043 .offset = offsetof(struct wlfw_request_mem_ind_msg_v01,
2045 .ei_array = wlfw_mem_seg_s_v01_ei,
2050 struct qmi_elem_info wlfw_respond_mem_req_msg_v01_ei[] = {
2052 .data_type = QMI_DATA_LEN,
2054 .elem_size = sizeof(u8),
2055 .array_type = NO_ARRAY,
2057 .offset = offsetof(struct wlfw_respond_mem_req_msg_v01,
2061 .data_type = QMI_STRUCT,
2062 .elem_len = QMI_WLFW_MAX_NUM_MEM_SEG_V01,
2063 .elem_size = sizeof(struct wlfw_mem_seg_resp_s_v01),
2064 .array_type = VAR_LEN_ARRAY,
2066 .offset = offsetof(struct wlfw_respond_mem_req_msg_v01,
2068 .ei_array = wlfw_mem_seg_resp_s_v01_ei,
2073 struct qmi_elem_info wlfw_respond_mem_resp_msg_v01_ei[] = {
2075 .data_type = QMI_STRUCT,
2077 .elem_size = sizeof(struct qmi_response_type_v01),
2078 .array_type = NO_ARRAY,
2080 .offset = offsetof(struct wlfw_respond_mem_resp_msg_v01,
2082 .ei_array = qmi_response_type_v01_ei,
2087 struct qmi_elem_info wlfw_mem_ready_ind_msg_v01_ei[] = {
2091 struct qmi_elem_info wlfw_fw_init_done_ind_msg_v01_ei[] = {
2095 struct qmi_elem_info wlfw_rejuvenate_ind_msg_v01_ei[] = {
2097 .data_type = QMI_OPT_FLAG,
2099 .elem_size = sizeof(u8),
2100 .array_type = NO_ARRAY,
2102 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2103 cause_for_rejuvenation_valid),
2106 .data_type = QMI_UNSIGNED_1_BYTE,
2108 .elem_size = sizeof(u8),
2109 .array_type = NO_ARRAY,
2111 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2112 cause_for_rejuvenation),
2115 .data_type = QMI_OPT_FLAG,
2117 .elem_size = sizeof(u8),
2118 .array_type = NO_ARRAY,
2120 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2121 requesting_sub_system_valid),
2124 .data_type = QMI_UNSIGNED_1_BYTE,
2126 .elem_size = sizeof(u8),
2127 .array_type = NO_ARRAY,
2129 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2130 requesting_sub_system),
2133 .data_type = QMI_OPT_FLAG,
2135 .elem_size = sizeof(u8),
2136 .array_type = NO_ARRAY,
2138 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2142 .data_type = QMI_UNSIGNED_2_BYTE,
2144 .elem_size = sizeof(u16),
2145 .array_type = NO_ARRAY,
2147 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2151 .data_type = QMI_OPT_FLAG,
2153 .elem_size = sizeof(u8),
2154 .array_type = NO_ARRAY,
2156 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2157 function_name_valid),
2160 .data_type = QMI_STRING,
2161 .elem_len = QMI_WLFW_FUNCTION_NAME_LEN_V01 + 1,
2162 .elem_size = sizeof(char),
2163 .array_type = NO_ARRAY,
2165 .offset = offsetof(struct wlfw_rejuvenate_ind_msg_v01,
2171 struct qmi_elem_info wlfw_rejuvenate_ack_req_msg_v01_ei[] = {
2175 struct qmi_elem_info wlfw_rejuvenate_ack_resp_msg_v01_ei[] = {
2177 .data_type = QMI_STRUCT,
2179 .elem_size = sizeof(struct qmi_response_type_v01),
2180 .array_type = NO_ARRAY,
2182 .offset = offsetof(struct wlfw_rejuvenate_ack_resp_msg_v01,
2184 .ei_array = qmi_response_type_v01_ei,
2189 struct qmi_elem_info wlfw_dynamic_feature_mask_req_msg_v01_ei[] = {
2191 .data_type = QMI_OPT_FLAG,
2193 .elem_size = sizeof(u8),
2194 .array_type = NO_ARRAY,
2196 .offset = offsetof(struct wlfw_dynamic_feature_mask_req_msg_v01,
2200 .data_type = QMI_UNSIGNED_8_BYTE,
2202 .elem_size = sizeof(u64),
2203 .array_type = NO_ARRAY,
2205 .offset = offsetof(struct wlfw_dynamic_feature_mask_req_msg_v01,
2211 struct qmi_elem_info wlfw_dynamic_feature_mask_resp_msg_v01_ei[] = {
2213 .data_type = QMI_STRUCT,
2215 .elem_size = sizeof(struct qmi_response_type_v01),
2216 .array_type = NO_ARRAY,
2218 .offset = offsetof(struct wlfw_dynamic_feature_mask_resp_msg_v01,
2220 .ei_array = qmi_response_type_v01_ei,
2223 .data_type = QMI_OPT_FLAG,
2225 .elem_size = sizeof(u8),
2226 .array_type = NO_ARRAY,
2228 .offset = offsetof(struct wlfw_dynamic_feature_mask_resp_msg_v01,
2232 .data_type = QMI_UNSIGNED_8_BYTE,
2234 .elem_size = sizeof(u64),
2235 .array_type = NO_ARRAY,
2237 .offset = offsetof(struct wlfw_dynamic_feature_mask_resp_msg_v01,
2241 .data_type = QMI_OPT_FLAG,
2243 .elem_size = sizeof(u8),
2244 .array_type = NO_ARRAY,
2246 .offset = offsetof(struct wlfw_dynamic_feature_mask_resp_msg_v01,
2250 .data_type = QMI_UNSIGNED_8_BYTE,
2252 .elem_size = sizeof(u64),
2253 .array_type = NO_ARRAY,
2255 .offset = offsetof(struct wlfw_dynamic_feature_mask_resp_msg_v01,
2261 struct qmi_elem_info wlfw_m3_info_req_msg_v01_ei[] = {
2263 .data_type = QMI_UNSIGNED_8_BYTE,
2265 .elem_size = sizeof(u64),
2266 .array_type = NO_ARRAY,
2268 .offset = offsetof(struct wlfw_m3_info_req_msg_v01,
2272 .data_type = QMI_UNSIGNED_4_BYTE,
2274 .elem_size = sizeof(u32),
2275 .array_type = NO_ARRAY,
2277 .offset = offsetof(struct wlfw_m3_info_req_msg_v01,
2283 struct qmi_elem_info wlfw_m3_info_resp_msg_v01_ei[] = {
2285 .data_type = QMI_STRUCT,
2287 .elem_size = sizeof(struct qmi_response_type_v01),
2288 .array_type = NO_ARRAY,
2290 .offset = offsetof(struct wlfw_m3_info_resp_msg_v01,
2292 .ei_array = qmi_response_type_v01_ei,
2297 struct qmi_elem_info wlfw_xo_cal_ind_msg_v01_ei[] = {
2299 .data_type = QMI_UNSIGNED_1_BYTE,
2301 .elem_size = sizeof(u8),
2302 .array_type = NO_ARRAY,
2304 .offset = offsetof(struct wlfw_xo_cal_ind_msg_v01,