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 set, the OID_DOT11_CURRENT_CHANNEL object identifier (OID) requests that the miniport driver set the IEEE 802.11 dot11CurrentChannel or dot11CurrentPrimaryChannel management information base (MIB) object to the specified value for the current PHY type on the 802.11 station.
For the dot11_phy_type_ht and dot11_phy_type_vht PHY types, the OID sets the value of the dot11CurrentPrimaryChannel MIB object. For the dot11_phy_type_ht operating in the 2.4 GHz band, the OID also sets the value of the dot11CurrentChannel MIB object.
When queried, this OID requests that the miniport driver return the value of the dot11CurrentChannel or dot11CurrentPrimaryChannel MIB object for the current PHY type. For the dot11_phy_type_ht and dot11_phy_type_vht PHY types, the miniport queries the dot11CurrentPrimaryChannel MIB object.
The dot11CurrentChannel MIB object defines the current operating frequency channel used by the PHY for transmit and receive operations. For more information about frequency channels, refer to clause 22.214.171.124 of the IEEE 802.11-2012 standard.
The dot11CurrentPrimaryChannel MIB object defines the location of the primary 20 MHz channel. For more information about this MIB object, see clause 20.4.2 of the IEEE 802.11-2012 standard and clause 22.3.14 of IEEE Draft P802.11ac/D4.2.
For more information about 802.11n (HT) operation, refer to clause 10.15 of the IEEE 802.11-2012 standard.
For more information about 802.11ac operation, refer to clause 10.39 of IEEE Draft P802.11ac/D4.2.
The data type for OID_DOT11_CURRENT_CHANNEL is a ULONG value that specifies the channel number.
This OID is valid only for the following PHY types:
- Direct-sequence spread spectrum (DSSS) PHY (dot11_phy_type_dsss).
- High-rate DSSS (HRDSSS) PHY (dot11_phy_type_hrdsss).
- Extended-rate PHY (ERP) (dot11_phy_type_erp).
- High-Throughput (HT) PHY (dot11_phy_type_ht).
- Very High-Throughput (VHT) PHY (dot11_phy_type_vht).
If the current PHY type is not set to one of these valid PHY types, the miniport driver must fail the query request by returning NDIS_STATUS_INVALID_DATA from its MiniportOidRequest function.
Note Support for OID_DOT11_CURRENT_CHANNEL is mandatory if the NIC supports any of these valid PHY types. For more information about how the miniport driver specifies its list of supported PHY types, see OID_DOT11_SUPPORTED_PHY_TYPES.
If the miniport driver is operating in the Extensible Station (ExtSTA) mode, the miniport driver fails a set request of OID_DOT11_CURRENT_CHANNEL under the following conditions:
If the NIC is in a powered-off state, the miniport driver must fail the request by returning NDIS_STATUS_POWER_STATE_INVALID from its MiniportOidRequest function. For more information about power states, see OID_DOT11_NIC_POWER_STATE.
If the 802.11 station is performing a scan request, the miniport driver can fail the set request by returning NDIS_STATUS_DOT11_MEDIA_IN_USE from its MiniportOidRequest function. For more information about scan requests, see OID_DOT11_SCAN_REQUEST.
The miniport driver can fail the set request if the 802.11 station is unable to change channels while performing the scan request.
If the miniport driver has enabled automatic PHY configuration, it can fail the set request if the 802.11 station manages the PHY-layer configuration. In this situation, the driver returns NDIS_STATUS_DOT11_AUTO_CONFIG_ENABLED from its MiniportOidRequest function.
For more information about automatic PHY configuration, see OID_DOT11_AUTO_CONFIG_ENABLED.
If the miniport driver is operating in Extensible Station (ExtSTA) mode, the current PHY type is determined through the ExtSTA msDot11CurrentPhyID MIB object. This MIB object specifies the index of the current PHY type within the 802.11 station's list of supported PHY types. For more information about msDot11CurrentPhyID, see OID_DOT11_CURRENT_PHY_ID.
If the miniport driver is in Extensible Access Point (ExtAP) mode, the driver is responsible for implementing regulatory domain support in the NIC. The driver should therefore treat any channel or frequency set by the operating system in OID_DOT11_CURRENT_CHANNEL or OID_DOT11_CURRENT_FREQUENCY to be only a suggestion. In response to query calls to these OIDs, the driver should return the actual channel or frequency values that the NIC is using. Whenever the driver adopts a channel or frequency, or it has started an AP, it should call the NdisMIndicateStatusEx function to make a DOT11_PHY_FREQUENCY_ADOPTED_PARAMETERS indication to the operating system.
If the miniport driver supports the functionality of multiple MAC entities through virtualization, the driver should not return NDIS_STATUS_DOT11_MEDIA_IN_USE if the medium is blocked by another MAC.
When the PHY is operating in 802.11n or 802.11ac mode, the miniport driver must report the primary channel when it completes the following:
Packet receive indications. For more information, see Media-Specific OOB Data for Received 802.11 Packets.
Query requests of OID_DOT11_CURRENT_CHANNEL.
Query requests of OID_DOT11_ENUM_BSS_LIST.
In this case, the miniport driver reports the primary channel in the PhySpecificInfo member of the DOT11_BSS_ENTRY structure. The driver returns this structure when it completes the query request of OID_DOT11_ENUM_BSS_LIST.
For more information about 802.11ac 20/40/80/160/80+80 MHz mode, refer to the IEEE P802.11ac standard (under development).
Note When the miniport driver receives an OID_DOT11_RESET_REQUEST method request the miniport driver must reset the dot11CurrentChannel and dot11CurrentPrimaryChannel MIB objects to their default values under the following conditions:
- When MIB values for the MAC and/or PHY are reset to their default values only if bSetDefaultMIB is set to TRUE.
- When MAC or PHY values are affected by the value of the dot11ResetType member.
Available in Windows Vista and later versions of the Windows operating systems.
|Windot11.h (include Ndis.h)|