Commit f22e764d authored by Jakub Kicinski's avatar Jakub Kicinski
Browse files

netlink: specs: nl80211: drop structs which are not uAPI



C codegen will soon use structs for binary types. A handful of structs
in WiFi carry information elements from the wire, defined by the standard.
The structs are not part of uAPI, so we can't use them in C directly.
We could add them to the uAPI or add some annotation to tell the codegen
to output a local version to the user header. The former seems arbitrary
since we don't expose structs for most of the standard. The latter seems
like a lot of work for a rare occurrence. Drop the struct info for now.

Reviewed-by: default avatarDonald Hunter <donald.hunter@gmail.com>
Link: https://lore.kernel.org/004030652d592b379e730be2f0344bebc4a03475.camel@sipsolutions.net
Link: https://patch.msgid.link/20250506194101.696272-2-kuba@kernel.org


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 015b5b8e
Loading
Loading
Loading
Loading
+0 −68
Original line number Diff line number Diff line
@@ -203,71 +203,6 @@ definitions:
      - scan-random-mac-addr
      - sched-scan-random-mac-addr
      - no-random-mac-addr
  -
    name: ieee80211-mcs-info
    type: struct
    members:
      -
        name: rx-mask
        type: binary
        len: 10
      -
        name: rx-highest
        type: u16
        byte-order: little-endian
      -
        name: tx-params
        type: u8
      -
        name: reserved
        type: binary
        len: 3
  -
    name: ieee80211-vht-mcs-info
    type: struct
    members:
      -
        name: rx-mcs-map
        type: u16
        byte-order: little-endian
      -
        name: rx-highest
        type: u16
        byte-order: little-endian
      -
        name: tx-mcs-map
        type: u16
        byte-order: little-endian
      -
        name: tx-highest
        type: u16
        byte-order: little-endian
  -
    name: ieee80211-ht-cap
    type: struct
    members:
      -
        name: cap-info
        type: u16
        byte-order: little-endian
      -
        name: ampdu-params-info
        type: u8
      -
        name: mcs
        type: binary
        struct: ieee80211-mcs-info
      -
        name: extended-ht-cap-info
        type: u16
        byte-order: little-endian
      -
        name: tx-bf-cap-info
        type: u32
        byte-order: little-endian
      -
        name: antenna-selection-info
        type: u8
  -
    name: channel-type
    type: enum
@@ -761,7 +696,6 @@ attribute-sets:
      -
        name: ht-capability-mask
        type: binary
        struct: ieee80211-ht-cap
      -
        name: noack-map
        type: u16
@@ -1382,7 +1316,6 @@ attribute-sets:
      -
        name: ht-mcs-set
        type: binary
        struct: ieee80211-mcs-info
      -
        name: ht-capa
        type: u16
@@ -1395,7 +1328,6 @@ attribute-sets:
      -
        name: vht-mcs-set
        type: binary
        struct: ieee80211-vht-mcs-info
      -
        name: vht-capa
        type: u32