diff options
Diffstat (limited to 'sound/pci/asihpi/hpi_internal.h')
-rw-r--r-- | sound/pci/asihpi/hpi_internal.h | 115 |
1 files changed, 15 insertions, 100 deletions
diff --git a/sound/pci/asihpi/hpi_internal.h b/sound/pci/asihpi/hpi_internal.h index d497030c160..4cc315daeda 100644 --- a/sound/pci/asihpi/hpi_internal.h +++ b/sound/pci/asihpi/hpi_internal.h | |||
@@ -25,6 +25,7 @@ HPI internal definitions | |||
25 | #define _HPI_INTERNAL_H_ | 25 | #define _HPI_INTERNAL_H_ |
26 | 26 | ||
27 | #include "hpi.h" | 27 | #include "hpi.h" |
28 | |||
28 | /** maximum number of memory regions mapped to an adapter */ | 29 | /** maximum number of memory regions mapped to an adapter */ |
29 | #define HPI_MAX_ADAPTER_MEM_SPACES (2) | 30 | #define HPI_MAX_ADAPTER_MEM_SPACES (2) |
30 | 31 | ||
@@ -220,8 +221,6 @@ enum HPI_CONTROL_ATTRIBUTES { | |||
220 | 221 | ||
221 | HPI_COBRANET_SET = HPI_CTL_ATTR(COBRANET, 1), | 222 | HPI_COBRANET_SET = HPI_CTL_ATTR(COBRANET, 1), |
222 | HPI_COBRANET_GET = HPI_CTL_ATTR(COBRANET, 2), | 223 | HPI_COBRANET_GET = HPI_CTL_ATTR(COBRANET, 2), |
223 | /*HPI_COBRANET_SET_DATA = HPI_CTL_ATTR(COBRANET, 3), */ | ||
224 | /*HPI_COBRANET_GET_DATA = HPI_CTL_ATTR(COBRANET, 4), */ | ||
225 | HPI_COBRANET_GET_STATUS = HPI_CTL_ATTR(COBRANET, 5), | 224 | HPI_COBRANET_GET_STATUS = HPI_CTL_ATTR(COBRANET, 5), |
226 | HPI_COBRANET_SEND_PACKET = HPI_CTL_ATTR(COBRANET, 6), | 225 | HPI_COBRANET_SEND_PACKET = HPI_CTL_ATTR(COBRANET, 6), |
227 | HPI_COBRANET_GET_PACKET = HPI_CTL_ATTR(COBRANET, 7), | 226 | HPI_COBRANET_GET_PACKET = HPI_CTL_ATTR(COBRANET, 7), |
@@ -241,7 +240,9 @@ enum HPI_CONTROL_ATTRIBUTES { | |||
241 | HPI_PAD_PROGRAM_TYPE = HPI_CTL_ATTR(PAD, 5), | 240 | HPI_PAD_PROGRAM_TYPE = HPI_CTL_ATTR(PAD, 5), |
242 | HPI_PAD_PROGRAM_ID = HPI_CTL_ATTR(PAD, 6), | 241 | HPI_PAD_PROGRAM_ID = HPI_CTL_ATTR(PAD, 6), |
243 | HPI_PAD_TA_SUPPORT = HPI_CTL_ATTR(PAD, 7), | 242 | HPI_PAD_TA_SUPPORT = HPI_CTL_ATTR(PAD, 7), |
244 | HPI_PAD_TA_ACTIVE = HPI_CTL_ATTR(PAD, 8) | 243 | HPI_PAD_TA_ACTIVE = HPI_CTL_ATTR(PAD, 8), |
244 | |||
245 | HPI_UNIVERSAL_ENTITY = HPI_CTL_ATTR(UNIVERSAL, 1) | ||
245 | }; | 246 | }; |
246 | 247 | ||
247 | #define HPI_POLARITY_POSITIVE 0 | 248 | #define HPI_POLARITY_POSITIVE 0 |
@@ -393,14 +394,10 @@ enum HPI_FUNCTION_IDS { | |||
393 | HPI_SUBSYS_OPEN = HPI_FUNC_ID(SUBSYSTEM, 1), | 394 | HPI_SUBSYS_OPEN = HPI_FUNC_ID(SUBSYSTEM, 1), |
394 | HPI_SUBSYS_GET_VERSION = HPI_FUNC_ID(SUBSYSTEM, 2), | 395 | HPI_SUBSYS_GET_VERSION = HPI_FUNC_ID(SUBSYSTEM, 2), |
395 | HPI_SUBSYS_GET_INFO = HPI_FUNC_ID(SUBSYSTEM, 3), | 396 | HPI_SUBSYS_GET_INFO = HPI_FUNC_ID(SUBSYSTEM, 3), |
396 | /* HPI_SUBSYS_FIND_ADAPTERS = HPI_FUNC_ID(SUBSYSTEM, 4), */ | ||
397 | HPI_SUBSYS_CREATE_ADAPTER = HPI_FUNC_ID(SUBSYSTEM, 5), | 397 | HPI_SUBSYS_CREATE_ADAPTER = HPI_FUNC_ID(SUBSYSTEM, 5), |
398 | HPI_SUBSYS_CLOSE = HPI_FUNC_ID(SUBSYSTEM, 6), | 398 | HPI_SUBSYS_CLOSE = HPI_FUNC_ID(SUBSYSTEM, 6), |
399 | /* HPI_SUBSYS_DELETE_ADAPTER = HPI_FUNC_ID(SUBSYSTEM, 7), */ | ||
400 | HPI_SUBSYS_DRIVER_LOAD = HPI_FUNC_ID(SUBSYSTEM, 8), | 399 | HPI_SUBSYS_DRIVER_LOAD = HPI_FUNC_ID(SUBSYSTEM, 8), |
401 | HPI_SUBSYS_DRIVER_UNLOAD = HPI_FUNC_ID(SUBSYSTEM, 9), | 400 | HPI_SUBSYS_DRIVER_UNLOAD = HPI_FUNC_ID(SUBSYSTEM, 9), |
402 | /* HPI_SUBSYS_READ_PORT_8 = HPI_FUNC_ID(SUBSYSTEM, 10), */ | ||
403 | /* HPI_SUBSYS_WRITE_PORT_8 = HPI_FUNC_ID(SUBSYSTEM, 11), */ | ||
404 | HPI_SUBSYS_GET_NUM_ADAPTERS = HPI_FUNC_ID(SUBSYSTEM, 12), | 401 | HPI_SUBSYS_GET_NUM_ADAPTERS = HPI_FUNC_ID(SUBSYSTEM, 12), |
405 | HPI_SUBSYS_GET_ADAPTER = HPI_FUNC_ID(SUBSYSTEM, 13), | 402 | HPI_SUBSYS_GET_ADAPTER = HPI_FUNC_ID(SUBSYSTEM, 13), |
406 | HPI_SUBSYS_SET_NETWORK_INTERFACE = HPI_FUNC_ID(SUBSYSTEM, 14), | 403 | HPI_SUBSYS_SET_NETWORK_INTERFACE = HPI_FUNC_ID(SUBSYSTEM, 14), |
@@ -430,7 +427,10 @@ enum HPI_FUNCTION_IDS { | |||
430 | HPI_ADAPTER_IRQ_QUERY_AND_CLEAR = HPI_FUNC_ID(ADAPTER, 19), | 427 | HPI_ADAPTER_IRQ_QUERY_AND_CLEAR = HPI_FUNC_ID(ADAPTER, 19), |
431 | HPI_ADAPTER_IRQ_CALLBACK = HPI_FUNC_ID(ADAPTER, 20), | 428 | HPI_ADAPTER_IRQ_CALLBACK = HPI_FUNC_ID(ADAPTER, 20), |
432 | HPI_ADAPTER_DELETE = HPI_FUNC_ID(ADAPTER, 21), | 429 | HPI_ADAPTER_DELETE = HPI_FUNC_ID(ADAPTER, 21), |
433 | #define HPI_ADAPTER_FUNCTION_COUNT 21 | 430 | HPI_ADAPTER_READ_FLASH = HPI_FUNC_ID(ADAPTER, 22), |
431 | HPI_ADAPTER_END_FLASH = HPI_FUNC_ID(ADAPTER, 23), | ||
432 | HPI_ADAPTER_FILESTORE_DELETE_ALL = HPI_FUNC_ID(ADAPTER, 24), | ||
433 | #define HPI_ADAPTER_FUNCTION_COUNT 24 | ||
434 | 434 | ||
435 | HPI_OSTREAM_OPEN = HPI_FUNC_ID(OSTREAM, 1), | 435 | HPI_OSTREAM_OPEN = HPI_FUNC_ID(OSTREAM, 1), |
436 | HPI_OSTREAM_CLOSE = HPI_FUNC_ID(OSTREAM, 2), | 436 | HPI_OSTREAM_CLOSE = HPI_FUNC_ID(OSTREAM, 2), |
@@ -495,7 +495,9 @@ enum HPI_FUNCTION_IDS { | |||
495 | HPI_MIXER_GET_CONTROL_MULTIPLE_VALUES = HPI_FUNC_ID(MIXER, 10), | 495 | HPI_MIXER_GET_CONTROL_MULTIPLE_VALUES = HPI_FUNC_ID(MIXER, 10), |
496 | HPI_MIXER_STORE = HPI_FUNC_ID(MIXER, 11), | 496 | HPI_MIXER_STORE = HPI_FUNC_ID(MIXER, 11), |
497 | HPI_MIXER_GET_CACHE_INFO = HPI_FUNC_ID(MIXER, 12), | 497 | HPI_MIXER_GET_CACHE_INFO = HPI_FUNC_ID(MIXER, 12), |
498 | #define HPI_MIXER_FUNCTION_COUNT 12 | 498 | HPI_MIXER_GET_BLOCK_HANDLE = HPI_FUNC_ID(MIXER, 13), |
499 | HPI_MIXER_GET_PARAMETER_HANDLE = HPI_FUNC_ID(MIXER, 14), | ||
500 | #define HPI_MIXER_FUNCTION_COUNT 14 | ||
499 | 501 | ||
500 | HPI_CONTROL_GET_INFO = HPI_FUNC_ID(CONTROL, 1), | 502 | HPI_CONTROL_GET_INFO = HPI_FUNC_ID(CONTROL, 1), |
501 | HPI_CONTROL_GET_STATE = HPI_FUNC_ID(CONTROL, 2), | 503 | HPI_CONTROL_GET_STATE = HPI_FUNC_ID(CONTROL, 2), |
@@ -618,7 +620,7 @@ struct hpi_hostbuffer_status { | |||
618 | u32 auxiliary_data_available; | 620 | u32 auxiliary_data_available; |
619 | u32 stream_state; | 621 | u32 stream_state; |
620 | /* DSP index in to the host bus master buffer. */ | 622 | /* DSP index in to the host bus master buffer. */ |
621 | u32 dSP_index; | 623 | u32 dsp_index; |
622 | /* Host index in to the host bus master buffer. */ | 624 | /* Host index in to the host bus master buffer. */ |
623 | u32 host_index; | 625 | u32 host_index; |
624 | u32 size_in_bytes; | 626 | u32 size_in_bytes; |
@@ -661,13 +663,6 @@ union hpi_adapterx_msg { | |||
661 | u16 index; | 663 | u16 index; |
662 | } module_info; | 664 | } module_info; |
663 | struct { | 665 | struct { |
664 | u32 checksum; | ||
665 | u16 sequence; | ||
666 | u16 length; | ||
667 | u16 offset; /**< offset from start of msg to data */ | ||
668 | u16 unused; | ||
669 | } program_flash; | ||
670 | struct { | ||
671 | u16 index; | 666 | u16 index; |
672 | u16 what; | 667 | u16 what; |
673 | u16 property_index; | 668 | u16 property_index; |
@@ -678,25 +673,18 @@ union hpi_adapterx_msg { | |||
678 | u16 parameter2; | 673 | u16 parameter2; |
679 | } property_set; | 674 | } property_set; |
680 | struct { | 675 | struct { |
681 | u32 offset; | ||
682 | } query_flash; | ||
683 | struct { | ||
684 | u32 pad32; | 676 | u32 pad32; |
685 | u16 key1; | 677 | u16 key1; |
686 | u16 key2; | 678 | u16 key2; |
687 | } restart; | 679 | } restart; |
688 | struct { | 680 | struct { |
689 | u32 offset; | ||
690 | u32 length; | ||
691 | u32 key; | ||
692 | } start_flash; | ||
693 | struct { | ||
694 | u32 pad32; | 681 | u32 pad32; |
695 | u16 value; | 682 | u16 value; |
696 | } test_assert; | 683 | } test_assert; |
697 | struct { | 684 | struct { |
698 | u32 yes; | 685 | u32 yes; |
699 | } irq_query; | 686 | } irq_query; |
687 | u32 pad[3]; | ||
700 | }; | 688 | }; |
701 | 689 | ||
702 | struct hpi_adapter_res { | 690 | struct hpi_adapter_res { |
@@ -724,18 +712,10 @@ union hpi_adapterx_res { | |||
724 | u32 adapter_mode; | 712 | u32 adapter_mode; |
725 | } mode; | 713 | } mode; |
726 | struct { | 714 | struct { |
727 | u16 sequence; | ||
728 | } program_flash; | ||
729 | struct { | ||
730 | u16 parameter1; | 715 | u16 parameter1; |
731 | u16 parameter2; | 716 | u16 parameter2; |
732 | } property_get; | 717 | } property_get; |
733 | struct { | 718 | struct { |
734 | u32 checksum; | ||
735 | u32 length; | ||
736 | u32 version; | ||
737 | } query_flash; | ||
738 | struct { | ||
739 | u32 yes; | 719 | u32 yes; |
740 | } irq_query; | 720 | } irq_query; |
741 | }; | 721 | }; |
@@ -1150,74 +1130,9 @@ struct hpi_res_adapter_get_info { | |||
1150 | struct hpi_adapter_res p; | 1130 | struct hpi_adapter_res p; |
1151 | }; | 1131 | }; |
1152 | 1132 | ||
1153 | /* padding is so these are same size as v0 hpi_message */ | ||
1154 | struct hpi_msg_adapter_query_flash { | ||
1155 | struct hpi_message_header h; | ||
1156 | u32 offset; | ||
1157 | u8 pad_to_version0_size[sizeof(struct hpi_message) - /* V0 res */ | ||
1158 | sizeof(struct hpi_message_header) - 1 * sizeof(u32)]; | ||
1159 | }; | ||
1160 | |||
1161 | /* padding is so these are same size as v0 hpi_response */ | ||
1162 | struct hpi_res_adapter_query_flash { | ||
1163 | struct hpi_response_header h; | ||
1164 | u32 checksum; | ||
1165 | u32 length; | ||
1166 | u32 version; | ||
1167 | u8 pad_to_version0_size[sizeof(struct hpi_response) - /* V0 res */ | ||
1168 | sizeof(struct hpi_response_header) - 3 * sizeof(u32)]; | ||
1169 | }; | ||
1170 | |||
1171 | struct hpi_msg_adapter_start_flash { | ||
1172 | struct hpi_message_header h; | ||
1173 | u32 offset; | ||
1174 | u32 length; | ||
1175 | u32 key; | ||
1176 | u8 pad_to_version0_size[sizeof(struct hpi_message) - /* V0 res */ | ||
1177 | sizeof(struct hpi_message_header) - 3 * sizeof(u32)]; | ||
1178 | }; | ||
1179 | |||
1180 | struct hpi_res_adapter_start_flash { | ||
1181 | struct hpi_response_header h; | ||
1182 | u8 pad_to_version0_size[sizeof(struct hpi_response) - /* V0 res */ | ||
1183 | sizeof(struct hpi_response_header)]; | ||
1184 | }; | ||
1185 | |||
1186 | struct hpi_msg_adapter_program_flash_payload { | ||
1187 | u32 checksum; | ||
1188 | u16 sequence; | ||
1189 | u16 length; | ||
1190 | u16 offset; /**< offset from start of msg to data */ | ||
1191 | u16 unused; | ||
1192 | /* ensure sizeof(header + payload) == sizeof(hpi_message_V0) | ||
1193 | because old firmware expects data after message of this size */ | ||
1194 | u8 pad_to_version0_size[sizeof(struct hpi_message) - /* V0 message */ | ||
1195 | sizeof(struct hpi_message_header) - sizeof(u32) - | ||
1196 | 4 * sizeof(u16)]; | ||
1197 | }; | ||
1198 | |||
1199 | struct hpi_msg_adapter_program_flash { | ||
1200 | struct hpi_message_header h; | ||
1201 | struct hpi_msg_adapter_program_flash_payload p; | ||
1202 | u32 data[256]; | ||
1203 | }; | ||
1204 | |||
1205 | struct hpi_res_adapter_program_flash { | ||
1206 | struct hpi_response_header h; | ||
1207 | u16 sequence; | ||
1208 | u8 pad_to_version0_size[sizeof(struct hpi_response) - /* V0 res */ | ||
1209 | sizeof(struct hpi_response_header) - sizeof(u16)]; | ||
1210 | }; | ||
1211 | |||
1212 | struct hpi_msg_adapter_debug_read { | ||
1213 | struct hpi_message_header h; | ||
1214 | u32 dsp_address; | ||
1215 | u32 count_bytes; | ||
1216 | }; | ||
1217 | |||
1218 | struct hpi_res_adapter_debug_read { | 1133 | struct hpi_res_adapter_debug_read { |
1219 | struct hpi_response_header h; | 1134 | struct hpi_response_header h; |
1220 | u8 bytes[256]; | 1135 | u8 bytes[1024]; |
1221 | }; | 1136 | }; |
1222 | 1137 | ||
1223 | struct hpi_msg_cobranet_hmi { | 1138 | struct hpi_msg_cobranet_hmi { |
@@ -1461,7 +1376,7 @@ struct hpi_control_cache_pad { | |||
1461 | /* 2^N sized FIFO buffer (internal to HPI<->DSP interaction) */ | 1376 | /* 2^N sized FIFO buffer (internal to HPI<->DSP interaction) */ |
1462 | struct hpi_fifo_buffer { | 1377 | struct hpi_fifo_buffer { |
1463 | u32 size; | 1378 | u32 size; |
1464 | u32 dSP_index; | 1379 | u32 dsp_index; |
1465 | u32 host_index; | 1380 | u32 host_index; |
1466 | }; | 1381 | }; |
1467 | 1382 | ||