Add support for reporting and calculating EHT bitrates.
Showing the changes to include/uapi (1 of 4 files). Show all
Unified · Split
| @@ -3392,6 +3392,56 @@ enum nl80211_he_ru_alloc { · 3391 unmodified lines | ||
| 3392 | 3392 | NL80211_RATE_INFO_HE_RU_ALLOC_2x996, |
| 3393 | 3393 | }; |
| 3394 | 3394 | |
| 3395 | +/** | |
| 3396 | + * enum nl80211_eht_gi - EHT guard interval | |
| 3397 | + * @NL80211_RATE_INFO_EHT_GI_0_8: 0.8 usec | |
| 3398 | + * @NL80211_RATE_INFO_EHT_GI_1_6: 1.6 usec | |
| 3399 | + * @NL80211_RATE_INFO_EHT_GI_3_2: 3.2 usec | |
| 3400 | + */ | |
| 3401 | +enum nl80211_eht_gi { | |
| 3402 | + NL80211_RATE_INFO_EHT_GI_0_8, | |
| 3403 | + NL80211_RATE_INFO_EHT_GI_1_6, | |
| 3404 | + NL80211_RATE_INFO_EHT_GI_3_2, | |
| 3405 | +}; | |
| 3406 | + | |
| 3407 | +/** | |
| 3408 | + * enum nl80211_eht_ru_alloc - EHT RU allocation values | |
| 3409 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_26: 26-tone RU allocation | |
| 3410 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_52: 52-tone RU allocation | |
| 3411 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_52P26: 52+26-tone RU allocation | |
| 3412 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_106: 106-tone RU allocation | |
| 3413 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_106P26: 106+26 tone RU allocation | |
| 3414 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_242: 242-tone RU allocation | |
| 3415 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_484: 484-tone RU allocation | |
| 3416 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_484P242: 484+242 tone RU allocation | |
| 3417 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_996: 996-tone RU allocation | |
| 3418 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_996P484: 996+484 tone RU allocation | |
| 3419 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_996P484P242: 996+484+242 tone RU allocation | |
| 3420 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_2x996: 2x996-tone RU allocation | |
| 3421 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_2x996P484: 2x996+484 tone RU allocation | |
| 3422 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_3x996: 3x996-tone RU allocation | |
| 3423 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_3x996P484: 3x996+484 tone RU allocation | |
| 3424 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC_4x996: 4x996-tone RU allocation | |
| 3425 | + */ | |
| 3426 | +enum nl80211_eht_ru_alloc { | |
| 3427 | + NL80211_RATE_INFO_EHT_RU_ALLOC_26, | |
| 3428 | + NL80211_RATE_INFO_EHT_RU_ALLOC_52, | |
| 3429 | + NL80211_RATE_INFO_EHT_RU_ALLOC_52P26, | |
| 3430 | + NL80211_RATE_INFO_EHT_RU_ALLOC_106, | |
| 3431 | + NL80211_RATE_INFO_EHT_RU_ALLOC_106P26, | |
| 3432 | + NL80211_RATE_INFO_EHT_RU_ALLOC_242, | |
| 3433 | + NL80211_RATE_INFO_EHT_RU_ALLOC_484, | |
| 3434 | + NL80211_RATE_INFO_EHT_RU_ALLOC_484P242, | |
| 3435 | + NL80211_RATE_INFO_EHT_RU_ALLOC_996, | |
| 3436 | + NL80211_RATE_INFO_EHT_RU_ALLOC_996P484, | |
| 3437 | + NL80211_RATE_INFO_EHT_RU_ALLOC_996P484P242, | |
| 3438 | + NL80211_RATE_INFO_EHT_RU_ALLOC_2x996, | |
| 3439 | + NL80211_RATE_INFO_EHT_RU_ALLOC_2x996P484, | |
| 3440 | + NL80211_RATE_INFO_EHT_RU_ALLOC_3x996, | |
| 3441 | + NL80211_RATE_INFO_EHT_RU_ALLOC_3x996P484, | |
| 3442 | + NL80211_RATE_INFO_EHT_RU_ALLOC_4x996, | |
| 3443 | +}; | |
| 3444 | + | |
| 3395 | 3445 | /** |
| 3396 | 3446 | * enum nl80211_rate_info - bitrate information |
| 3397 | 3447 | * |
| @@ -3431,6 +3481,13 @@ enum nl80211_he_ru_alloc { · 33 unmodified lines | ||
| 3431 | 3481 | * @NL80211_RATE_INFO_HE_DCM: HE DCM value (u8, 0/1) |
| 3432 | 3482 | * @NL80211_RATE_INFO_RU_ALLOC: HE RU allocation, if not present then |
| 3433 | 3483 | * non-OFDMA was used (u8, see &enum nl80211_he_ru_alloc) |
| 3484 | + * @NL80211_RATE_INFO_320_MHZ_WIDTH: 320 MHz bitrate | |
| 3485 | + * @NL80211_RATE_INFO_EHT_MCS: EHT MCS index (u8, 0-15) | |
| 3486 | + * @NL80211_RATE_INFO_EHT_NSS: EHT NSS value (u8, 1-8) | |
| 3487 | + * @NL80211_RATE_INFO_EHT_GI: EHT guard interval identifier | |
| 3488 | + * (u8, see &enum nl80211_eht_gi) | |
| 3489 | + * @NL80211_RATE_INFO_EHT_RU_ALLOC: EHT RU allocation, if not present then | |
| 3490 | + * non-OFDMA was used (u8, see &enum nl80211_eht_ru_alloc) | |
| 3434 | 3491 | * @__NL80211_RATE_INFO_AFTER_LAST: internal use |
| 3435 | 3492 | */ |
| 3436 | 3493 | enum nl80211_rate_info { |
| @@ -3452,6 +3509,11 @@ enum nl80211_rate_info { · 15 unmodified lines | ||
| 3452 | 3509 | NL80211_RATE_INFO_HE_GI, |
| 3453 | 3510 | NL80211_RATE_INFO_HE_DCM, |
| 3454 | 3511 | NL80211_RATE_INFO_HE_RU_ALLOC, |
| 3512 | + NL80211_RATE_INFO_320_MHZ_WIDTH, | |
| 3513 | + NL80211_RATE_INFO_EHT_MCS, | |
| 3514 | + NL80211_RATE_INFO_EHT_NSS, | |
| 3515 | + NL80211_RATE_INFO_EHT_GI, | |
| 3516 | + NL80211_RATE_INFO_EHT_RU_ALLOC, | |
| 3455 | 3517 | |
| 3456 | 3518 | /* keep last */ |
| 3457 | 3519 | __NL80211_RATE_INFO_AFTER_LAST, |