Johannes Berg says: ==================== A fairly big set of changes all over, notably with: - cfg80211: new APIs for NAN (Neighbor Aware Networking, aka Wi-Fi Aware) so less work must be in firmware - mt76: - mt7996/mt7925 MLO fixes/improvements - mt7996 NPU support (HW eth/wifi traffic offload) - iwlwifi: UNII-9 and continuing UHR work * tag 'wireless-next-2026-03-26' of https://git.kernel.org/pub/scm/linux/kernel/git/wireless/wireless-next: (230 commits) wifi: mac80211: ignore reserved bits in reconfiguration status wifi: cfg80211: allow protected action frame TX for NAN wifi: ieee80211: Add some missing NAN definitions wifi: nl80211: Add a notification to notify NAN channel evacuation wifi: nl80211: add NL80211_CMD_NAN_ULW_UPDATE notification wifi: nl80211: allow reporting spurious NAN Data frames wifi: cfg80211: allow ToDS=0/FromDS=0 data frames on NAN data interfaces wifi: nl80211: define an API for configuring the NAN peer's schedule wifi: nl80211: add support for NAN stations wifi: cfg80211: separately store HT, VHT and HE capabilities for NAN wifi: cfg80211: add support for NAN data interface wifi: cfg80211: make sure NAN chandefs are valid wifi: cfg80211: Add an API to configure local NAN schedule wifi: mac80211: cleanup error path of ieee80211_do_open wifi: mac80211: extract channel logic from link logic wifi: iwlwifi: mld: set RX_FLAG_RADIOTAP_TLV_AT_END generically wifi: iwlwifi: reduce the number of prints upon firmware crash wifi: iwlwifi: fix the description of SESSION_PROTECTION_CMD wifi: iwlwifi: mld: introduce iwl_mld_vif_fw_id_valid wifi: iwlwifi: mld: block EMLSR during TDLS connections ... ====================
Showing the changes to include/uapi (1 of 166 files). Show all
Unified · Split
| @@ -906,8 +906,9 @@ · 905 unmodified lines | |||
| 906 | * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP | 906 | * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP |
| 907 | * (or GO) interface (i.e. hostapd) to ask for unexpected frames to | 907 | * (or GO) interface (i.e. hostapd) to ask for unexpected frames to |
| 908 | * implement sending deauth to stations that send unexpected class 3 | 908 | * implement sending deauth to stations that send unexpected class 3 |
| 909 | * frames. Also used as the event sent by the kernel when such a frame | 909 | * frames. For NAN_DATA interfaces, this is used to report frames from |
| 910 | * is received. | 910 | * unknown peers (A2 not assigned to any active NDP). |
| 911 | * Also used as the event sent by the kernel when such a frame is received. | ||
| 911 | * For the event, the %NL80211_ATTR_MAC attribute carries the TA and | 912 | * For the event, the %NL80211_ATTR_MAC attribute carries the TA and |
| 912 | * other attributes like the interface index are present. | 913 | * other attributes like the interface index are present. |
| 913 | * If used as the command it must have an interface index and you can | 914 | * If used as the command it must have an interface index and you can |
| @@ -1367,6 +1368,53 @@ · 453 unmodified lines | |||
| 1367 | * %NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP. The current channel | 1368 | * %NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP. The current channel |
| 1368 | * definition is also sent. | 1369 | * definition is also sent. |
| 1369 | * | 1370 | * |
| 1371 | * @NL80211_CMD_NAN_SET_LOCAL_SCHED: Set the local NAN schedule. NAN must be | ||
| 1372 | * operational (%NL80211_CMD_START_NAN was executed). Must contain | ||
| 1373 | * %NL80211_ATTR_NAN_TIME_SLOTS and %NL80211_ATTR_NAN_AVAIL_BLOB, but | ||
| 1374 | * %NL80211_ATTR_NAN_CHANNEL is optional (for example in case of a channel | ||
| 1375 | * removal, that channel won't be provided). | ||
| 1376 | * If %NL80211_ATTR_NAN_SCHED_DEFERRED is set, the command is a request | ||
| 1377 | * from the device to perform an announced schedule update. See | ||
| 1378 | * %NL80211_ATTR_NAN_SCHED_DEFERRED for more details. | ||
| 1379 | * If not set, the schedule should be applied immediately. | ||
| 1380 | * @NL80211_CMD_NAN_SCHED_UPDATE_DONE: Event sent to user space to notify that | ||
| 1381 | * a deferred local NAN schedule update (requested with | ||
| 1382 | * %NL80211_CMD_NAN_SET_LOCAL_SCHED and %NL80211_ATTR_NAN_SCHED_DEFERRED) | ||
| 1383 | * has been completed. The presence of %NL80211_ATTR_NAN_SCHED_UPDATE_SUCCESS | ||
| 1384 | * indicates that the update was successful. | ||
| 1385 | * @NL80211_CMD_NAN_SET_PEER_SCHED: Set the peer NAN schedule. NAN | ||
| 1386 | * must be operational (%NL80211_CMD_START_NAN was executed). | ||
| 1387 | * Required attributes: %NL80211_ATTR_MAC (peer NMI address) and | ||
| 1388 | * %NL80211_ATTR_NAN_COMMITTED_DW. | ||
| 1389 | * Optionally, the full schedule can be provided by including all of: | ||
| 1390 | * %NL80211_ATTR_NAN_SEQ_ID, %NL80211_ATTR_NAN_CHANNEL (one or more), and | ||
| 1391 | * %NL80211_ATTR_NAN_PEER_MAPS (see &enum nl80211_nan_peer_map_attrs). | ||
| 1392 | * If any of these three optional attributes is provided, all three must | ||
| 1393 | * be provided. | ||
| 1394 | * Each peer channel must be compatible with at least one local channel | ||
| 1395 | * set by %NL80211_CMD_SET_LOCAL_NAN_SCHED. Different maps must not | ||
| 1396 | * contain compatible channels. | ||
| 1397 | * For single-radio devices (n_radio <= 1), different maps must not | ||
| 1398 | * schedule the same time slot, as the device cannot operate on multiple | ||
| 1399 | * channels simultaneously. | ||
| 1400 | * When updating an existing peer schedule, the full new schedule must be | ||
| 1401 | * provided - partial updates are not supported. The new schedule will | ||
| 1402 | * completely replace the previous one. | ||
| 1403 | * The peer schedule is automatically removed when the NMI station is | ||
| 1404 | * removed. | ||
| 1405 | * @NL80211_CMD_NAN_ULW_UPDATE: Notification from the driver to user space | ||
| 1406 | * with the updated ULW blob of the device. User space can use this blob | ||
| 1407 | * to attach to frames sent to peers. This notification contains | ||
| 1408 | * %NL80211_ATTR_NAN_ULW with the ULW blob. | ||
| 1409 | * @NL80211_CMD_NAN_CHANNEL_EVAC: Notification to indicate that a NAN | ||
| 1410 | * channel has been evacuated due to resource conflicts with other | ||
| 1411 | * interfaces. This can happen when another interface sharing the channel | ||
| 1412 | * resource with NAN needs to move to a different channel (e.g., channel | ||
| 1413 | * switch or link switch on a BSS interface). | ||
| 1414 | * The notification contains %NL80211_ATTR_NAN_CHANNEL attribute | ||
| 1415 | * identifying the evacuated channel. | ||
| 1416 | * User space may reconfigure the local schedule in response to this | ||
| 1417 | * notification. | ||
| 1370 | * @NL80211_CMD_MAX: highest used command number | 1418 | * @NL80211_CMD_MAX: highest used command number |
| 1371 | * @__NL80211_CMD_AFTER_LAST: internal use | 1419 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 1372 | */ | 1420 | */ |
| @@ -1632,6 +1680,16 @@ enum nl80211_commands { · 259 unmodified lines | |||
| 1632 | 1680 | ||
| 1633 | NL80211_CMD_INCUMBENT_SIGNAL_DETECT, | 1681 | NL80211_CMD_INCUMBENT_SIGNAL_DETECT, |
| 1634 | 1682 | ||
| 1683 | NL80211_CMD_NAN_SET_LOCAL_SCHED, | ||
| 1684 | |||
| 1685 | NL80211_CMD_NAN_SCHED_UPDATE_DONE, | ||
| 1686 | |||
| 1687 | NL80211_CMD_NAN_SET_PEER_SCHED, | ||
| 1688 | |||
| 1689 | NL80211_CMD_NAN_ULW_UPDATE, | ||
| 1690 | |||
| 1691 | NL80211_CMD_NAN_CHANNEL_EVAC, | ||
| 1692 | |||
| 1635 | /* add new commands above here */ | 1693 | /* add new commands above here */ |
| 1636 | 1694 | ||
| 1637 | /* used to define NL80211_CMD_MAX below */ | 1695 | /* used to define NL80211_CMD_MAX below */ |
| @@ -2659,7 +2717,8 @@ enum nl80211_commands { · 1021 unmodified lines | |||
| 2659 | * a flow is assigned on each round of the DRR scheduler. | 2717 | * a flow is assigned on each round of the DRR scheduler. |
| 2660 | * @NL80211_ATTR_HE_CAPABILITY: HE Capability information element (from | 2718 | * @NL80211_ATTR_HE_CAPABILITY: HE Capability information element (from |
| 2661 | * association request when used with NL80211_CMD_NEW_STATION). Can be set | 2719 | * association request when used with NL80211_CMD_NEW_STATION). Can be set |
| 2662 | * only if %NL80211_STA_FLAG_WME is set. | 2720 | * only if %NL80211_STA_FLAG_WME is set (except for NAN, which uses WME |
| 2721 | * anyway). | ||
| 2663 | * | 2722 | * |
| 2664 | * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include | 2723 | * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include |
| 2665 | * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing | 2724 | * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing |
| @@ -2991,6 +3050,82 @@ enum nl80211_commands { · 325 unmodified lines | |||
| 2991 | * @NL80211_ATTR_DISABLE_UHR: Force UHR capable interfaces to disable | 3050 | * @NL80211_ATTR_DISABLE_UHR: Force UHR capable interfaces to disable |
| 2992 | * this feature during association. This is a flag attribute. | 3051 | * this feature during association. This is a flag attribute. |
| 2993 | * Currently only supported in mac80211 drivers. | 3052 | * Currently only supported in mac80211 drivers. |
| 3053 | * @NL80211_ATTR_NAN_CHANNEL: This is a nested attribute. There can be multiple | ||
| 3054 | * attributes of this type, each one represents a channel definition and | ||
| 3055 | * consists of top-level attributes like %NL80211_ATTR_WIPHY_FREQ. | ||
| 3056 | * When used with %NL80211_CMD_NAN_SET_LOCAL_SCHED, it specifies | ||
| 3057 | * the channel definitions on which the radio needs to operate during | ||
| 3058 | * specific time slots. All of the channel definitions should be mutually | ||
| 3059 | * incompatible. With this command, %NL80211_ATTR_NAN_CHANNEL_ENTRY and | ||
| 3060 | * %NL80211_ATTR_NAN_RX_NSS are mandatory. | ||
| 3061 | * When used with %NL80211_CMD_NAN_SET_PEER_SCHED, it configures the | ||
| 3062 | * peer NAN channels. In that case, the channel definitions can be | ||
| 3063 | * compatible to each other, or even identical just with different RX NSS. | ||
| 3064 | * With this command, %NL80211_ATTR_NAN_CHANNEL_ENTRY and | ||
| 3065 | * %NL80211_ATTR_NAN_RX_NSS are mandatory. | ||
| 3066 | * The number of channels should fit the current configuration of channels | ||
| 3067 | * and the possible interface combinations. | ||
| 3068 | * If an existing NAN channel is changed but the chandef isn't, the | ||
| 3069 | * channel entry must also remain unchanged. | ||
| 3070 | * When used with %NL80211_CMD_NAN_CHANNEL_EVAC, this identifies the | ||
| 3071 | * channels that were evacuated. | ||
| 3072 | * @NL80211_ATTR_NAN_CHANNEL_ENTRY: a byte array of 6 bytes. contains the | ||
| 3073 | * Channel Entry as defined in Wi-Fi Aware (TM) 4.0 specification Table | ||
| 3074 | * 100 (Channel Entry format for the NAN Availability attribute). | ||
| 3075 | * @NL80211_ATTR_NAN_RX_NSS: (u8) RX NSS used for a NAN channel. This is | ||
| 3076 | * used with %NL80211_ATTR_NAN_CHANNEL when configuring NAN channels with | ||
| 3077 | * %NL80211_CMD_NAN_SET_LOCAL_SCHED or %NL80211_CMD_NAN_SET_PEER_SCHED. | ||
| 3078 | * @NL80211_ATTR_NAN_TIME_SLOTS: an array of u8 values and 32 cells. each value | ||
| 3079 | * maps a time slot to the chandef on which the radio should operate on in | ||
| 3080 | * that time. %NL80211_NAN_SCHED_NOT_AVAIL_SLOT indicates unscheduled. | ||
| 3081 | * The chandef is represented using its index, where the index is the | ||
| 3082 | * sequential number of the %NL80211_ATTR_NAN_CHANNEL attribute within all | ||
| 3083 | * the attributes of this type. | ||
| 3084 | * Each slots spans over 16TUs, hence the entire schedule spans over | ||
| 3085 | * 512TUs. Other slot durations and periods are currently not supported. | ||
| 3086 | * @NL80211_ATTR_NAN_AVAIL_BLOB: (Binary) The NAN Availability attribute blob, | ||
| 3087 | * including the attribute header, as defined in Wi-Fi Aware (TM) 4.0 | ||
| 3088 | * specification Table 93 (NAN Availability attribute format). Required with | ||
| 3089 | * %NL80211_CMD_NAN_SET_LOCAL_SCHED to provide the raw NAN Availability | ||
| 3090 | * attribute. Used by the device to publish Schedule Update NAFs. | ||
| 3091 | * @NL80211_ATTR_NAN_SCHED_DEFERRED: Flag attribute used with | ||
| 3092 | * %NL80211_CMD_NAN_SET_LOCAL_SCHED. When present, the command is a | ||
| 3093 | * request from the device to perform an announced schedule update. This | ||
| 3094 | * means that it needs to send the updated NAN availability to the peers, | ||
| 3095 | * and do the actual switch on the right time (i.e. at the end of the slot | ||
| 3096 | * after the slot in which the updated NAN Availability was sent). Since | ||
| 3097 | * the slots management is done in the device, the update to the peers | ||
| 3098 | * needs to be sent by the device, so it knows the actual switch time. | ||
| 3099 | * If the flag is not set, the schedule should be applied immediately. | ||
| 3100 | * When this flag is set, the total number of NAN channels from both the | ||
| 3101 | * old and new schedules must not exceed the allowed number of local NAN | ||
| 3102 | * channels, because with deferred scheduling the old channels cannot be | ||
| 3103 | * removed before adding the new ones to free up space. | ||
| 3104 | * @NL80211_ATTR_NAN_SCHED_UPDATE_SUCCESS: flag attribute used with | ||
| 3105 | * %NL80211_CMD_NAN_SCHED_UPDATE_DONE to indicate that the deferred | ||
| 3106 | * schedule update completed successfully. If this flag is not present, | ||
| 3107 | * the update failed. | ||
| 3108 | * @NL80211_ATTR_NAN_NMI_MAC: The address of the NMI station to which this NDI | ||
| 3109 | * station belongs. Used with %NL80211_CMD_NEW_STATION when adding an NDI | ||
| 3110 | * station. | ||
| 3111 | * @NL80211_ATTR_NAN_ULW: (Binary) The initial ULW(s) as published by the | ||
| 3112 | * peer, as defined in the Wi-Fi Aware (TM) 4.0 specification Table 109 | ||
| 3113 | * (Unaligned Schedule attribute format). Used to configure the device | ||
| 3114 | * with the initial ULW(s) of a peer, before the device starts tracking it. | ||
| 3115 | * @NL80211_ATTR_NAN_COMMITTED_DW: (u16) The committed DW as published by the | ||
| 3116 | * peer, as defined in the Wi-Fi Aware (TM) 4.0 specification Table 80 | ||
| 3117 | * (Committed DW Information field format). | ||
| 3118 | * @NL80211_ATTR_NAN_SEQ_ID: (u8) The sequence ID of the peer schedule that | ||
| 3119 | * %NL80211_CMD_NAN_SET_PEER_SCHED defines. The device follows the | ||
| 3120 | * sequence ID in the frames to identify newer schedules. Once a schedule | ||
| 3121 | * with a higher sequence ID is received, the device may stop communicating | ||
| 3122 | * with that peer until a new peer schedule with a matching sequence ID is | ||
| 3123 | * received. | ||
| 3124 | * @NL80211_ATTR_NAN_MAX_CHAN_SWITCH_TIME: (u16) The maximum channel switch | ||
| 3125 | * time, in microseconds. | ||
| 3126 | * @NL80211_ATTR_NAN_PEER_MAPS: Nested array of peer schedule maps. | ||
| 3127 | * Used with %NL80211_CMD_NAN_SET_PEER_SCHED. Contains up to 2 entries, | ||
| 3128 | * each containing nested attributes from &enum nl80211_nan_peer_map_attrs. | ||
| 2994 | * | 3129 | * |
| 2995 | * @NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP: u32 attribute specifying | 3130 | * @NL80211_ATTR_INCUMBENT_SIGNAL_INTERFERENCE_BITMAP: u32 attribute specifying |
| 2996 | * the signal interference bitmap detected on the operating bandwidth for | 3131 | * the signal interference bitmap detected on the operating bandwidth for |
| @@ -3582,6 +3717,22 @@ enum nl80211_attrs { · 585 unmodified lines | |||
| 3582 | 3717 | ||
| 3583 | NL80211_ATTR_UHR_OPERATION, | 3718 | NL80211_ATTR_UHR_OPERATION, |
| 3584 | 3719 | ||
| 3720 | NL80211_ATTR_NAN_CHANNEL, | ||
| 3721 | NL80211_ATTR_NAN_CHANNEL_ENTRY, | ||
| 3722 | NL80211_ATTR_NAN_TIME_SLOTS, | ||
| 3723 | NL80211_ATTR_NAN_RX_NSS, | ||
| 3724 | NL80211_ATTR_NAN_AVAIL_BLOB, | ||
| 3725 | NL80211_ATTR_NAN_SCHED_DEFERRED, | ||
| 3726 | NL80211_ATTR_NAN_SCHED_UPDATE_SUCCESS, | ||
| 3727 | |||
| 3728 | NL80211_ATTR_NAN_NMI_MAC, | ||
| 3729 | |||
| 3730 | NL80211_ATTR_NAN_ULW, | ||
| 3731 | NL80211_ATTR_NAN_COMMITTED_DW, | ||
| 3732 | NL80211_ATTR_NAN_SEQ_ID, | ||
| 3733 | NL80211_ATTR_NAN_MAX_CHAN_SWITCH_TIME, | ||
| 3734 | NL80211_ATTR_NAN_PEER_MAPS, | ||
| 3735 | |||
| 3585 | /* add attributes here, update the policy in nl80211.c */ | 3736 | /* add attributes here, update the policy in nl80211.c */ |
| 3586 | 3737 | ||
| 3587 | __NL80211_ATTR_AFTER_LAST, | 3738 | __NL80211_ATTR_AFTER_LAST, |
| @@ -3675,6 +3826,9 @@ enum nl80211_attrs { · 87 unmodified lines | |||
| 3675 | * @NL80211_IFTYPE_OCB: Outside Context of a BSS | 3826 | * @NL80211_IFTYPE_OCB: Outside Context of a BSS |
| 3676 | * This mode corresponds to the MIB variable dot11OCBActivated=true | 3827 | * This mode corresponds to the MIB variable dot11OCBActivated=true |
| 3677 | * @NL80211_IFTYPE_NAN: NAN device interface type (not a netdev) | 3828 | * @NL80211_IFTYPE_NAN: NAN device interface type (not a netdev) |
| 3829 | * @NL80211_IFTYPE_NAN_DATA: NAN data interface type (netdev); NAN data | ||
| 3830 | * interfaces can only be brought up (IFF_UP) when a NAN interface | ||
| 3831 | * already exists and NAN has been started (using %NL80211_CMD_START_NAN). | ||
| 3678 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined | 3832 | * @NL80211_IFTYPE_MAX: highest interface type number currently defined |
| 3679 | * @NUM_NL80211_IFTYPES: number of defined interface types | 3833 | * @NUM_NL80211_IFTYPES: number of defined interface types |
| 3680 | * | 3834 | * |
| @@ -3696,6 +3850,7 @@ enum nl80211_iftype { · 15 unmodified lines | |||
| 3696 | NL80211_IFTYPE_P2P_DEVICE, | 3850 | NL80211_IFTYPE_P2P_DEVICE, |
| 3697 | NL80211_IFTYPE_OCB, | 3851 | NL80211_IFTYPE_OCB, |
| 3698 | NL80211_IFTYPE_NAN, | 3852 | NL80211_IFTYPE_NAN, |
| 3853 | NL80211_IFTYPE_NAN_DATA, | ||
| 3699 | 3854 | ||
| 3700 | /* keep last */ | 3855 | /* keep last */ |
| 3701 | NUM_NL80211_IFTYPES, | 3856 | NUM_NL80211_IFTYPES, |
| @@ -4384,6 +4539,46 @@ enum nl80211_band_attr { · 682 unmodified lines | |||
| 4384 | 4539 | ||
| 4385 | #define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA | 4540 | #define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA |
| 4386 | 4541 | ||
| 4542 | /** | ||
| 4543 | * enum nl80211_nan_phy_cap_attr - NAN PHY capabilities attributes | ||
| 4544 | * @__NL80211_NAN_PHY_CAP_ATTR_INVALID: attribute number 0 is reserved | ||
| 4545 | * @NL80211_NAN_PHY_CAP_ATTR_HT_MCS_SET: 16-byte attribute containing HT MCS set | ||
| 4546 | * @NL80211_NAN_PHY_CAP_ATTR_HT_CAPA: HT capabilities (u16) | ||
| 4547 | * @NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_FACTOR: HT A-MPDU factor (u8) | ||
| 4548 | * @NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_DENSITY: HT A-MPDU density (u8) | ||
| 4549 | * @NL80211_NAN_PHY_CAP_ATTR_VHT_MCS_SET: 8-byte attribute containing VHT MCS set | ||
| 4550 | * @NL80211_NAN_PHY_CAP_ATTR_VHT_CAPA: VHT capabilities (u32) | ||
| 4551 | * @NL80211_NAN_PHY_CAP_ATTR_HE_MAC: HE MAC capabilities | ||
| 4552 | * @NL80211_NAN_PHY_CAP_ATTR_HE_PHY: HE PHY capabilities | ||
| 4553 | * @NL80211_NAN_PHY_CAP_ATTR_HE_MCS_SET: HE supported NSS/MCS combinations | ||
| 4554 | * @NL80211_NAN_PHY_CAP_ATTR_HE_PPE: HE PPE thresholds | ||
| 4555 | * @NL80211_NAN_PHY_CAP_ATTR_MAX: highest NAN PHY cap attribute number | ||
| 4556 | * @__NL80211_NAN_PHY_CAP_ATTR_AFTER_LAST: internal use | ||
| 4557 | */ | ||
| 4558 | enum nl80211_nan_phy_cap_attr { | ||
| 4559 | __NL80211_NAN_PHY_CAP_ATTR_INVALID, | ||
| 4560 | |||
| 4561 | /* HT capabilities */ | ||
| 4562 | NL80211_NAN_PHY_CAP_ATTR_HT_MCS_SET, | ||
| 4563 | NL80211_NAN_PHY_CAP_ATTR_HT_CAPA, | ||
| 4564 | NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_FACTOR, | ||
| 4565 | NL80211_NAN_PHY_CAP_ATTR_HT_AMPDU_DENSITY, | ||
| 4566 | |||
| 4567 | /* VHT capabilities */ | ||
| 4568 | NL80211_NAN_PHY_CAP_ATTR_VHT_MCS_SET, | ||
| 4569 | NL80211_NAN_PHY_CAP_ATTR_VHT_CAPA, | ||
| 4570 | |||
| 4571 | /* HE capabilities */ | ||
| 4572 | NL80211_NAN_PHY_CAP_ATTR_HE_MAC, | ||
| 4573 | NL80211_NAN_PHY_CAP_ATTR_HE_PHY, | ||
| 4574 | NL80211_NAN_PHY_CAP_ATTR_HE_MCS_SET, | ||
| 4575 | NL80211_NAN_PHY_CAP_ATTR_HE_PPE, | ||
| 4576 | |||
| 4577 | /* keep last */ | ||
| 4578 | __NL80211_NAN_PHY_CAP_ATTR_AFTER_LAST, | ||
| 4579 | NL80211_NAN_PHY_CAP_ATTR_MAX = __NL80211_NAN_PHY_CAP_ATTR_AFTER_LAST - 1 | ||
| 4580 | }; | ||
| 4581 | |||
| 4387 | /** | 4582 | /** |
| 4388 | * enum nl80211_wmm_rule - regulatory wmm rule | 4583 | * enum nl80211_wmm_rule - regulatory wmm rule |
| 4389 | * | 4584 | * |
| @@ -8557,6 +8752,8 @@ enum nl80211_s1g_short_beacon_attrs { · 4167 unmodified lines | |||
| 8557 | * @NL80211_NAN_CAPA_CAPABILITIES: u8 attribute containing the | 8752 | * @NL80211_NAN_CAPA_CAPABILITIES: u8 attribute containing the |
| 8558 | * capabilities of the device as defined in Wi-Fi Aware (TM) | 8753 | * capabilities of the device as defined in Wi-Fi Aware (TM) |
| 8559 | * specification Table 79 (Capabilities field). | 8754 | * specification Table 79 (Capabilities field). |
| 8755 | * @NL80211_NAN_CAPA_PHY: nested attribute containing band-agnostic | ||
| 8756 | * capabilities for NAN data path. See &enum nl80211_nan_phy_cap_attr. | ||
| 8560 | * @__NL80211_NAN_CAPABILITIES_LAST: Internal | 8757 | * @__NL80211_NAN_CAPABILITIES_LAST: Internal |
| 8561 | * @NL80211_NAN_CAPABILITIES_MAX: Highest NAN capability attribute. | 8758 | * @NL80211_NAN_CAPABILITIES_MAX: Highest NAN capability attribute. |
| 8562 | */ | 8759 | */ |
| @@ -8569,9 +8766,38 @@ enum nl80211_nan_capabilities { · 6 unmodified lines | |||
| 8569 | NL80211_NAN_CAPA_NUM_ANTENNAS, | 8766 | NL80211_NAN_CAPA_NUM_ANTENNAS, |
| 8570 | NL80211_NAN_CAPA_MAX_CHANNEL_SWITCH_TIME, | 8767 | NL80211_NAN_CAPA_MAX_CHANNEL_SWITCH_TIME, |
| 8571 | NL80211_NAN_CAPA_CAPABILITIES, | 8768 | NL80211_NAN_CAPA_CAPABILITIES, |
| 8769 | NL80211_NAN_CAPA_PHY, | ||
| 8572 | /* keep last */ | 8770 | /* keep last */ |
| 8573 | __NL80211_NAN_CAPABILITIES_LAST, | 8771 | __NL80211_NAN_CAPABILITIES_LAST, |
| 8574 | NL80211_NAN_CAPABILITIES_MAX = __NL80211_NAN_CAPABILITIES_LAST - 1, | 8772 | NL80211_NAN_CAPABILITIES_MAX = __NL80211_NAN_CAPABILITIES_LAST - 1, |
| 8575 | }; | 8773 | }; |
| 8576 | 8774 | ||
| 8775 | /** | ||
| 8776 | * enum nl80211_nan_peer_map_attrs - NAN peer schedule map attributes | ||
| 8777 | * | ||
| 8778 | * Nested attributes used within %NL80211_ATTR_NAN_PEER_MAPS to define | ||
| 8779 | * individual peer schedule maps. | ||
| 8780 | * | ||
| 8781 | * @__NL80211_NAN_PEER_MAP_ATTR_INVALID: Invalid | ||
| 8782 | * @NL80211_NAN_PEER_MAP_ATTR_MAP_ID: (u8) The map ID for this schedule map. | ||
| 8783 | * @NL80211_NAN_PEER_MAP_ATTR_TIME_SLOTS: An array of u8 values with 32 cells. | ||
| 8784 | * Each value maps a time slot to a channel index within the schedule's | ||
| 8785 | * channel list (%NL80211_ATTR_NAN_CHANNEL attributes). | ||
| 8786 | * %NL80211_NAN_SCHED_NOT_AVAIL_SLOT indicates unscheduled. | ||
| 8787 | * @__NL80211_NAN_PEER_MAP_ATTR_LAST: Internal | ||
| 8788 | * @NL80211_NAN_PEER_MAP_ATTR_MAX: Highest peer map attribute | ||
| 8789 | */ | ||
| 8790 | enum nl80211_nan_peer_map_attrs { | ||
| 8791 | __NL80211_NAN_PEER_MAP_ATTR_INVALID, | ||
| 8792 | |||
| 8793 | NL80211_NAN_PEER_MAP_ATTR_MAP_ID, | ||
| 8794 | NL80211_NAN_PEER_MAP_ATTR_TIME_SLOTS, | ||
| 8795 | |||
| 8796 | /* keep last */ | ||
| 8797 | __NL80211_NAN_PEER_MAP_ATTR_LAST, | ||
| 8798 | NL80211_NAN_PEER_MAP_ATTR_MAX = __NL80211_NAN_PEER_MAP_ATTR_LAST - 1, | ||
| 8799 | }; | ||
| 8800 | |||
| 8801 | #define NL80211_NAN_SCHED_NOT_AVAIL_SLOT 0xff | ||
| 8802 | |||
| 8577 | #endif /* __LINUX_NL80211_H */ | 8803 | #endif /* __LINUX_NL80211_H */ |