diff --git a/src/wifi/model/wifi-phy-common.cc b/src/wifi/model/wifi-phy-common.cc index 4c66d3433..23437b91a 100644 --- a/src/wifi/model/wifi-phy-common.cc +++ b/src/wifi/model/wifi-phy-common.cc @@ -293,6 +293,7 @@ GetChannelWidthInMhz(WifiChannelWidthType width) case WifiChannelWidthType::CW_80MHZ: return 80; case WifiChannelWidthType::CW_160MHZ: + case WifiChannelWidthType::CW_80_PLUS_80MHZ: return 160; case WifiChannelWidthType::CW_2160MHZ: return 2160; diff --git a/src/wifi/model/wifi-phy-common.h b/src/wifi/model/wifi-phy-common.h index 304bbf7af..15fd991d3 100644 --- a/src/wifi/model/wifi-phy-common.h +++ b/src/wifi/model/wifi-phy-common.h @@ -565,6 +565,8 @@ operator<<(std::ostream& os, WifiChannelWidthType width) return (os << "80MHz"); case WifiChannelWidthType::CW_160MHZ: return (os << "160MHz"); + case WifiChannelWidthType::CW_80_PLUS_80MHZ: + return (os << "80+80MHz"); case WifiChannelWidthType::CW_2160MHZ: return (os << "2160MHz"); default: diff --git a/src/wifi/model/wifi-phy-operating-channel.cc b/src/wifi/model/wifi-phy-operating-channel.cc index db22cf2b2..a096639d9 100644 --- a/src/wifi/model/wifi-phy-operating-channel.cc +++ b/src/wifi/model/wifi-phy-operating-channel.cc @@ -493,7 +493,8 @@ WifiPhyOperatingChannel::GetWidthType() const case 80: return WifiChannelWidthType::CW_80MHZ; case 160: - return WifiChannelWidthType::CW_160MHZ; + return (m_channelIts.size() == 2) ? WifiChannelWidthType::CW_80_PLUS_80MHZ + : WifiChannelWidthType::CW_160MHZ; case 2160: return WifiChannelWidthType::CW_2160MHZ; case 0: diff --git a/src/wifi/model/wifi-types.h b/src/wifi/model/wifi-types.h index 52aeb938b..d8b6ca31a 100644 --- a/src/wifi/model/wifi-types.h +++ b/src/wifi/model/wifi-types.h @@ -41,6 +41,7 @@ enum class WifiChannelWidthType : uint8_t CW_40MHZ, CW_80MHZ, CW_160MHZ, + CW_80_PLUS_80MHZ, CW_2160MHZ, MAX, };