1 /* 2 * Copyright (c) 2014,2017 Qualcomm Atheros, Inc. 3 * 4 * Permission to use, copy, modify, and/or distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 17 /* "API" level of the ath10k testmode interface. Bump it after every 18 * incompatible interface change. 19 */ 20 #define ATH10K_TESTMODE_VERSION_MAJOR 1 21 22 /* Bump this after every _compatible_ interface change, for example 23 * addition of a new command or an attribute. 24 */ 25 #define ATH10K_TESTMODE_VERSION_MINOR 0 26 27 #define ATH10K_TM_DATA_MAX_LEN 5000 28 29 enum ath10k_tm_attr { 30 __ATH10K_TM_ATTR_INVALID = 0, 31 ATH10K_TM_ATTR_CMD = 1, 32 ATH10K_TM_ATTR_DATA = 2, 33 ATH10K_TM_ATTR_WMI_CMDID = 3, 34 ATH10K_TM_ATTR_VERSION_MAJOR = 4, 35 ATH10K_TM_ATTR_VERSION_MINOR = 5, 36 ATH10K_TM_ATTR_WMI_OP_VERSION = 6, 37 38 /* keep last */ 39 __ATH10K_TM_ATTR_AFTER_LAST, 40 ATH10K_TM_ATTR_MAX = __ATH10K_TM_ATTR_AFTER_LAST - 1, 41 }; 42 43 /* All ath10k testmode interface commands specified in 44 * ATH10K_TM_ATTR_CMD 45 */ 46 enum ath10k_tm_cmd { 47 /* Returns the supported ath10k testmode interface version in 48 * ATH10K_TM_ATTR_VERSION. Always guaranteed to work. User space 49 * uses this to verify it's using the correct version of the 50 * testmode interface 51 */ 52 ATH10K_TM_CMD_GET_VERSION = 0, 53 54 /* Boots the UTF firmware, the netdev interface must be down at the 55 * time. 56 */ 57 ATH10K_TM_CMD_UTF_START = 1, 58 59 /* Shuts down the UTF firmware and puts the driver back into OFF 60 * state. 61 */ 62 ATH10K_TM_CMD_UTF_STOP = 2, 63 64 /* The command used to transmit a WMI command to the firmware and 65 * the event to receive WMI events from the firmware. Without 66 * struct wmi_cmd_hdr header, only the WMI payload. Command id is 67 * provided with ATH10K_TM_ATTR_WMI_CMDID and payload in 68 * ATH10K_TM_ATTR_DATA. 69 */ 70 ATH10K_TM_CMD_WMI = 3, 71 }; 72