blob: 46b19f6e6b0b0c1499f9d14b61c4c045f0776030 [file] [log] [blame]
// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.wlan.common;
// LINT.IfChange
@available(added=13)
type WlanKeyType = flexible enum : uint8 {
PAIRWISE = 1;
GROUP = 2;
IGTK = 3;
PEER = 4;
};
// LINT.ThenChange(//src/connectivity/wlan/lib/mlme/rust/src/key.rs)
@available(added=13)
type WlanWmmParameters = struct {
apsd bool;
ac_be_params WlanWmmAccessCategoryParameters;
ac_bk_params WlanWmmAccessCategoryParameters;
ac_vi_params WlanWmmAccessCategoryParameters;
ac_vo_params WlanWmmAccessCategoryParameters;
};
/// WFA WMM v1.2, 2.2.2
@available(added=13)
type WlanWmmAccessCategoryParameters = struct {
/// Lower bound of contention window in exponential form
/// `cw_min = 2^(ecw_min) - 1`. The unit for contention window is "slot time", which
/// is different for each standard (e.g. 9 microseconds, 13 microseconds, etc.)
ecw_min uint8;
/// Upper bound of contention window in exponential form
/// `cw_max = 2^(ecw_max) - 1`. The unit for contention window is "slot time", which
/// is different for each standard (e.g. 9 microseconds, 13 microseconds, etc.)
ecw_max uint8;
/// Arbitration Interframe Spacing Number (control wait time between sending each frame)
aifsn uint8;
/// TXOP limit in unit of 32 microseconds
txop_limit uint16;
/// Whether admission control is mandatory
acm bool;
};
/// Information defined only within a context of association
/// Beware the subtle interpretation of each field: they are designed to
/// reflect the parameters safe to use within an association
/// Many parameters do not distinguish Rx capability from Tx capability.
/// In those cases, a capability is commonly applied to both Rx and Tx.
/// Some parameters are distinctively for Rx only, and some are Tx only.
@namespaced
@available(added=13)
const WLAN_MAC_MAX_SUPP_RATES uint32 = 8;
@namespaced
@available(added=13)
const WLAN_MAC_MAX_EXT_RATES uint32 = 255;