1 /* 2 * This file and its contents are supplied under the terms of the 3 * Common Development and Distribution License ("CDDL"), version 1.0. 4 * You may only use this file in accordance with the terms of version 5 * 1.0 of the CDDL. 6 * 7 * A full copy of the text of the CDDL should have accompanied this 8 * source. A copy of the CDDL is also available via the Internet at 9 * http://www.illumos.org/license/CDDL. 10 */ 11 12 /* 13 * Copyright 2016 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org> 14 */ 15 16 #ifndef _IF_IWNCOMPAT_H 17 #define _IF_IWNCOMPAT_H 18 19 /* XXX Added for NetBSD */ 20 #define IEEE80211_NO_HT 21 22 /* 23 * QoS definitions 24 */ 25 26 #define AC_NUM (4) /* the number of access category */ 27 28 /* 29 * index of every AC in firmware 30 */ 31 #define QOS_AC_BK (0) 32 #define QOS_AC_BE (1) 33 #define QOS_AC_VI (2) 34 #define QOS_AC_VO (3) 35 #define QOS_AC_INVALID (-1) 36 37 #define QOS_CW_RANGE_MIN (0) /* exponential of 2 */ 38 #define QOS_CW_RANGE_MAX (15) /* exponential of 2 */ 39 #define QOS_TXOP_MIN (0) /* unit of 32 microsecond */ 40 #define QOS_TXOP_MAX (255) /* unit of 32 microsecond */ 41 #define QOS_AIFSN_MIN (2) 42 #define QOS_AIFSN_MAX (15) /* undefined */ 43 44 /* 45 * masks for flags of QoS parameter command 46 */ 47 #define QOS_PARAM_FLG_UPDATE_EDCA (0x01) 48 #define QOS_PARAM_FLG_TGN (0x02) 49 50 /* 51 * index of TX queue for every AC 52 */ 53 #define QOS_AC_BK_TO_TXQ (3) 54 #define QOS_AC_BE_TO_TXQ (2) 55 #define QOS_AC_VI_TO_TXQ (1) 56 #define QOS_AC_VO_TO_TXQ (0) 57 #define TXQ_FOR_AC_MIN (0) 58 #define TXQ_FOR_AC_MAX (3) 59 #define TXQ_FOR_AC_INVALID (-1) 60 #define NON_QOS_TXQ QOS_AC_BE_TO_TXQ 61 #define QOS_TXQ_FOR_MGT QOS_AC_VO_TO_TXQ 62 63 #define WME_TID_MIN (0) 64 #define WME_TID_MAX (7) 65 #define WME_TID_INVALID ((uint8_t)-1) 66 67 #define PCI_VENDOR_INTEL 0x8086 /* Intel */ 68 69 /* WiFi Link 1000 */ 70 #define PCI_PRODUCT_INTEL_WIFI_LINK_1000_1 0x0083 71 #define PCI_PRODUCT_INTEL_WIFI_LINK_1000_2 0x0084 72 73 /* Centrino Wireless-N 100 */ 74 #define PCI_PRODUCT_INTEL_WIFI_LINK_100_1 0x08ae 75 #define PCI_PRODUCT_INTEL_WIFI_LINK_100_2 0x08af 76 77 /* Centrino Wireless-N 105 */ 78 #define PCI_PRODUCT_INTEL_WIFI_LINK_105_1 0x0894 79 #define PCI_PRODUCT_INTEL_WIFI_LINK_105_2 0x0895 80 81 /* Centrino Wireless-N 130 */ 82 #define PCI_PRODUCT_INTEL_WIFI_LINK_130_1 0x0896 83 #define PCI_PRODUCT_INTEL_WIFI_LINK_130_2 0x0897 84 85 /* Centrino Wireless-N 135 */ 86 #define PCI_PRODUCT_INTEL_WIFI_LINK_135_1 0x0892 87 #define PCI_PRODUCT_INTEL_WIFI_LINK_135_2 0x0893 88 89 /* Centrino Wireless-N 1030 */ 90 #define PCI_PRODUCT_INTEL_WIFI_LINK_1030_1 0x008a 91 #define PCI_PRODUCT_INTEL_WIFI_LINK_1030_2 0x008b 92 93 /* Centrino Wireless-N 2200 */ 94 #define PCI_PRODUCT_INTEL_WIFI_LINK_2200_1 0x0890 95 #define PCI_PRODUCT_INTEL_WIFI_LINK_2200_2 0x0891 96 97 /* Centrino Wireless-N 2230 */ 98 #define PCI_PRODUCT_INTEL_WIFI_LINK_2230_1 0x0887 99 #define PCI_PRODUCT_INTEL_WIFI_LINK_2230_2 0x0888 100 101 /* Wireless WiFi Link 4965 */ 102 #define PCI_PRODUCT_INTEL_WIFI_LINK_4965_1 0x4229 103 #define PCI_PRODUCT_INTEL_WIFI_LINK_4965_2 0x4230 104 #define PCI_PRODUCT_INTEL_WIFI_LINK_4965_3 0x422d 105 #define PCI_PRODUCT_INTEL_WIFI_LINK_4965_4 0x4233 106 107 /* WiFi Link 5100 */ 108 #define PCI_PRODUCT_INTEL_WIFI_LINK_5100_1 0x4232 109 #define PCI_PRODUCT_INTEL_WIFI_LINK_5100_2 0x4237 110 111 /* WiFi Link 5150 */ 112 #define PCI_PRODUCT_INTEL_WIFI_LINK_5150_1 0x423c 113 #define PCI_PRODUCT_INTEL_WIFI_LINK_5150_2 0x423d 114 115 /* WiFi Link 5300 */ 116 #define PCI_PRODUCT_INTEL_WIFI_LINK_5300_1 0x4235 117 #define PCI_PRODUCT_INTEL_WIFI_LINK_5300_2 0x4236 118 119 /* WiFi Link 5350 */ 120 #define PCI_PRODUCT_INTEL_WIFI_LINK_5350_1 0x423a 121 #define PCI_PRODUCT_INTEL_WIFI_LINK_5350_2 0x423b 122 123 /* Centrino Advanced-N 6200 */ 124 #define PCI_PRODUCT_INTEL_WIFI_LINK_6000_IPA_1 0x422c 125 #define PCI_PRODUCT_INTEL_WIFI_LINK_6000_IPA_2 0x4239 126 127 /* Centrino Advanced-N 6205 */ 128 #define PCI_PRODUCT_INTEL_WIFI_LINK_6005_2X2_1 0x0082 129 #define PCI_PRODUCT_INTEL_WIFI_LINK_6005_2X2_2 0x0085 130 131 /* Centrino Advanced-N 6230 */ 132 #define PCI_PRODUCT_INTEL_WIFI_LINK_6230_1 0x0090 133 #define PCI_PRODUCT_INTEL_WIFI_LINK_6230_2 0x0091 134 135 /* Centrino Advanced-N 6235 */ 136 #define PCI_PRODUCT_INTEL_WIFI_LINK_6235 0x088e 137 #define PCI_PRODUCT_INTEL_WIFI_LINK_6235_2 0x088f 138 139 /* Centrino Advanced-N 6250 */ 140 #define PCI_PRODUCT_INTEL_WIFI_LINK_6050_2X2_1 0x0087 141 #define PCI_PRODUCT_INTEL_WIFI_LINK_6050_2X2_2 0x0089 142 143 /* Centrino Ultimate-N 6300 */ 144 #define PCI_PRODUCT_INTEL_WIFI_LINK_6000_3X3_1 0x422b 145 #define PCI_PRODUCT_INTEL_WIFI_LINK_6000_3X3_2 0x4238 146 147 #define __inline inline 148 #define __packed __attribute__((packed)) 149 #define __arraycount(x) ARRAY_SIZE(x) 150 #define abs(x) ABS(x) 151 152 #define le16toh(x) LE_16(x) 153 #define htole16(x) LE_16(x) 154 #define le32toh(x) LE_32(x) 155 #define htole32(x) LE_32(x) 156 #define le64toh(x) LE_64(x) 157 #define htole64(x) LE_64(x) 158 159 #define IWN_SUCCESS 0 160 #define IWN_FAIL EIO 161 162 #endif /* _IF_IWNCOMPAT_H */ 163