97cf82793d9b17f4e90e837d7ed7f52f191e405b
[openwrt/staging/mkresin.git] / package / network / utils / iw / patches / 001-nl80211_h_sync.patch
1 --- a/nl80211.h
2 +++ b/nl80211.h
3 @@ -52,6 +52,11 @@
4 #define NL80211_MULTICAST_GROUP_NAN "nan"
5 #define NL80211_MULTICAST_GROUP_TESTMODE "testmode"
6
7 +#define NL80211_EDMG_BW_CONFIG_MIN 4
8 +#define NL80211_EDMG_BW_CONFIG_MAX 15
9 +#define NL80211_EDMG_CHANNELS_MIN 1
10 +#define NL80211_EDMG_CHANNELS_MAX 0x3c /* 0b00111100 */
11 +
12 /**
13 * DOC: Station handling
14 *
15 @@ -2361,6 +2366,16 @@ enum nl80211_commands {
16 * @NL80211_ATTR_HE_OBSS_PD: nested attribute for OBSS Packet Detection
17 * functionality.
18 *
19 + * @NL80211_ATTR_WIPHY_EDMG_CHANNELS: bitmap that indicates the 2.16 GHz
20 + * channel(s) that are allowed to be used for EDMG transmissions.
21 + * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251. (u8 attribute)
22 + * @NL80211_ATTR_WIPHY_EDMG_BW_CONFIG: Channel BW Configuration subfield encodes
23 + * the allowed channel bandwidth configurations. (u8 attribute)
24 + * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251, Table 13.
25 + *
26 + * @NL80211_ATTR_WIPHY_ANTENNA_GAIN: Configured antenna gain. Used to reduce
27 + * transmit power to stay within regulatory limits. u32, dBi.
28 + *
29 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
30 * @NL80211_ATTR_MAX: highest attribute number currently defined
31 * @__NL80211_ATTR_AFTER_LAST: internal use
32 @@ -2820,6 +2835,11 @@ enum nl80211_attrs {
33
34 NL80211_ATTR_HE_OBSS_PD,
35
36 + NL80211_ATTR_WIPHY_EDMG_CHANNELS,
37 + NL80211_ATTR_WIPHY_EDMG_BW_CONFIG,
38 +
39 + NL80211_ATTR_WIPHY_ANTENNA_GAIN,
40 +
41 /* add attributes here, update the policy in nl80211.c */
42
43 __NL80211_ATTR_AFTER_LAST,
44 @@ -3201,6 +3221,8 @@ enum nl80211_sta_bss_param {
45 * sent to the station (u64, usec)
46 * @NL80211_STA_INFO_AIRTIME_WEIGHT: current airtime weight for station (u16)
47 * @NL80211_STA_INFO_AIRTIME_LINK_METRIC: airtime link metric for mesh station
48 + * @NL80211_STA_INFO_ASSOC_AT_BOOTTIME: Timestamp (CLOCK_BOOTTIME, nanoseconds)
49 + * of STA's association
50 * @__NL80211_STA_INFO_AFTER_LAST: internal
51 * @NL80211_STA_INFO_MAX: highest possible station info attribute
52 */
53 @@ -3247,6 +3269,7 @@ enum nl80211_sta_info {
54 NL80211_STA_INFO_TX_DURATION,
55 NL80211_STA_INFO_AIRTIME_WEIGHT,
56 NL80211_STA_INFO_AIRTIME_LINK_METRIC,
57 + NL80211_STA_INFO_ASSOC_AT_BOOTTIME,
58
59 /* keep last */
60 __NL80211_STA_INFO_AFTER_LAST,
61 @@ -3428,6 +3451,12 @@ enum nl80211_band_iftype_attr {
62 * @NL80211_BAND_ATTR_VHT_CAPA: VHT capabilities, as in the HT information IE
63 * @NL80211_BAND_ATTR_IFTYPE_DATA: nested array attribute, with each entry using
64 * attributes from &enum nl80211_band_iftype_attr
65 + * @NL80211_BAND_ATTR_EDMG_CHANNELS: bitmap that indicates the 2.16 GHz
66 + * channel(s) that are allowed to be used for EDMG transmissions.
67 + * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251.
68 + * @NL80211_BAND_ATTR_EDMG_BW_CONFIG: Channel BW Configuration subfield encodes
69 + * the allowed channel bandwidth configurations.
70 + * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251, Table 13.
71 * @NL80211_BAND_ATTR_MAX: highest band attribute currently defined
72 * @__NL80211_BAND_ATTR_AFTER_LAST: internal use
73 */
74 @@ -3445,6 +3474,9 @@ enum nl80211_band_attr {
75 NL80211_BAND_ATTR_VHT_CAPA,
76 NL80211_BAND_ATTR_IFTYPE_DATA,
77
78 + NL80211_BAND_ATTR_EDMG_CHANNELS,
79 + NL80211_BAND_ATTR_EDMG_BW_CONFIG,
80 +
81 /* keep last */
82 __NL80211_BAND_ATTR_AFTER_LAST,
83 NL80211_BAND_ATTR_MAX = __NL80211_BAND_ATTR_AFTER_LAST - 1
84 @@ -3843,6 +3875,8 @@ enum nl80211_user_reg_hint_type {
85 * @NL80211_SURVEY_INFO_TIME_SCAN: time the radio spent for scan
86 * (on this channel or globally)
87 * @NL80211_SURVEY_INFO_PAD: attribute used for padding for 64-bit alignment
88 + * @NL80211_SURVEY_INFO_TIME_BSS_RX: amount of time the radio spent
89 + * receiving frames destined to the local BSS
90 * @NL80211_SURVEY_INFO_MAX: highest survey info attribute number
91 * currently defined
92 * @__NL80211_SURVEY_INFO_AFTER_LAST: internal use
93 @@ -3859,6 +3893,7 @@ enum nl80211_survey_info {
94 NL80211_SURVEY_INFO_TIME_TX,
95 NL80211_SURVEY_INFO_TIME_SCAN,
96 NL80211_SURVEY_INFO_PAD,
97 + NL80211_SURVEY_INFO_TIME_BSS_RX,
98
99 /* keep last */
100 __NL80211_SURVEY_INFO_AFTER_LAST,
101 @@ -4543,6 +4578,7 @@ enum nl80211_txrate_gi {
102 * @NL80211_BAND_2GHZ: 2.4 GHz ISM band
103 * @NL80211_BAND_5GHZ: around 5 GHz band (4.9 - 5.7 GHz)
104 * @NL80211_BAND_60GHZ: around 60 GHz band (58.32 - 69.12 GHz)
105 + * @NL80211_BAND_6GHZ: around 6 GHz band (5.9 - 7.2 GHz)
106 * @NUM_NL80211_BANDS: number of bands, avoid using this in userspace
107 * since newer kernel versions may support more bands
108 */
109 @@ -4550,6 +4586,7 @@ enum nl80211_band {
110 NL80211_BAND_2GHZ,
111 NL80211_BAND_5GHZ,
112 NL80211_BAND_60GHZ,
113 + NL80211_BAND_6GHZ,
114
115 NUM_NL80211_BANDS,
116 };