1 /* 2 * Copyright (c) 2014 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 37 /* keep last */ 38 __ATH10K_TM_ATTR_AFTER_LAST, 39 ATH10K_TM_ATTR_MAX = __ATH10K_TM_ATTR_AFTER_LAST - 1, 40 }; 41 42 /* All ath10k testmode interface commands specified in 43 * ATH10K_TM_ATTR_CMD 44 */ 45 enum ath10k_tm_cmd { 46 /* Returns the supported ath10k testmode interface version in 47 * ATH10K_TM_ATTR_VERSION. Always guaranteed to work. User space 48 * uses this to verify it's using the correct version of the 49 * testmode interface 50 */ 51 ATH10K_TM_CMD_GET_VERSION = 0, 52 53 /* Boots the UTF firmware, the netdev interface must be down at the 54 * time. 55 */ 56 ATH10K_TM_CMD_UTF_START = 1, 57 58 /* Shuts down the UTF firmware and puts the driver back into OFF 59 * state. 60 */ 61 ATH10K_TM_CMD_UTF_STOP = 2, 62 63 /* The command used to transmit a WMI command to the firmware and 64 * the event to receive WMI events from the firmware. Without 65 * struct wmi_cmd_hdr header, only the WMI payload. Command id is 66 * provided with ATH10K_TM_ATTR_WMI_CMDID and payload in 67 * ATH10K_TM_ATTR_DATA. 68 */ 69 ATH10K_TM_CMD_WMI = 3, 70 }; 71