#
---
_namespace: wfa_map

tlvApHeCapabilities:
  _type: class
  _is_tlv_class : True
  type:
    _type: eTlvTypeMap
    _value_const: TLV_AP_HE_CAPABILITIES
  length: uint16_t
  radio_uid: sMacAddr
  supported_he_mcs_length:
    _type: uint8_t
    _length_var: True
  supported_he_mcs:
    _type: uint8_t
    _length: [ supported_he_mcs_length ]
  flags1: sFlags1
  flags2: sFlags2

sFlags1:
  _type: struct
  _bit_field: uint8_t
  max_num_of_supported_tx_spatial_streams:
    _bit_range: [7,5]
  max_num_of_supported_rx_spatial_streams:
    _bit_range: [4,2]
  he_support_80_80mhz:
    _bit_range: [1,1]
  he_support_160mhz:
    _bit_range: [0,0]

sFlags2:
  _type: struct
  _bit_field: uint8_t
  su_beamformer_capable:
    _bit_range: [7,7]
  mu_beamformer_capable:
    _bit_range: [6,6]
  ul_mu_mimo_capable:
    _bit_range: [5,5]
  ul_mu_mimo_and_ofdm_capable:
    _bit_range: [4,4]
  dl_mu_mimo_and_ofdm_capable:
    _bit_range: [3,3]
  ul_ofdm_capable:
    _bit_range: [2,2]
  dl_ofdm_capable:
    _bit_range: [1,1]
  reserved:
    _bit_range: [0,0]
    _value: 0
