OID_DOT11_SUPPORTED_PHY_TYPES

Important  The Native 802.11 Wireless LAN interface is deprecated in Windows 10 and later. Please use the WLAN Device Driver Interface (WDI) instead. For more information about WDI, see WLAN Universal Windows driver model.

 

When queried, the OID_DOT11_SUPPORTED_PHY_TYPES object identifier (OID) requests that the miniport driver return the value of the Native 802.11 Operational msDot11SupportedPhyTypes management information base (MIB) object. This MIB object defines the list of PHY types supported by the 802.11 station.

The data type for this OID is the DOT11_SUPPORTED_PHY_TYPES structure.

    typedef struct _DOT11_SUPPORTED_PHY_TYPES {
         ULONG uNumOfEntries;
         ULONG uTotalNumOfEntries;
         DOT11_PHY_TYPE dot11PHYType[1];
    } DOT11_SUPPORTED_PHY_TYPES, *PDOT11_SUPPORTED_PHY_TYPES;
  

This structure includes the following members:

uNumOfEntries
Number of entries in the dot11PhyType array. A zero value for this member indicates an empty list of supported PHY types.

uTotalNumOfEntries
Maximum number of entries that the dot11PhyType array requires.

Note  The operating system supports a maximum of 64 entries for the dot11PhyType array.

 

dot11PhyType
The list of supported PHY types. Each entry in this list is specified through a DOT11_PHY_TYPE enumeration.

The following points apply to a miniport driver operating in Extensible Station (ExtSTA) mode:

  • When OID_DOT11_SUPPORTED_PHY_TYPES is queried, the miniport driver must add an entry in the dot11PhyType array for every PHY supported on the 802.11 station. If the 802.11 station supports proprietary or non-standard PHY types, the miniport driver must add an entry containing a PHY type value defined by the independent hardware vendor (IHV). For more information about IHV-defined PHY types, see DOT11_PHY_TYPE.

    If the 802.11 station supports multiple PHYs of the same type, the miniport driver must add separate entries for each PHY.

  • The number of entries within the dot11PhyType array and the order of the entries within the array must remain unchanged during the lifetime of the installation of the miniport driver.

    For any PHY type supported by the 802.11 station, its index within the dot11PhyType array must persist and not change while the miniport driver is installed on the host computer system.

After OID_DOT11_SUPPORTED_PHY_TYPES is queried, the operating system will identify a PHY on the 802.11 station through one of the following methods:

  • If the miniport driver is operating in ExtSTA mode, the operating system will identify the PHY through a PHY identifier (ID). The PHY ID is the index into the list of PHYs returned in the dot11PhyType array. If the operating system specifies a PHY ID of DOT11_PHY_ID_ANY, the miniport driver can use any supported PHY on the 802.11 station.

    The miniport driver will also use the PHY ID for Native 802.11 media-specific status indications. The miniport driver cannot use DOT11_PHY_ID_ANY as a PHY ID for status indications. For more information about Native 802.11 media-specific status indications, see Native 802.11 Wireless LAN Status Indications.

  • If the miniport driver is not operating in ExtSTA mode, the operating system will identify the PHY through a PHY type as defined by a DOT11_PHY_TYPE enumeration value.

When OID_DOT11_SUPPORTED_PHY_TYPES is queried, the miniport driver must verify that the InformationBuffer member of the MiniportOidRequest function's OidRequest parameter is large enough to return the entire DOT11_SUPPORTED_PHY_TYPES structure, including all entries in the dot11PhyType array. The value of the InformationBufferLength member of the OidRequest parameter determines what the miniport driver must do, for example:

  • If the value of the InformationBufferLength member is less than the length, in bytes, of the entire DOT11_SUPPORTED_PHY_TYPES structure, the miniport driver must do the following:

    • For the OidRequest parameter, set the BytesWritten member to zero and the BytesNeeded member to the length, in bytes, of the entire DOT11_SUPPORTED_PHY_TYPES structure.

    • Fail the query request by returning NDIS_STATUS_BUFFER_OVERFLOW from its MiniportOidRequest function.

  • If the value of the InformationBufferLength member is greater than or equal to the length, in bytes, of the entire DOT11_SUPPORTED_PHY_TYPES structure, the miniport driver must do the following to complete a successful query request:

    • For the DOT11_SUPPORTED_PHY_TYPES structure, set the uNumOfEntries and uTotalNumOfEntries members to the total number of entries in the dot11PhyType array.

    • For the OidRequest parameter, set the BytesNeeded member to zero and the BytesWritten member to the length, in bytes, of the entire DOT11_SUPPORTED_PHY_TYPES structure. The miniport driver must also copy the entire DOT11_SUPPORTED_PHY_TYPES structure to the InformationBuffer member.

    • Return NDIS_STATUS_SUCCESS from its MiniportOidRequest function.

Note  If the miniport driver supports an 802.11n PHY, it must indicate this to the operating system as follows.

  1. During initialization of the miniport driver and 802.11 station, set the dot11_phy_type_ht value in the NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES->SupportedPhyAttributes->PhyType member.

  2. In response to an OID_DOT11_SUPPORTED_PHY_TYPES query, set the dot11_phy_type_ht value in the DOT11_SUPPORTED_PHY_TYPES->dot11PhyType member.

 

Note  If the miniport driver supports an 802.11ac PHY, it must indicate this to the operating system as follows.

  1. During initialization of the miniport driver and 802.11 station, set the dot11_phy_type_vht value in the NDIS_MINIPORT_ADAPTER_NATIVE_802_11_ATTRIBUTES->SupportedPhyAttributes->PhyType member.

  2. In response to an OID_DOT11_SUPPORTED_PHY_TYPES query, set the dot11_phy_type_vht value in the DOT11_SUPPORTED_PHY_TYPES->dot11PhyType member.

 

Requirements

Version

Available in Windows Vista and later versions of the Windows operating systems.

Header

Windot11.h (include Ndis.h)

See also

Native 802.11 Wireless LAN OIDs