1 /* Copyright (c) 2022 Intel Corporation
2  * SPDX-License-Identifier: Apache-2.0
3  */
4 
5 #ifndef ZEPHYR_INCLUDE_CAVS_TEST_H
6 #define ZEPHYR_INCLUDE_CAVS_TEST_H
7 
8 /* The cavstool.py script that launched us listens for a very simple
9  * set of IPC commands to help test.  Pass one of the following values
10  * as the "data" argument to intel_adsp_ipc_send_message(INTEL_ADSP_IPC_HOST_DEV, ...):
11  */
12 enum cavstool_cmd {
13 	/* The host takes no action, but signals DONE to complete the message */
14 	IPCCMD_SIGNAL_DONE,
15 
16 	/* The host returns done after a short timeout */
17 	IPCCMD_ASYNC_DONE_DELAY,
18 
19 	/* The host issues a new message with the ext_data value as its "data" */
20 	IPCCMD_RETURN_MSG,
21 
22 	/* The host writes the given value to ADSPCS */
23 	IPCCMD_ADSPCS,
24 
25 	/* The host emits a (real/host time) timestamp into the log stream */
26 	IPCCMD_TIMESTAMP,
27 
28 	/* The host copies OUTBOX[ext_data >> 16] to INBOX[ext_data & 0xffff] */
29 	IPCCMD_WINCOPY,
30 
31 	/* The host clears the run bit and resets the HDA stream */
32 	IPCCMD_HDA_RESET,
33 
34 	/* The host configures an HDA stream (with provided buffer size and stream id) */
35 	IPCCMD_HDA_CONFIG,
36 
37 	/* The host runs (sets the SDxCTL.RUN bit) for a given HDA stream */
38 	IPCCMD_HDA_START,
39 
40 	/* The host stops (sets the SDxCTL.RUN bit) for a given HDA stream */
41 	IPCCMD_HDA_STOP,
42 
43 	/* The host validates an HDA byte stream contains an 8bit counter and received a given
44 	 * number of bytes
45 	 */
46 	IPCCMD_HDA_VALIDATE,
47 
48 	/* Host sends some data */
49 	IPCCMD_HDA_SEND,
50 
51 	/* Host prints some data */
52 	IPCCMD_HDA_PRINT
53 };
54 
55 #endif /* ZEPHYR_INCLUDE_CAVS_TEST_H */
56