xref: /linux/Documentation/netlink/specs/nl80211.yaml (revision 7a012a692e7cfbca245d195a80f23634d3d74fcc)
1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
3name: nl80211
4protocol: genetlink-legacy
5
6doc:
7  Netlink API for 802.11 wireless devices
8
9definitions:
10  -
11    name: commands
12    type: enum
13    entries:
14      - unspec
15      - get-wiphy
16      - set-wiphy
17      - new-wiphy
18      - del-wiphy
19      - get-interface
20      - set-interface
21      - new-interface
22      - del-interface
23      - get-key
24      - set-key
25      - new-key
26      - del-key
27      - get-beacon
28      - set-beacon
29      - new-beacon
30      - del-beacon
31      - get-station
32      - set-station
33      - new-station
34      - del-station
35      - get-mpath
36      - set-mpath
37      - new-mpath
38      - del-mpath
39      - set-bss
40      - set-reg
41      - req-set-reg
42      - get-mesh-config
43      - set-mesh-config
44      - set-mgmt-extra-ie
45      - get-reg
46      - get-scan
47      - trigger-scan
48      - new-scan-results
49      - scan-aborted
50      - reg-change
51      - authenticate
52      - associate
53      - deauthenticate
54      - disassociate
55      - michael-mic-failure
56      - reg-beacon-hint
57      - join-ibss
58      - leave-ibss
59      - testmode
60      - connect
61      - roam
62      - disconnect
63      - set-wiphy-netns
64      - get-survey
65      - new-survey-results
66      - set-pmksa
67      - del-pmksa
68      - flush-pmksa
69      - remain-on-channel
70      - cancel-remain-on-channel
71      - set-tx-bitrate-mask
72      - register-action
73      - action
74      - action-tx-status
75      - set-power-save
76      - get-power-save
77      - set-cqm
78      - notify-cqm
79      - set-channel
80      - set-wds-peer
81      - frame-wait-cancel
82      - join-mesh
83      - leave-mesh
84      - unprot-deauthenticate
85      - unprot-disassociate
86      - new-peer-candidate
87      - get-wowlan
88      - set-wowlan
89      - start-sched-scan
90      - stop-sched-scan
91      - sched-scan-results
92      - sched-scan-stopped
93      - set-rekey-offload
94      - pmksa-candidate
95      - tdls-oper
96      - tdls-mgmt
97      - unexpected-frame
98      - probe-client
99      - register-beacons
100      - unexpected-4-addr-frame
101      - set-noack-map
102      - ch-switch-notify
103      - start-p2p-device
104      - stop-p2p-device
105      - conn-failed
106      - set-mcast-rate
107      - set-mac-acl
108      - radar-detect
109      - get-protocol-features
110      - update-ft-ies
111      - ft-event
112      - crit-protocol-start
113      - crit-protocol-stop
114      - get-coalesce
115      - set-coalesce
116      - channel-switch
117      - vendor
118      - set-qos-map
119      - add-tx-ts
120      - del-tx-ts
121      - get-mpp
122      - join-ocb
123      - leave-ocb
124      - ch-switch-started-notify
125      - tdls-channel-switch
126      - tdls-cancel-channel-switch
127      - wiphy-reg-change
128      - abort-scan
129      - start-nan
130      - stop-nan
131      - add-nan-function
132      - del-nan-function
133      - change-nan-config
134      - nan-match
135      - set-multicast-to-unicast
136      - update-connect-params
137      - set-pmk
138      - del-pmk
139      - port-authorized
140      - reload-regdb
141      - external-auth
142      - sta-opmode-changed
143      - control-port-frame
144      - get-ftm-responder-stats
145      - peer-measurement-start
146      - peer-measurement-result
147      - peer-measurement-complete
148      - notify-radar
149      - update-owe-info
150      - probe-mesh-link
151      - set-tid-config
152      - unprot-beacon
153      - control-port-frame-tx-status
154      - set-sar-specs
155      - obss-color-collision
156      - color-change-request
157      - color-change-started
158      - color-change-aborted
159      - color-change-completed
160      - set-fils-aad
161      - assoc-comeback
162      - add-link
163      - remove-link
164      - add-link-sta
165      - modify-link-sta
166      - remove-link-sta
167      - set-hw-timestamp
168      - links-removed
169      - set-tid-to-link-mapping
170  -
171    name: feature-flags
172    type: flags
173    entries:
174      - sk-tx-status
175      - ht-ibss
176      - inactivity-timer
177      - cell-base-reg-hints
178      - p2p-device-needs-channel
179      - sae
180      - low-priority-scan
181      - scan-flush
182      - ap-scan
183      - vif-txpower
184      - need-obss-scan
185      - p2p-go-ctwin
186      - p2p-go-oppps
187      - reserved
188      - advertise-chan-limits
189      - full-ap-client-state
190      - userspace-mpm
191      - active-monitor
192      - ap-mode-chan-width-change
193      - ds-param-set-ie-in-probes
194      - wfa-tpc-ie-in-probes
195      - quiet
196      - tx-power-insertion
197      - ackto-estimation
198      - static-smps
199      - dynamic-smps
200      - supports-wmm-admission
201      - mac-on-create
202      - tdls-channel-switch
203      - scan-random-mac-addr
204      - sched-scan-random-mac-addr
205      - no-random-mac-addr
206  -
207    name: ieee80211-mcs-info
208    type: struct
209    members:
210      -
211        name: rx-mask
212        type: binary
213        len: 10
214      -
215        name: rx-highest
216        type: u16
217        byte-order: little-endian
218      -
219        name: tx-params
220        type: u8
221      -
222        name: reserved
223        type: binary
224        len: 3
225  -
226    name: ieee80211-vht-mcs-info
227    type: struct
228    members:
229      -
230        name: rx-mcs-map
231        type: u16
232        byte-order: little-endian
233      -
234        name: rx-highest
235        type: u16
236        byte-order: little-endian
237      -
238        name: tx-mcs-map
239        type: u16
240        byte-order: little-endian
241      -
242        name: tx-highest
243        type: u16
244        byte-order: little-endian
245  -
246    name: ieee80211-ht-cap
247    type: struct
248    members:
249      -
250        name: cap-info
251        type: u16
252        byte-order: little-endian
253      -
254        name: ampdu-params-info
255        type: u8
256      -
257        name: mcs
258        type: binary
259        struct: ieee80211-mcs-info
260      -
261        name: extended-ht-cap-info
262        type: u16
263        byte-order: little-endian
264      -
265        name: tx-bf-cap-info
266        type: u32
267        byte-order: little-endian
268      -
269        name: antenna-selection-info
270        type: u8
271  -
272    name: channel-type
273    type: enum
274    entries:
275      - no-ht
276      - ht20
277      - ht40minus
278      - ht40plus
279  -
280    name: sta-flag-update
281    type: struct
282    members:
283      -
284        name: mask
285        type: u32
286      -
287        name: set
288        type: u32
289  -
290    name: protocol-features
291    type: flags
292    entries:
293      - split-wiphy-dump
294
295attribute-sets:
296  -
297    name: nl80211-attrs
298    name-prefix: nl80211-attr-
299    enum-name: nl80211-attrs
300    attr-max-name: num-nl80211-attr
301    attributes:
302      -
303        name: wiphy
304        type: u32
305      -
306        name: wiphy-name
307        type: string
308      -
309        name: ifindex
310        type: u32
311      -
312        name: ifname
313        type: string
314      -
315        name: iftype
316        type: u32
317      -
318        name: mac
319        type: binary
320        display-hint: mac
321      -
322        name: key-data
323        type: binary
324      -
325        name: key-idx
326        type: u8
327      -
328        name: key-cipher
329        type: u32
330      -
331        name: key-seq
332        type: binary
333      -
334        name: key-default
335        type: flag
336      -
337        name: beacon-interval
338        type: u32
339      -
340        name: dtim-period
341        type: u32
342      -
343        name: beacon-head
344        type: binary
345      -
346        name: beacon-tail
347        type: binary
348      -
349        name: sta-aid
350        type: u16
351      -
352        name: sta-flags
353        type: binary # TODO: nest
354      -
355        name: sta-listen-interval
356        type: u16
357      -
358        name: sta-supported-rates
359        type: binary
360      -
361        name: sta-vlan
362        type: u32
363      -
364        name: sta-info
365        type: binary # TODO: nest
366      -
367        name: wiphy-bands
368        type: nest
369        nested-attributes: wiphy-bands
370      -
371        name: mntr-flags
372        type: binary # TODO: nest
373      -
374        name: mesh-id
375        type: binary
376      -
377        name: sta-plink-action
378        type: u8
379      -
380        name: mpath-next-hop
381        type: binary
382        display-hint: mac
383      -
384        name: mpath-info
385        type: binary # TODO: nest
386      -
387        name: bss-cts-prot
388        type: u8
389      -
390        name: bss-short-preamble
391        type: u8
392      -
393        name: bss-short-slot-time
394        type: u8
395      -
396        name: ht-capability
397        type: binary
398      -
399        name: supported-iftypes
400        type: nest
401        nested-attributes: supported-iftypes
402      -
403        name: reg-alpha2
404        type: binary
405      -
406        name: reg-rules
407        type: binary # TODO: nest
408      -
409        name: mesh-config
410        type: binary # TODO: nest
411      -
412        name: bss-basic-rates
413        type: binary
414      -
415        name: wiphy-txq-params
416        type: binary # TODO: nest
417      -
418        name: wiphy-freq
419        type: u32
420      -
421        name: wiphy-channel-type
422        type: u32
423        enum: channel-type
424      -
425        name: key-default-mgmt
426        type: flag
427      -
428        name: mgmt-subtype
429        type: u8
430      -
431        name: ie
432        type: binary
433      -
434        name: max-num-scan-ssids
435        type: u8
436      -
437        name: scan-frequencies
438        type: binary # TODO: nest
439      -
440        name: scan-ssids
441        type: binary # TODO: nest
442      -
443        name: generation
444        type: u32
445      -
446        name: bss
447        type: binary # TODO: nest
448      -
449        name: reg-initiator
450        type: u8
451      -
452        name: reg-type
453        type: u8
454      -
455        name: supported-commands
456        type: indexed-array
457        sub-type: u32
458        enum: commands
459      -
460        name: frame
461        type: binary
462      -
463        name: ssid
464        type: binary
465      -
466        name: auth-type
467        type: u32
468      -
469        name: reason-code
470        type: u16
471      -
472        name: key-type
473        type: u32
474      -
475        name: max-scan-ie-len
476        type: u16
477      -
478        name: cipher-suites
479        type: binary
480        sub-type: u32
481        display-hint: hex
482      -
483        name: freq-before
484        type: binary # TODO: nest
485      -
486        name: freq-after
487        type: binary # TODO: nest
488      -
489        name: freq-fixed
490        type: flag
491      -
492        name: wiphy-retry-short
493        type: u8
494      -
495        name: wiphy-retry-long
496        type: u8
497      -
498        name: wiphy-frag-threshold
499        type: u32
500      -
501        name: wiphy-rts-threshold
502        type: u32
503      -
504        name: timed-out
505        type: flag
506      -
507        name: use-mfp
508        type: u32
509      -
510        name: sta-flags2
511        type: binary
512        struct: sta-flag-update
513      -
514        name: control-port
515        type: flag
516      -
517        name: testdata
518        type: binary
519      -
520        name: privacy
521        type: flag
522      -
523        name: disconnected-by-ap
524        type: flag
525      -
526        name: status-code
527        type: u16
528      -
529        name: cipher-suites-pairwise
530        type: binary
531      -
532        name: cipher-suite-group
533        type: u32
534      -
535        name: wpa-versions
536        type: u32
537      -
538        name: akm-suites
539        type: binary
540      -
541        name: req-ie
542        type: binary
543      -
544        name: resp-ie
545        type: binary
546      -
547        name: prev-bssid
548        type: binary
549      -
550        name: key
551        type: binary # TODO: nest
552      -
553        name: keys
554        type: binary # TODO: nest
555      -
556        name: pid
557        type: u32
558      -
559        name: 4addr
560        type: u8
561      -
562        name: survey-info
563        type: binary # TODO: nest
564      -
565        name: pmkid
566        type: binary
567      -
568        name: max-num-pmkids
569        type: u8
570      -
571        name: duration
572        type: u32
573      -
574        name: cookie
575        type: u64
576      -
577        name: wiphy-coverage-class
578        type: u8
579      -
580        name: tx-rates
581        type: binary # TODO: nest
582      -
583        name: frame-match
584        type: binary
585      -
586        name: ack
587        type: flag
588      -
589        name: ps-state
590        type: u32
591      -
592        name: cqm
593        type: binary # TODO: nest
594      -
595        name: local-state-change
596        type: flag
597      -
598        name: ap-isolate
599        type: u8
600      -
601        name: wiphy-tx-power-setting
602        type: u32
603      -
604        name: wiphy-tx-power-level
605        type: u32
606      -
607        name: tx-frame-types
608        type: nest
609        nested-attributes: iftype-attrs
610      -
611        name: rx-frame-types
612        type: nest
613        nested-attributes: iftype-attrs
614      -
615        name: frame-type
616        type: u16
617      -
618        name: control-port-ethertype
619        type: flag
620      -
621        name: control-port-no-encrypt
622        type: flag
623      -
624        name: support-ibss-rsn
625        type: flag
626      -
627        name: wiphy-antenna-tx
628        type: u32
629      -
630        name: wiphy-antenna-rx
631        type: u32
632      -
633        name: mcast-rate
634        type: u32
635      -
636        name: offchannel-tx-ok
637        type: flag
638      -
639        name: bss-ht-opmode
640        type: u16
641      -
642        name: key-default-types
643        type: binary # TODO: nest
644      -
645        name: max-remain-on-channel-duration
646        type: u32
647      -
648        name: mesh-setup
649        type: binary # TODO: nest
650      -
651        name: wiphy-antenna-avail-tx
652        type: u32
653      -
654        name: wiphy-antenna-avail-rx
655        type: u32
656      -
657        name: support-mesh-auth
658        type: flag
659      -
660        name: sta-plink-state
661        type: u8
662      -
663        name: wowlan-triggers
664        type: binary # TODO: nest
665      -
666        name: wowlan-triggers-supported
667        type: nest
668        nested-attributes: wowlan-triggers-attrs
669      -
670        name: sched-scan-interval
671        type: u32
672      -
673        name: interface-combinations
674        type: indexed-array
675        sub-type: nest
676        nested-attributes: if-combination-attributes
677      -
678        name: software-iftypes
679        type: nest
680        nested-attributes: supported-iftypes
681      -
682        name: rekey-data
683        type: binary # TODO: nest
684      -
685        name: max-num-sched-scan-ssids
686        type: u8
687      -
688        name: max-sched-scan-ie-len
689        type: u16
690      -
691        name: scan-supp-rates
692        type: binary # TODO: nest
693      -
694        name: hidden-ssid
695        type: u32
696      -
697        name: ie-probe-resp
698        type: binary
699      -
700        name: ie-assoc-resp
701        type: binary
702      -
703        name: sta-wme
704        type: binary # TODO: nest
705      -
706        name: support-ap-uapsd
707        type: flag
708      -
709        name: roam-support
710        type: flag
711      -
712        name: sched-scan-match
713        type: binary # TODO: nest
714      -
715        name: max-match-sets
716        type: u8
717      -
718        name: pmksa-candidate
719        type: binary # TODO: nest
720      -
721        name: tx-no-cck-rate
722        type: flag
723      -
724        name: tdls-action
725        type: u8
726      -
727        name: tdls-dialog-token
728        type: u8
729      -
730        name: tdls-operation
731        type: u8
732      -
733        name: tdls-support
734        type: flag
735      -
736        name: tdls-external-setup
737        type: flag
738      -
739        name: device-ap-sme
740        type: u32
741      -
742        name: dont-wait-for-ack
743        type: flag
744      -
745        name: feature-flags
746        type: u32
747        enum: feature-flags
748        enum-as-flags: True
749      -
750        name: probe-resp-offload
751        type: u32
752      -
753        name: probe-resp
754        type: binary
755      -
756        name: dfs-region
757        type: u8
758      -
759        name: disable-ht
760        type: flag
761      -
762        name: ht-capability-mask
763        type: binary
764        struct: ieee80211-ht-cap
765      -
766        name: noack-map
767        type: u16
768      -
769        name: inactivity-timeout
770        type: u16
771      -
772        name: rx-signal-dbm
773        type: u32
774      -
775        name: bg-scan-period
776        type: u16
777      -
778        name: wdev
779        type: u64
780      -
781        name: user-reg-hint-type
782        type: u32
783      -
784        name: conn-failed-reason
785        type: u32
786      -
787        name: auth-data
788        type: binary
789      -
790        name: vht-capability
791        type: binary
792      -
793        name: scan-flags
794        type: u32
795      -
796        name: channel-width
797        type: u32
798      -
799        name: center-freq1
800        type: u32
801      -
802        name: center-freq2
803        type: u32
804      -
805        name: p2p-ctwindow
806        type: u8
807      -
808        name: p2p-oppps
809        type: u8
810      -
811        name: local-mesh-power-mode
812        type: u32
813      -
814        name: acl-policy
815        type: u32
816      -
817        name: mac-addrs
818        type: binary # TODO: nest
819      -
820        name: mac-acl-max
821        type: u32
822      -
823        name: radar-event
824        type: u32
825      -
826        name: ext-capa
827        type: binary
828      -
829        name: ext-capa-mask
830        type: binary
831      -
832        name: sta-capability
833        type: u16
834      -
835        name: sta-ext-capability
836        type: binary
837      -
838        name: protocol-features
839        type: u32
840        enum: protocol-features
841      -
842        name: split-wiphy-dump
843        type: flag
844      -
845        name: disable-vht
846        type: flag
847      -
848        name: vht-capability-mask
849        type: binary
850      -
851        name: mdid
852        type: u16
853      -
854        name: ie-ric
855        type: binary
856      -
857        name: crit-prot-id
858        type: u16
859      -
860        name: max-crit-prot-duration
861        type: u16
862      -
863        name: peer-aid
864        type: u16
865      -
866        name: coalesce-rule
867        type: binary # TODO: nest
868      -
869        name: ch-switch-count
870        type: u32
871      -
872        name: ch-switch-block-tx
873        type: flag
874      -
875        name: csa-ies
876        type: binary # TODO: nest
877      -
878        name: cntdwn-offs-beacon
879        type: binary
880      -
881        name: cntdwn-offs-presp
882        type: binary
883      -
884        name: rxmgmt-flags
885        type: binary
886      -
887        name: sta-supported-channels
888        type: binary
889      -
890        name: sta-supported-oper-classes
891        type: binary
892      -
893        name: handle-dfs
894        type: flag
895      -
896        name: support-5-mhz
897        type: flag
898      -
899        name: support-10-mhz
900        type: flag
901      -
902        name: opmode-notif
903        type: u8
904      -
905        name: vendor-id
906        type: u32
907      -
908        name: vendor-subcmd
909        type: u32
910      -
911        name: vendor-data
912        type: binary
913      -
914        name: vendor-events
915        type: binary
916      -
917        name: qos-map
918        type: binary
919      -
920        name: mac-hint
921        type: binary
922        display-hint: mac
923      -
924        name: wiphy-freq-hint
925        type: u32
926      -
927        name: max-ap-assoc-sta
928        type: u32
929      -
930        name: tdls-peer-capability
931        type: u32
932      -
933        name: socket-owner
934        type: flag
935      -
936        name: csa-c-offsets-tx
937        type: binary
938      -
939        name: max-csa-counters
940        type: u8
941      -
942        name: tdls-initiator
943        type: flag
944      -
945        name: use-rrm
946        type: flag
947      -
948        name: wiphy-dyn-ack
949        type: flag
950      -
951        name: tsid
952        type: u8
953      -
954        name: user-prio
955        type: u8
956      -
957        name: admitted-time
958        type: u16
959      -
960        name: smps-mode
961        type: u8
962      -
963        name: oper-class
964        type: u8
965      -
966        name: mac-mask
967        type: binary
968        display-hint: mac
969      -
970        name: wiphy-self-managed-reg
971        type: flag
972      -
973        name: ext-features
974        type: binary
975      -
976        name: survey-radio-stats
977        type: binary
978      -
979        name: netns-fd
980        type: u32
981      -
982        name: sched-scan-delay
983        type: u32
984      -
985        name: reg-indoor
986        type: flag
987      -
988        name: max-num-sched-scan-plans
989        type: u32
990      -
991        name: max-scan-plan-interval
992        type: u32
993      -
994        name: max-scan-plan-iterations
995        type: u32
996      -
997        name: sched-scan-plans
998        type: binary # TODO: nest
999      -
1000        name: pbss
1001        type: flag
1002      -
1003        name: bss-select
1004        type: binary # TODO: nest
1005      -
1006        name: sta-support-p2p-ps
1007        type: u8
1008      -
1009        name: pad
1010        type: binary
1011      -
1012        name: iftype-ext-capa
1013        type: binary # TODO: nest
1014      -
1015        name: mu-mimo-group-data
1016        type: binary
1017      -
1018        name: mu-mimo-follow-mac-addr
1019        type: binary
1020        display-hint: mac
1021      -
1022        name: scan-start-time-tsf
1023        type: u64
1024      -
1025        name: scan-start-time-tsf-bssid
1026        type: binary
1027      -
1028        name: measurement-duration
1029        type: u16
1030      -
1031        name: measurement-duration-mandatory
1032        type: flag
1033      -
1034        name: mesh-peer-aid
1035        type: u16
1036      -
1037        name: nan-master-pref
1038        type: u8
1039      -
1040        name: bands
1041        type: u32
1042      -
1043        name: nan-func
1044        type: binary # TODO: nest
1045      -
1046        name: nan-match
1047        type: binary # TODO: nest
1048      -
1049        name: fils-kek
1050        type: binary
1051      -
1052        name: fils-nonces
1053        type: binary
1054      -
1055        name: multicast-to-unicast-enabled
1056        type: flag
1057      -
1058        name: bssid
1059        type: binary
1060        display-hint: mac
1061      -
1062        name: sched-scan-relative-rssi
1063        type: s8
1064      -
1065        name: sched-scan-rssi-adjust
1066        type: binary
1067      -
1068        name: timeout-reason
1069        type: u32
1070      -
1071        name: fils-erp-username
1072        type: binary
1073      -
1074        name: fils-erp-realm
1075        type: binary
1076      -
1077        name: fils-erp-next-seq-num
1078        type: u16
1079      -
1080        name: fils-erp-rrk
1081        type: binary
1082      -
1083        name: fils-cache-id
1084        type: binary
1085      -
1086        name: pmk
1087        type: binary
1088      -
1089        name: sched-scan-multi
1090        type: flag
1091      -
1092        name: sched-scan-max-reqs
1093        type: u32
1094      -
1095        name: want-1x-4way-hs
1096        type: flag
1097      -
1098        name: pmkr0-name
1099        type: binary
1100      -
1101        name: port-authorized
1102        type: binary
1103      -
1104        name: external-auth-action
1105        type: u32
1106      -
1107        name: external-auth-support
1108        type: flag
1109      -
1110        name: nss
1111        type: u8
1112      -
1113        name: ack-signal
1114        type: s32
1115      -
1116        name: control-port-over-nl80211
1117        type: flag
1118      -
1119        name: txq-stats
1120        type: nest
1121        nested-attributes: txq-stats-attrs
1122      -
1123        name: txq-limit
1124        type: u32
1125      -
1126        name: txq-memory-limit
1127        type: u32
1128      -
1129        name: txq-quantum
1130        type: u32
1131      -
1132        name: he-capability
1133        type: binary
1134      -
1135        name: ftm-responder
1136        type: binary # TODO: nest
1137      -
1138        name: ftm-responder-stats
1139        type: binary # TODO: nest
1140      -
1141        name: timeout
1142        type: u32
1143      -
1144        name: peer-measurements
1145        type: binary # TODO: nest
1146      -
1147        name: airtime-weight
1148        type: u16
1149      -
1150        name: sta-tx-power-setting
1151        type: u8
1152      -
1153        name: sta-tx-power
1154        type: s16
1155      -
1156        name: sae-password
1157        type: binary
1158      -
1159        name: twt-responder
1160        type: flag
1161      -
1162        name: he-obss-pd
1163        type: binary # TODO: nest
1164      -
1165        name: wiphy-edmg-channels
1166        type: u8
1167      -
1168        name: wiphy-edmg-bw-config
1169        type: u8
1170      -
1171        name: vlan-id
1172        type: u16
1173      -
1174        name: he-bss-color
1175        type: binary # TODO: nest
1176      -
1177        name: iftype-akm-suites
1178        type: binary # TODO: nest
1179      -
1180        name: tid-config
1181        type: binary # TODO: nest
1182      -
1183        name: control-port-no-preauth
1184        type: flag
1185      -
1186        name: pmk-lifetime
1187        type: u32
1188      -
1189        name: pmk-reauth-threshold
1190        type: u8
1191      -
1192        name: receive-multicast
1193        type: flag
1194      -
1195        name: wiphy-freq-offset
1196        type: u32
1197      -
1198        name: center-freq1-offset
1199        type: u32
1200      -
1201        name: scan-freq-khz
1202        type: binary # TODO: nest
1203      -
1204        name: he-6ghz-capability
1205        type: binary
1206      -
1207        name: fils-discovery
1208        type: binary # TOOD: nest
1209      -
1210        name: unsol-bcast-probe-resp
1211        type: binary # TOOD: nest
1212      -
1213        name: s1g-capability
1214        type: binary
1215      -
1216        name: s1g-capability-mask
1217        type: binary
1218      -
1219        name: sae-pwe
1220        type: u8
1221      -
1222        name: reconnect-requested
1223        type: binary
1224      -
1225        name: sar-spec
1226        type: nest
1227        nested-attributes: sar-attributes
1228      -
1229        name: disable-he
1230        type: flag
1231      -
1232        name: obss-color-bitmap
1233        type: u64
1234      -
1235        name: color-change-count
1236        type: u8
1237      -
1238        name: color-change-color
1239        type: u8
1240      -
1241        name: color-change-elems
1242        type: binary # TODO: nest
1243      -
1244        name: mbssid-config
1245        type: binary # TODO: nest
1246      -
1247        name: mbssid-elems
1248        type: binary # TODO: nest
1249      -
1250        name: radar-background
1251        type: flag
1252      -
1253        name: ap-settings-flags
1254        type: u32
1255      -
1256        name: eht-capability
1257        type: binary
1258      -
1259        name: disable-eht
1260        type: flag
1261      -
1262        name: mlo-links
1263        type: binary # TODO: nest
1264      -
1265        name: mlo-link-id
1266        type: u8
1267      -
1268        name: mld-addr
1269        type: binary
1270        display-hint: mac
1271      -
1272        name: mlo-support
1273        type: flag
1274      -
1275        name: max-num-akm-suites
1276        type: binary
1277      -
1278        name: eml-capability
1279        type: u16
1280      -
1281        name: mld-capa-and-ops
1282        type: u16
1283      -
1284        name: tx-hw-timestamp
1285        type: u64
1286      -
1287        name: rx-hw-timestamp
1288        type: u64
1289      -
1290        name: td-bitmap
1291        type: binary
1292      -
1293        name: punct-bitmap
1294        type: u32
1295      -
1296        name: max-hw-timestamp-peers
1297        type: u16
1298      -
1299        name: hw-timestamp-enabled
1300        type: flag
1301      -
1302        name: ema-rnr-elems
1303        type: binary # TODO: nest
1304      -
1305        name: mlo-link-disabled
1306        type: flag
1307      -
1308        name: bss-dump-include-use-data
1309        type: flag
1310      -
1311        name: mlo-ttlm-dlink
1312        type: u16
1313      -
1314        name: mlo-ttlm-ulink
1315        type: u16
1316      -
1317        name: assoc-spp-amsdu
1318        type: flag
1319      -
1320        name: wiphy-radios
1321        type: binary # TODO: nest
1322      -
1323        name: wiphy-interface-combinations
1324        type: binary # TODO: nest
1325      -
1326        name: vif-radio-mask
1327        type: u32
1328  -
1329    name: frame-type-attrs
1330    subset-of: nl80211-attrs
1331    attributes:
1332      -
1333        name: frame-type
1334  -
1335    name: wiphy-bands
1336    name-prefix: nl80211-band-
1337    attr-max-name: num-nl80211-bands
1338    attributes:
1339      -
1340        name: 2ghz
1341        doc: 2.4 GHz ISM band
1342        value: 0
1343        type: nest
1344        nested-attributes: band-attrs
1345      -
1346        name: 5ghz
1347        doc: around 5 GHz band (4.9 - 5.7 GHz)
1348        type: nest
1349        nested-attributes: band-attrs
1350      -
1351        name: 60ghz
1352        doc: around 60 GHz band (58.32 - 69.12 GHz)
1353        type: nest
1354        nested-attributes: band-attrs
1355      -
1356        name: 6ghz
1357        type: nest
1358        nested-attributes: band-attrs
1359      -
1360        name: s1ghz
1361        type: nest
1362        nested-attributes: band-attrs
1363      -
1364        name: lc
1365        type: nest
1366        nested-attributes: band-attrs
1367  -
1368    name: band-attrs
1369    enum-name: nl80211-band-attr
1370    name-prefix: nl80211-band-attr-
1371    attributes:
1372      -
1373        name: freqs
1374        type: indexed-array
1375        sub-type: nest
1376        nested-attributes: frequency-attrs
1377      -
1378        name: rates
1379        type: indexed-array
1380        sub-type: nest
1381        nested-attributes: bitrate-attrs
1382      -
1383        name: ht-mcs-set
1384        type: binary
1385        struct: ieee80211-mcs-info
1386      -
1387        name: ht-capa
1388        type: u16
1389      -
1390        name: ht-ampdu-factor
1391        type: u8
1392      -
1393        name: ht-ampdu-density
1394        type: u8
1395      -
1396        name: vht-mcs-set
1397        type: binary
1398        struct: ieee80211-vht-mcs-info
1399      -
1400        name: vht-capa
1401        type: u32
1402      -
1403        name: iftype-data
1404        type: indexed-array
1405        sub-type: nest
1406        nested-attributes: iftype-data-attrs
1407      -
1408        name: edmg-channels
1409        type: binary
1410      -
1411        name: edmg-bw-config
1412        type: binary
1413      -
1414        name: s1g-mcs-nss-set
1415        type: binary
1416      -
1417        name: s1g-capa
1418        type: binary
1419  -
1420    name: bitrate-attrs
1421    name-prefix: nl80211-bitrate-attr-
1422    attributes:
1423      -
1424        name: rate
1425        type: u32
1426      -
1427        name: 2ghz-shortpreamble
1428        type: flag
1429  -
1430    name: frequency-attrs
1431    name-prefix: nl80211-frequency-attr-
1432    attributes:
1433      -
1434        name: freq
1435        type: u32
1436      -
1437        name: disabled
1438        type: flag
1439      -
1440        name: no-ir
1441        type: flag
1442      -
1443        name: no-ibss
1444        name-prefix: __nl80211-frequency-attr-
1445        type: flag
1446      -
1447        name: radar
1448        type: flag
1449      -
1450        name: max-tx-power
1451        type: u32
1452      -
1453        name: dfs-state
1454        type: u32
1455      -
1456        name: dfs-time
1457        type: binary
1458      -
1459        name: no-ht40-minus
1460        type: binary
1461      -
1462        name: no-ht40-plus
1463        type: binary
1464      -
1465        name: no-80mhz
1466        type: binary
1467      -
1468        name: no-160mhz
1469        type: binary
1470      -
1471        name: dfs-cac-time
1472        type: binary
1473      -
1474        name: indoor-only
1475        type: binary
1476      -
1477        name: ir-concurrent
1478        type: binary
1479      -
1480        name: no-20mhz
1481        type: binary
1482      -
1483        name: no-10mhz
1484        type: binary
1485      -
1486        name: wmm
1487        type: indexed-array
1488        sub-type: nest
1489        nested-attributes: wmm-attrs
1490      -
1491        name: no-he
1492        type: binary
1493      -
1494        name: offset
1495        type: u32
1496      -
1497        name: 1mhz
1498        type: binary
1499      -
1500        name: 2mhz
1501        type: binary
1502      -
1503        name: 4mhz
1504        type: binary
1505      -
1506        name: 8mhz
1507        type: binary
1508      -
1509        name: 16mhz
1510        type: binary
1511      -
1512        name: no-320mhz
1513        type: binary
1514      -
1515        name: no-eht
1516        type: binary
1517      -
1518        name: psd
1519        type: binary
1520      -
1521        name: dfs-concurrent
1522        type: binary
1523      -
1524        name: no-6ghz-vlp-client
1525        type: binary
1526      -
1527        name: no-6ghz-afc-client
1528        type: binary
1529      -
1530        name: can-monitor
1531        type: binary
1532      -
1533        name: allow-6ghz-vlp-ap
1534        type: binary
1535  -
1536    name: if-combination-attributes
1537    enum-name: nl80211-if-combination-attrs
1538    name-prefix: nl80211-iface-comb-
1539    attr-max-name: max-nl80211-iface-comb
1540    attributes:
1541      -
1542        name: limits
1543        type: indexed-array
1544        sub-type: nest
1545        nested-attributes: iface-limit-attributes
1546      -
1547        name: maxnum
1548        type: u32
1549      -
1550        name: sta-ap-bi-match
1551        type: flag
1552      -
1553        name: num-channels
1554        type: u32
1555      -
1556        name: radar-detect-widths
1557        type: u32
1558      -
1559        name: radar-detect-regions
1560        type: u32
1561      -
1562        name: bi-min-gcd
1563        type: u32
1564  -
1565    name: iface-limit-attributes
1566    enum-name: nl80211-iface-limit-attrs
1567    name-prefix: nl80211-iface-limit-
1568    attr-max-name: max-nl80211-iface-limit
1569    attributes:
1570      -
1571        name: max
1572        type: u32
1573      -
1574        name: types
1575        type: nest
1576        nested-attributes: supported-iftypes
1577  -
1578    name: iftype-data-attrs
1579    name-prefix: nl80211-band-iftype-attr-
1580    attributes:
1581      -
1582        name: iftypes
1583        type: binary
1584      -
1585        name: he-cap-mac
1586        type: binary
1587      -
1588        name: he-cap-phy
1589        type: binary
1590      -
1591        name: he-cap-mcs-set
1592        type: binary
1593      -
1594        name: he-cap-ppe
1595        type: binary
1596      -
1597        name: he-6ghz-capa
1598        type: binary
1599      -
1600        name: vendor-elems
1601        type: binary
1602      -
1603        name: eht-cap-mac
1604        type: binary
1605      -
1606        name: eht-cap-phy
1607        type: binary
1608      -
1609        name: eht-cap-mcs-set
1610        type: binary
1611      -
1612        name: eht-cap-ppe
1613        type: binary
1614  -
1615    name: iftype-attrs
1616    enum-name: nl80211-iftype
1617    name-prefix: nl80211-iftype-
1618    attributes:
1619      -
1620        name: unspecified
1621        type: nest
1622        value: 0
1623        nested-attributes: frame-type-attrs
1624      -
1625        name: adhoc
1626        type: nest
1627        nested-attributes: frame-type-attrs
1628      -
1629        name: station
1630        type: nest
1631        nested-attributes: frame-type-attrs
1632      -
1633        name: ap
1634        type: nest
1635        nested-attributes: frame-type-attrs
1636      -
1637        name: ap-vlan
1638        type: nest
1639        nested-attributes: frame-type-attrs
1640      -
1641        name: wds
1642        type: nest
1643        nested-attributes: frame-type-attrs
1644      -
1645        name: monitor
1646        type: nest
1647        nested-attributes: frame-type-attrs
1648      -
1649        name: mesh-point
1650        type: nest
1651        nested-attributes: frame-type-attrs
1652      -
1653        name: p2p-client
1654        type: nest
1655        nested-attributes: frame-type-attrs
1656      -
1657        name: p2p-go
1658        type: nest
1659        nested-attributes: frame-type-attrs
1660      -
1661        name: p2p-device
1662        type: nest
1663        nested-attributes: frame-type-attrs
1664      -
1665        name: ocb
1666        type: nest
1667        nested-attributes: frame-type-attrs
1668      -
1669        name: nan
1670        type: nest
1671        nested-attributes: frame-type-attrs
1672  -
1673    name: sar-attributes
1674    enum-name: nl80211-sar-attrs
1675    name-prefix: nl80211-sar-attr-
1676    attributes:
1677      -
1678        name: type
1679        type: u32
1680      -
1681        name: specs
1682        type: indexed-array
1683        sub-type: nest
1684        nested-attributes: sar-specs
1685  -
1686    name: sar-specs
1687    enum-name: nl80211-sar-specs-attrs
1688    name-prefix: nl80211-sar-attr-specs-
1689    attributes:
1690      -
1691        name: power
1692        type: s32
1693      -
1694        name: range-index
1695        type: u32
1696      -
1697        name: start-freq
1698        type: u32
1699      -
1700        name: end-freq
1701        type: u32
1702  -
1703    name: supported-iftypes
1704    enum-name: nl80211-iftype
1705    name-prefix: nl80211-iftype-
1706    attributes:
1707      -
1708        name: adhoc
1709        type: flag
1710      -
1711        name: station
1712        type: flag
1713      -
1714        name: ap
1715        type: flag
1716      -
1717        name: ap-vlan
1718        type: flag
1719      -
1720        name: wds
1721        type: flag
1722      -
1723        name: monitor
1724        type: flag
1725      -
1726        name: mesh-point
1727        type: flag
1728      -
1729        name: p2p-client
1730        type: flag
1731      -
1732        name: p2p-go
1733        type: flag
1734      -
1735        name: p2p-device
1736        type: flag
1737      -
1738        name: ocb
1739        type: flag
1740      -
1741        name: nan
1742        type: flag
1743  -
1744    name: txq-stats-attrs
1745    name-prefix: nl80211-txq-stats-
1746    attributes:
1747      -
1748        name: backlog-bytes
1749        type: u32
1750      -
1751        name: backlog-packets
1752        type: u32
1753      -
1754        name: flows
1755        type: u32
1756      -
1757        name: drops
1758        type: u32
1759      -
1760        name: ecn-marks
1761        type: u32
1762      -
1763        name: overlimit
1764        type: u32
1765      -
1766        name: overmemory
1767        type: u32
1768      -
1769        name: collisions
1770        type: u32
1771      -
1772        name: tx-bytes
1773        type: u32
1774      -
1775        name: tx-packets
1776        type: u32
1777      -
1778        name: max-flows
1779        type: u32
1780  -
1781    name: wmm-attrs
1782    enum-name: nl80211-wmm-rule
1783    name-prefix: nl80211-wmmr-
1784    attributes:
1785      -
1786        name: cw-min
1787        type: u16
1788      -
1789        name: cw-max
1790        type: u16
1791      -
1792        name: aifsn
1793        type: u8
1794      -
1795        name: txop
1796        type: u16
1797  -
1798    name: wowlan-triggers-attrs
1799    enum-name: nl80211-wowlan-triggers
1800    name-prefix: nl80211-wowlan-trig-
1801    attr-max-name: max-nl80211-wowlan-trig
1802    attributes:
1803      -
1804        name: any
1805        type: flag
1806      -
1807        name: disconnect
1808        type: flag
1809      -
1810        name: magic-pkt
1811        type: flag
1812      -
1813        name: pkt-pattern
1814        type: flag
1815      -
1816        name: gtk-rekey-supported
1817        type: flag
1818      -
1819        name: gtk-rekey-failure
1820        type: flag
1821      -
1822        name: eap-ident-request
1823        type: flag
1824      -
1825        name: 4way-handshake
1826        type: flag
1827      -
1828        name: rfkill-release
1829        type: flag
1830      -
1831        name: wakeup-pkt-80211
1832        type: flag
1833      -
1834        name: wakeup-pkt-80211-len
1835        type: flag
1836      -
1837        name: wakeup-pkt-8023
1838        type: flag
1839      -
1840        name: wakeup-pkt-8023-len
1841        type: flag
1842      -
1843        name: tcp-connection
1844        type: flag
1845      -
1846        name: wakeup-tcp-match
1847        type: flag
1848      -
1849        name: wakeup-tcp-connlost
1850        type: flag
1851      -
1852        name: wakeup-tcp-nomoretokens
1853        type: flag
1854      -
1855        name: net-detect
1856        type: flag
1857      -
1858        name: net-detect-results
1859        type: flag
1860      -
1861        name: unprotected-deauth-disassoc
1862        type: flag
1863
1864operations:
1865  enum-model: directional
1866  list:
1867    -
1868      name: get-wiphy
1869      doc: |
1870        Get information about a wiphy or dump a list of all wiphys. Requests to dump get-wiphy
1871        should unconditionally include the split-wiphy-dump flag in the request.
1872      attribute-set: nl80211-attrs
1873      do:
1874        request:
1875          value: 1
1876          attributes:
1877            - wiphy
1878            - wdev
1879            - ifindex
1880        reply:
1881          value: 3
1882          attributes: &wiphy-reply-attrs
1883            - bands
1884            - cipher-suites
1885            - control-port-ethertype
1886            - ext-capa
1887            - ext-capa-mask
1888            - ext-features
1889            - feature-flags
1890            - generation
1891            - ht-capability-mask
1892            - interface-combinations
1893            - mac
1894            - max-csa-counters
1895            - max-match-sets
1896            - max-num-akm-suites
1897            - max-num-pmkids
1898            - max-num-scan-ssids
1899            - max-num-sched-scan-plans
1900            - max-num-sched-scan-ssids
1901            - max-remain-on-channel-duration
1902            - max-scan-ie-len
1903            - max-scan-plan-interval
1904            - max-scan-plan-iterations
1905            - max-sched-scan-ie-len
1906            - offchannel-tx-ok
1907            - rx-frame-types
1908            - sar-spec
1909            - sched-scan-max-reqs
1910            - software-iftypes
1911            - support-ap-uapsd
1912            - supported-commands
1913            - supported-iftypes
1914            - tdls-external-setup
1915            - tdls-support
1916            - tx-frame-types
1917            - txq-limit
1918            - txq-memory-limit
1919            - txq-quantum
1920            - txq-stats
1921            - vht-capability-mask
1922            - wiphy
1923            - wiphy-antenna-avail-rx
1924            - wiphy-antenna-avail-tx
1925            - wiphy-antenna-rx
1926            - wiphy-antenna-tx
1927            - wiphy-bands
1928            - wiphy-coverage-class
1929            - wiphy-frag-threshold
1930            - wiphy-name
1931            - wiphy-retry-long
1932            - wiphy-retry-short
1933            - wiphy-rts-threshold
1934            - wowlan-triggers-supported
1935      dump:
1936        request:
1937          attributes:
1938            - wiphy
1939            - wdev
1940            - ifindex
1941            - split-wiphy-dump
1942        reply:
1943          attributes: *wiphy-reply-attrs
1944    -
1945      name: get-interface
1946      doc: Get information about an interface or dump a list of all interfaces
1947      attribute-set: nl80211-attrs
1948      do:
1949        request:
1950          value: 5
1951          attributes:
1952            - ifname
1953        reply:
1954          value: 7
1955          attributes: &interface-reply-attrs
1956            - ifname
1957            - iftype
1958            - ifindex
1959            - wiphy
1960            - wdev
1961            - mac
1962            - generation
1963            - txq-stats
1964            - 4addr
1965      dump:
1966        request:
1967          attributes:
1968            - ifname
1969        reply:
1970          attributes: *interface-reply-attrs
1971    -
1972      name: get-protocol-features
1973      doc: Get information about supported protocol features
1974      attribute-set: nl80211-attrs
1975      do:
1976        request:
1977          value: 95
1978          attributes:
1979            - protocol-features
1980        reply:
1981          value: 95
1982          attributes:
1983            - protocol-features
1984
1985mcast-groups:
1986  list:
1987    -
1988      name: config
1989    -
1990      name: scan
1991    -
1992      name: regulatory
1993    -
1994      name: mlme
1995    -
1996      name: vendor
1997    -
1998      name: nan
1999    -
2000      name: testmode
2001