1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 /* 3 * Copyright (C) 2012-2014, 2018-2021 Intel Corporation 4 * Copyright (C) 2013-2015 Intel Mobile Communications GmbH 5 * Copyright (C) 2016-2017 Intel Deutschland GmbH 6 */ 7 #ifndef __VENDOR_CMD_INTEL_H__ 8 #define __VENDOR_CMD_INTEL_H__ 9 10 #define INTEL_OUI 0x001735 11 12 /** 13 * enum iwl_mvm_vendor_cmd - supported vendor commands 14 * @IWL_MVM_VENDOR_CMD_GET_CSME_CONN_INFO: reports CSME connection info. 15 * @IWL_MVM_VENDOR_CMD_HOST_GET_OWNERSHIP: asks for ownership on the device. 16 * @IWL_MVM_VENDOR_CMD_ROAMING_FORBIDDEN_EVENT: notifies if roaming is allowed. 17 * It contains a &IWL_MVM_VENDOR_ATTR_ROAMING_FORBIDDEN and a 18 * &IWL_MVM_VENDOR_ATTR_VIF_ADDR attributes. 19 */ 20 21 enum iwl_mvm_vendor_cmd { 22 IWL_MVM_VENDOR_CMD_GET_CSME_CONN_INFO = 0x2d, 23 IWL_MVM_VENDOR_CMD_HOST_GET_OWNERSHIP = 0x30, 24 IWL_MVM_VENDOR_CMD_ROAMING_FORBIDDEN_EVENT = 0x32, 25 }; 26 27 enum iwl_vendor_auth_akm_mode { 28 IWL_VENDOR_AUTH_OPEN, 29 IWL_VENDOR_AUTH_RSNA = 0x6, 30 IWL_VENDOR_AUTH_RSNA_PSK, 31 IWL_VENDOR_AUTH_SAE = 0x9, 32 IWL_VENDOR_AUTH_MAX, 33 }; 34 35 /** 36 * enum iwl_mvm_vendor_attr - attributes used in vendor commands 37 * @__IWL_MVM_VENDOR_ATTR_INVALID: attribute 0 is invalid 38 * @IWL_MVM_VENDOR_ATTR_VIF_ADDR: interface MAC address 39 * @IWL_MVM_VENDOR_ATTR_ADDR: MAC address 40 * @IWL_MVM_VENDOR_ATTR_SSID: SSID (binary attribute, 0..32 octets) 41 * @IWL_MVM_VENDOR_ATTR_STA_CIPHER: the cipher to use for the station with the 42 * mac address specified in &IWL_MVM_VENDOR_ATTR_ADDR. 43 * @IWL_MVM_VENDOR_ATTR_ROAMING_FORBIDDEN: u8 attribute. Indicates whether 44 * roaming is forbidden or not. Value 1 means roaming is forbidden, 45 * 0 mean roaming is allowed. 46 * @IWL_MVM_VENDOR_ATTR_AUTH_MODE: u32 attribute. Authentication mode type 47 * as specified in &enum iwl_vendor_auth_akm_mode. 48 * @IWL_MVM_VENDOR_ATTR_CHANNEL_NUM: u8 attribute. Contains channel number. 49 * @IWL_MVM_VENDOR_ATTR_BAND: u8 attribute. 50 * 0 for 2.4 GHz band, 1 for 5.2GHz band and 2 for 6GHz band. 51 * @IWL_MVM_VENDOR_ATTR_COLLOC_CHANNEL: u32 attribute. Channel number of 52 * collocated AP. Relevant for 6GHz AP info. 53 * @IWL_MVM_VENDOR_ATTR_COLLOC_ADDR: MAC address of a collocated AP. 54 * Relevant for 6GHz AP info. 55 * 56 * @NUM_IWL_MVM_VENDOR_ATTR: number of vendor attributes 57 * @MAX_IWL_MVM_VENDOR_ATTR: highest vendor attribute number 58 59 */ 60 enum iwl_mvm_vendor_attr { 61 __IWL_MVM_VENDOR_ATTR_INVALID = 0x00, 62 IWL_MVM_VENDOR_ATTR_VIF_ADDR = 0x02, 63 IWL_MVM_VENDOR_ATTR_ADDR = 0x0a, 64 IWL_MVM_VENDOR_ATTR_SSID = 0x3d, 65 IWL_MVM_VENDOR_ATTR_STA_CIPHER = 0x51, 66 IWL_MVM_VENDOR_ATTR_ROAMING_FORBIDDEN = 0x64, 67 IWL_MVM_VENDOR_ATTR_AUTH_MODE = 0x65, 68 IWL_MVM_VENDOR_ATTR_CHANNEL_NUM = 0x66, 69 IWL_MVM_VENDOR_ATTR_BAND = 0x69, 70 IWL_MVM_VENDOR_ATTR_COLLOC_CHANNEL = 0x70, 71 IWL_MVM_VENDOR_ATTR_COLLOC_ADDR = 0x71, 72 73 NUM_IWL_MVM_VENDOR_ATTR, 74 MAX_IWL_MVM_VENDOR_ATTR = NUM_IWL_MVM_VENDOR_ATTR - 1, 75 }; 76 77 #endif /* __VENDOR_CMD_INTEL_H__ */ 78