Merge "Uprev Wifi HAL to 1.3"

This commit is contained in:
Jong Wook Kim
2018-08-14 22:49:02 +00:00
committed by Android (Google) Code Review
51 changed files with 261 additions and 197 deletions

View File

@@ -437,7 +437,7 @@
</hal>
<hal format="hidl" optional="true">
<name>android.hardware.wifi</name>
<version>1.0-2</version>
<version>1.0-3</version>
<interface>
<name>IWifi</name>
<instance>default</instance>

20
wifi/1.3/Android.bp Normal file
View File

@@ -0,0 +1,20 @@
// This file is autogenerated by hidl-gen -Landroidbp.
hidl_interface {
name: "android.hardware.wifi@1.3",
root: "android.hardware",
vndk: {
enabled: true,
},
srcs: [
"IWifi.hal",
],
interfaces: [
"android.hardware.wifi@1.0",
"android.hardware.wifi@1.1",
"android.hardware.wifi@1.2",
"android.hidl.base@1.0",
],
gen_java: true,
}

28
wifi/1.3/IWifi.hal Normal file
View File

@@ -0,0 +1,28 @@
/*
* Copyright 2018 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.hardware.wifi@1.3;
import @1.2::IWifi;
/**
* This is the root of the HAL module and is the interface returned when
* loading an implementation of the Wi-Fi HAL. There must be at most one
* module loaded in the system.
* IWifi.getChip() must return @1.2::IWifiChip
*/
interface IWifi extends @1.2::IWifi {
};

View File

@@ -58,7 +58,8 @@ LOCAL_SHARED_LIBRARIES := \
libwifi-system-iface \
android.hardware.wifi@1.0 \
android.hardware.wifi@1.1 \
android.hardware.wifi@1.2
android.hardware.wifi@1.2 \
android.hardware.wifi@1.3
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
include $(BUILD_STATIC_LIBRARY)
@@ -84,7 +85,8 @@ LOCAL_SHARED_LIBRARIES := \
libwifi-system-iface \
android.hardware.wifi@1.0 \
android.hardware.wifi@1.1 \
android.hardware.wifi@1.2
android.hardware.wifi@1.2 \
android.hardware.wifi@1.3
LOCAL_STATIC_LIBRARIES := \
android.hardware.wifi@1.0-service-lib
LOCAL_INIT_RC := android.hardware.wifi@1.0-service.rc
@@ -120,5 +122,6 @@ LOCAL_SHARED_LIBRARIES := \
libwifi-system-iface \
android.hardware.wifi@1.0 \
android.hardware.wifi@1.1 \
android.hardware.wifi@1.2
android.hardware.wifi@1.2 \
android.hardware.wifi@1.3
include $(BUILD_NATIVE_TEST)

View File

@@ -52,7 +52,7 @@ class HidlDeathHandler : public android::hardware::hidl_death_recipient {
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace hidl_callback_util {
template <typename CallbackType>
@@ -117,7 +117,7 @@ class HidlCallbackHandler {
} // namespace hidl_callback_util
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -23,7 +23,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace hidl_return_util {
using namespace android::hardware::wifi::V1_0;
@@ -113,7 +113,7 @@ Return<void> validateAndCall(
} // namespace hidl_return_util
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -22,7 +22,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace hidl_struct_util {
@@ -69,9 +69,9 @@ convertLegacyLoggerFeatureToHidlStaIfaceCapability(uint32_t feature) {
return {};
}
IWifiChip::ChipCapabilityMask convertLegacyFeatureToHidlChipCapability(
V1_2::IWifiChip::ChipCapabilityMask convertLegacyFeatureToHidlChipCapability(
uint32_t feature) {
using HidlChipCaps = IWifiChip::ChipCapabilityMask;
using HidlChipCaps = V1_2::IWifiChip::ChipCapabilityMask;
switch (feature) {
case WIFI_FEATURE_SET_TX_POWER_LIMIT:
return HidlChipCaps::SET_TX_POWER_LIMIT;
@@ -139,9 +139,9 @@ bool convertLegacyFeaturesToHidlChipCapabilities(
convertLegacyLoggerFeatureToHidlChipCapability(feature);
}
}
for (const auto feature : {WIFI_FEATURE_SET_TX_POWER_LIMIT,
WIFI_FEATURE_USE_BODY_HEAD_SAR,
WIFI_FEATURE_D2D_RTT, WIFI_FEATURE_D2AP_RTT}) {
for (const auto feature :
{WIFI_FEATURE_SET_TX_POWER_LIMIT, WIFI_FEATURE_USE_BODY_HEAD_SAR,
WIFI_FEATURE_D2D_RTT, WIFI_FEATURE_D2AP_RTT}) {
if (feature & legacy_feature_set) {
*hidl_caps |= convertLegacyFeatureToHidlChipCapability(feature);
}
@@ -267,26 +267,26 @@ legacy_hal::wifi_power_scenario convertHidlTxPowerScenarioToLegacy(
V1_1::IWifiChip::TxPowerScenario hidl_scenario) {
switch (hidl_scenario) {
// This is the only supported scenario for V1_1
case V1_1::IWifiChip::TxPowerScenario::VOICE_CALL:
case V1_1::IWifiChip::TxPowerScenario::VOICE_CALL:
return legacy_hal::WIFI_POWER_SCENARIO_VOICE_CALL;
};
CHECK(false);
}
legacy_hal::wifi_power_scenario convertHidlTxPowerScenarioToLegacy_1_2(
IWifiChip::TxPowerScenario hidl_scenario) {
V1_2::IWifiChip::TxPowerScenario hidl_scenario) {
switch (hidl_scenario) {
// This is the only supported scenario for V1_1
case IWifiChip::TxPowerScenario::VOICE_CALL:
case V1_2::IWifiChip::TxPowerScenario::VOICE_CALL:
return legacy_hal::WIFI_POWER_SCENARIO_VOICE_CALL;
// Those are the supported scenarios for V1_2
case IWifiChip::TxPowerScenario::ON_HEAD_CELL_OFF:
case V1_2::IWifiChip::TxPowerScenario::ON_HEAD_CELL_OFF:
return legacy_hal::WIFI_POWER_SCENARIO_ON_HEAD_CELL_OFF;
case IWifiChip::TxPowerScenario::ON_HEAD_CELL_ON:
case V1_2::IWifiChip::TxPowerScenario::ON_HEAD_CELL_ON:
return legacy_hal::WIFI_POWER_SCENARIO_ON_HEAD_CELL_ON;
case IWifiChip::TxPowerScenario::ON_BODY_CELL_OFF:
case V1_2::IWifiChip::TxPowerScenario::ON_BODY_CELL_OFF:
return legacy_hal::WIFI_POWER_SCENARIO_ON_BODY_CELL_OFF;
case IWifiChip::TxPowerScenario::ON_BODY_CELL_ON:
case V1_2::IWifiChip::TxPowerScenario::ON_BODY_CELL_ON:
return legacy_hal::WIFI_POWER_SCENARIO_ON_BODY_CELL_ON;
};
CHECK(false);
@@ -294,7 +294,7 @@ legacy_hal::wifi_power_scenario convertHidlTxPowerScenarioToLegacy_1_2(
bool convertLegacyWifiMacInfoToHidl(
const legacy_hal::WifiMacInfo& legacy_mac_info,
IWifiChipEventCallback::RadioModeInfo* hidl_radio_mode_info) {
V1_2::IWifiChipEventCallback::RadioModeInfo* hidl_radio_mode_info) {
if (!hidl_radio_mode_info) {
return false;
}
@@ -313,9 +313,9 @@ bool convertLegacyWifiMacInfoToHidl(
} else {
hidl_radio_mode_info->bandInfo = WifiBand::BAND_UNSPECIFIED;
}
std::vector<IWifiChipEventCallback::IfaceInfo> iface_info_vec;
std::vector<V1_2::IWifiChipEventCallback::IfaceInfo> iface_info_vec;
for (const auto& legacy_iface_info : legacy_mac_info.iface_infos) {
IWifiChipEventCallback::IfaceInfo iface_info;
V1_2::IWifiChipEventCallback::IfaceInfo iface_info;
iface_info.name = legacy_iface_info.name;
iface_info.channel = legacy_iface_info.channel;
iface_info_vec.push_back(iface_info);
@@ -326,14 +326,15 @@ bool convertLegacyWifiMacInfoToHidl(
bool convertLegacyWifiMacInfosToHidl(
const std::vector<legacy_hal::WifiMacInfo>& legacy_mac_infos,
std::vector<IWifiChipEventCallback::RadioModeInfo>* hidl_radio_mode_infos) {
std::vector<V1_2::IWifiChipEventCallback::RadioModeInfo>*
hidl_radio_mode_infos) {
if (!hidl_radio_mode_infos) {
return false;
}
*hidl_radio_mode_infos = {};
for (const auto& legacy_mac_info : legacy_mac_infos) {
IWifiChipEventCallback::RadioModeInfo hidl_radio_mode_info;
V1_2::IWifiChipEventCallback::RadioModeInfo hidl_radio_mode_info;
if (!convertLegacyWifiMacInfoToHidl(legacy_mac_info,
&hidl_radio_mode_info)) {
return false;
@@ -1197,7 +1198,7 @@ bool convertHidlNanEnableRequestToLegacy(
bool convertHidlNanEnableRequest_1_2ToLegacy(
const NanEnableRequest& hidl_request1,
const NanConfigRequestSupplemental& hidl_request2,
const V1_2::NanConfigRequestSupplemental& hidl_request2,
legacy_hal::NanEnableRequest* legacy_request) {
if (!legacy_request) {
LOG(ERROR)
@@ -1708,7 +1709,7 @@ bool convertHidlNanConfigRequestToLegacy(
bool convertHidlNanConfigRequest_1_2ToLegacy(
const NanConfigRequest& hidl_request1,
const NanConfigRequestSupplemental& hidl_request2,
const V1_2::NanConfigRequestSupplemental& hidl_request2,
legacy_hal::NanConfigRequest* legacy_request) {
if (!legacy_request) {
LOG(ERROR) << "convertHidlNanConfigRequest_1_2ToLegacy: legacy_request "
@@ -2039,7 +2040,7 @@ bool convertLegacyNanDataPathRequestIndToHidl(
bool convertLegacyNdpChannelInfoToHidl(
const legacy_hal::NanChannelInfo& legacy_struct,
NanDataPathChannelInfo* hidl_struct) {
V1_2::NanDataPathChannelInfo* hidl_struct) {
if (!hidl_struct) {
LOG(ERROR) << "convertLegacyNdpChannelInfoToHidl: hidl_struct is null";
return false;
@@ -2056,7 +2057,7 @@ bool convertLegacyNdpChannelInfoToHidl(
bool convertLegacyNanDataPathConfirmIndToHidl(
const legacy_hal::NanDataPathConfirmInd& legacy_ind,
NanDataPathConfirmInd* hidl_ind) {
V1_2::NanDataPathConfirmInd* hidl_ind) {
if (!hidl_ind) {
LOG(ERROR)
<< "convertLegacyNanDataPathConfirmIndToHidl: hidl_ind is null";
@@ -2077,9 +2078,9 @@ bool convertLegacyNanDataPathConfirmIndToHidl(
convertLegacyNanStatusTypeToHidl(legacy_ind.reason_code);
hidl_ind->V1_0.status.description = ""; // TODO: b/34059183
std::vector<NanDataPathChannelInfo> channelInfo;
std::vector<V1_2::NanDataPathChannelInfo> channelInfo;
for (unsigned int i = 0; i < legacy_ind.num_channels; ++i) {
NanDataPathChannelInfo hidl_struct;
V1_2::NanDataPathChannelInfo hidl_struct;
if (!convertLegacyNdpChannelInfoToHidl(legacy_ind.channel_info[i],
&hidl_struct)) {
return false;
@@ -2093,7 +2094,7 @@ bool convertLegacyNanDataPathConfirmIndToHidl(
bool convertLegacyNanDataPathScheduleUpdateIndToHidl(
const legacy_hal::NanDataPathScheduleUpdateInd& legacy_ind,
NanDataPathScheduleUpdateInd* hidl_ind) {
V1_2::NanDataPathScheduleUpdateInd* hidl_ind) {
if (!hidl_ind) {
LOG(ERROR) << "convertLegacyNanDataPathScheduleUpdateIndToHidl: "
"hidl_ind is null";
@@ -2103,9 +2104,9 @@ bool convertLegacyNanDataPathScheduleUpdateIndToHidl(
hidl_ind->peerDiscoveryAddress =
hidl_array<uint8_t, 6>(legacy_ind.peer_mac_addr);
std::vector<NanDataPathChannelInfo> channelInfo;
std::vector<V1_2::NanDataPathChannelInfo> channelInfo;
for (unsigned int i = 0; i < legacy_ind.num_channels; ++i) {
NanDataPathChannelInfo hidl_struct;
V1_2::NanDataPathChannelInfo hidl_struct;
if (!convertLegacyNdpChannelInfoToHidl(legacy_ind.channel_info[i],
&hidl_struct)) {
return false;
@@ -2616,7 +2617,7 @@ bool convertLegacyVectorOfRttResultToHidl(
}
} // namespace hidl_struct_util
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -36,7 +36,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace hidl_struct_util {
using namespace android::hardware::wifi::V1_0;
@@ -57,10 +57,11 @@ bool convertLegacyWakeReasonStatsToHidl(
legacy_hal::wifi_power_scenario convertHidlTxPowerScenarioToLegacy(
V1_1::IWifiChip::TxPowerScenario hidl_scenario);
legacy_hal::wifi_power_scenario convertHidlTxPowerScenarioToLegacy_1_2(
IWifiChip::TxPowerScenario hidl_scenario);
V1_2::IWifiChip::TxPowerScenario hidl_scenario);
bool convertLegacyWifiMacInfosToHidl(
const std::vector<legacy_hal::WifiMacInfo>& legacy_mac_infos,
std::vector<IWifiChipEventCallback::RadioModeInfo>* hidl_radio_mode_infos);
std::vector<V1_2::IWifiChipEventCallback::RadioModeInfo>*
hidl_radio_mode_infos);
// STA iface conversion methods.
bool convertLegacyFeaturesToHidlStaCapabilities(
@@ -115,11 +116,11 @@ bool convertHidlNanConfigRequestToLegacy(
legacy_hal::NanConfigRequest* legacy_request);
bool convertHidlNanEnableRequest_1_2ToLegacy(
const NanEnableRequest& hidl_request1,
const NanConfigRequestSupplemental& hidl_request2,
const V1_2::NanConfigRequestSupplemental& hidl_request2,
legacy_hal::NanEnableRequest* legacy_request);
bool convertHidlNanConfigRequest_1_2ToLegacy(
const NanConfigRequest& hidl_request1,
const NanConfigRequestSupplemental& hidl_request2,
const V1_2::NanConfigRequestSupplemental& hidl_request2,
legacy_hal::NanConfigRequest* legacy_request);
bool convertHidlNanPublishRequestToLegacy(
const NanPublishRequest& hidl_request,
@@ -152,10 +153,10 @@ bool convertLegacyNanDataPathRequestIndToHidl(
NanDataPathRequestInd* hidl_ind);
bool convertLegacyNanDataPathConfirmIndToHidl(
const legacy_hal::NanDataPathConfirmInd& legacy_ind,
NanDataPathConfirmInd* hidl_ind);
V1_2::NanDataPathConfirmInd* hidl_ind);
bool convertLegacyNanDataPathScheduleUpdateIndToHidl(
const legacy_hal::NanDataPathScheduleUpdateInd& legacy_ind,
NanDataPathScheduleUpdateInd* hidl_ind);
V1_2::NanDataPathScheduleUpdateInd* hidl_ind);
// RTT controller conversion methods.
bool convertHidlVectorOfRttConfigToLegacy(
@@ -184,7 +185,7 @@ bool convertLegacyVectorOfRttResultToHidl(
std::vector<RttResult>* hidl_results);
} // namespace hidl_struct_util
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -23,7 +23,7 @@ std::recursive_mutex g_mutex;
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace hidl_sync_util {
@@ -33,7 +33,7 @@ std::unique_lock<std::recursive_mutex> acquireGlobalLock() {
} // namespace hidl_sync_util
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,13 +24,13 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace hidl_sync_util {
std::unique_lock<std::recursive_mutex> acquireGlobalLock();
} // namespace hidl_sync_util
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -21,7 +21,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
Ringbuffer::Ringbuffer(size_t maxSize) : size_(0), maxSize_(maxSize) {}
@@ -48,7 +48,7 @@ const std::list<std::vector<uint8_t>>& Ringbuffer::getData() const {
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -23,7 +23,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
/**
@@ -45,7 +45,7 @@ class Ringbuffer {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -26,10 +26,10 @@
using android::hardware::configureRpcThreadpool;
using android::hardware::joinRpcThreadpool;
using android::hardware::wifi::V1_2::implementation::feature_flags::
using android::hardware::wifi::V1_3::implementation::feature_flags::
WifiFeatureFlags;
using android::hardware::wifi::V1_2::implementation::legacy_hal::WifiLegacyHal;
using android::hardware::wifi::V1_2::implementation::mode_controller::
using android::hardware::wifi::V1_3::implementation::legacy_hal::WifiLegacyHal;
using android::hardware::wifi::V1_3::implementation::mode_controller::
WifiModeController;
int main(int /*argc*/, char** argv) {
@@ -40,8 +40,8 @@ int main(int /*argc*/, char** argv) {
configureRpcThreadpool(1, true /* callerWillJoin */);
// Setup hwbinder service
android::sp<android::hardware::wifi::V1_2::IWifi> service =
new android::hardware::wifi::V1_2::implementation::Wifi(
android::sp<android::hardware::wifi::V1_3::IWifi> service =
new android::hardware::wifi::V1_3::implementation::Wifi(
std::make_shared<WifiLegacyHal>(),
std::make_shared<WifiModeController>(),
std::make_shared<WifiFeatureFlags>());

View File

@@ -34,7 +34,7 @@ constexpr char kIfaceName2[] = "wlan1";
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -54,7 +54,8 @@ TEST_F(HidlStructUtilTest, CanConvertLegacyWifiMacInfosToHidlWithOneMac) {
legacy_mac_info1.iface_infos.push_back(legacy_iface_info2);
legacy_mac_infos.push_back(legacy_mac_info1);
std::vector<IWifiChipEventCallback::RadioModeInfo> hidl_radio_mode_infos;
std::vector<V1_2::IWifiChipEventCallback::RadioModeInfo>
hidl_radio_mode_infos;
ASSERT_TRUE(hidl_struct_util::convertLegacyWifiMacInfosToHidl(
legacy_mac_infos, &hidl_radio_mode_infos));
@@ -88,18 +89,20 @@ TEST_F(HidlStructUtilTest, CanConvertLegacyWifiMacInfosToHidlWithTwoMac) {
legacy_mac_info2.iface_infos.push_back(legacy_iface_info2);
legacy_mac_infos.push_back(legacy_mac_info2);
std::vector<IWifiChipEventCallback::RadioModeInfo> hidl_radio_mode_infos;
std::vector<V1_2::IWifiChipEventCallback::RadioModeInfo>
hidl_radio_mode_infos;
ASSERT_TRUE(hidl_struct_util::convertLegacyWifiMacInfosToHidl(
legacy_mac_infos, &hidl_radio_mode_infos));
ASSERT_EQ(2u, hidl_radio_mode_infos.size());
// Find mac info 1.
const auto hidl_radio_mode_info1 = std::find_if(
hidl_radio_mode_infos.begin(), hidl_radio_mode_infos.end(),
[&legacy_mac_info1](const IWifiChipEventCallback::RadioModeInfo& x) {
return x.radioId == legacy_mac_info1.wlan_mac_id;
});
const auto hidl_radio_mode_info1 =
std::find_if(hidl_radio_mode_infos.begin(), hidl_radio_mode_infos.end(),
[&legacy_mac_info1](
const V1_2::IWifiChipEventCallback::RadioModeInfo& x) {
return x.radioId == legacy_mac_info1.wlan_mac_id;
});
ASSERT_NE(hidl_radio_mode_infos.end(), hidl_radio_mode_info1);
EXPECT_EQ(WifiBand::BAND_5GHZ, hidl_radio_mode_info1->bandInfo);
ASSERT_EQ(1u, hidl_radio_mode_info1->ifaceInfos.size());
@@ -109,11 +112,12 @@ TEST_F(HidlStructUtilTest, CanConvertLegacyWifiMacInfosToHidlWithTwoMac) {
hidl_iface_info1.channel);
// Find mac info 2.
const auto hidl_radio_mode_info2 = std::find_if(
hidl_radio_mode_infos.begin(), hidl_radio_mode_infos.end(),
[&legacy_mac_info2](const IWifiChipEventCallback::RadioModeInfo& x) {
return x.radioId == legacy_mac_info2.wlan_mac_id;
});
const auto hidl_radio_mode_info2 =
std::find_if(hidl_radio_mode_infos.begin(), hidl_radio_mode_infos.end(),
[&legacy_mac_info2](
const V1_2::IWifiChipEventCallback::RadioModeInfo& x) {
return x.radioId == legacy_mac_info2.wlan_mac_id;
});
ASSERT_NE(hidl_radio_mode_infos.end(), hidl_radio_mode_info2);
EXPECT_EQ(WifiBand::BAND_24GHZ, hidl_radio_mode_info2->bandInfo);
ASSERT_EQ(1u, hidl_radio_mode_info2->ifaceInfos.size());
@@ -123,7 +127,7 @@ TEST_F(HidlStructUtilTest, CanConvertLegacyWifiMacInfosToHidlWithTwoMac) {
hidl_iface_info2.channel);
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -21,7 +21,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace feature_flags {
@@ -29,7 +29,7 @@ MockWifiFeatureFlags::MockWifiFeatureFlags() {}
} // namespace feature_flags
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace feature_flags {
@@ -39,7 +39,7 @@ class MockWifiFeatureFlags : public WifiFeatureFlags {
} // namespace feature_flags
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,14 +24,14 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace legacy_hal {
MockWifiLegacyHal::MockWifiLegacyHal() : WifiLegacyHal() {}
} // namespace legacy_hal
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace legacy_hal {
@@ -49,7 +49,7 @@ class MockWifiLegacyHal : public WifiLegacyHal {
};
} // namespace legacy_hal
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,14 +24,14 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace mode_controller {
MockWifiModeController::MockWifiModeController() : WifiModeController() {}
} // namespace mode_controller
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace mode_controller {
@@ -38,7 +38,7 @@ class MockWifiModeController : public WifiModeController {
};
} // namespace mode_controller
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@ using testing::Test;
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
class RingbufferTest : public Test {
@@ -91,7 +91,7 @@ TEST_F(RingbufferTest, OversizedAppendDoesNotDropExistingData) {
EXPECT_EQ(input, buffer_.getData().front());
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -38,7 +38,7 @@ constexpr ChipId kFakeChipId = 5;
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
class WifiChipTest : public Test {
@@ -542,38 +542,38 @@ TEST_F(WifiChipV2_AwareIfaceCombinationTest,
////////// V1 Iface Combinations when AP creation is disabled //////////
class WifiChipV1_AwareDisabledApIfaceCombinationTest : public WifiChipTest {
public:
void SetUp() override {
setupV1_AwareDisabledApIfaceCombination();
WifiChipTest::SetUp();
}
public:
void SetUp() override {
setupV1_AwareDisabledApIfaceCombination();
WifiChipTest::SetUp();
}
};
TEST_F(WifiChipV1_AwareDisabledApIfaceCombinationTest,
StaMode_CreateSta_ShouldSucceed) {
findModeAndConfigureForIfaceType(IfaceType::STA);
ASSERT_FALSE(createIface(IfaceType::STA).empty());
ASSERT_TRUE(createIface(IfaceType::AP).empty());
findModeAndConfigureForIfaceType(IfaceType::STA);
ASSERT_FALSE(createIface(IfaceType::STA).empty());
ASSERT_TRUE(createIface(IfaceType::AP).empty());
}
////////// V2 Iface Combinations when AP creation is disabled //////////
class WifiChipV2_AwareDisabledApIfaceCombinationTest: public WifiChipTest {
public:
void SetUp() override {
setupV2_AwareDisabledApIfaceCombination();
WifiChipTest::SetUp();
}
class WifiChipV2_AwareDisabledApIfaceCombinationTest : public WifiChipTest {
public:
void SetUp() override {
setupV2_AwareDisabledApIfaceCombination();
WifiChipTest::SetUp();
}
};
TEST_F(WifiChipV2_AwareDisabledApIfaceCombinationTest,
CreateSta_ShouldSucceed) {
findModeAndConfigureForIfaceType(IfaceType::STA);
ASSERT_FALSE(createIface(IfaceType::STA).empty());
ASSERT_TRUE(createIface(IfaceType::AP).empty());
findModeAndConfigureForIfaceType(IfaceType::STA);
ASSERT_FALSE(createIface(IfaceType::STA).empty());
ASSERT_TRUE(createIface(IfaceType::AP).empty());
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -28,7 +28,7 @@ static constexpr android::hardware::wifi::V1_0::ChipId kChipId = 0;
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
using hidl_return_util::validateAndCallWithLock;
@@ -206,7 +206,7 @@ WifiStatus Wifi::stopLegacyHalAndDeinitializeModeController(
return createWifiStatus(WifiStatusCode::SUCCESS);
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -20,7 +20,7 @@
#include <functional>
#include <android-base/macros.h>
#include <android/hardware/wifi/1.2/IWifi.h>
#include <android/hardware/wifi/1.3/IWifi.h>
#include <utils/Looper.h>
#include "hidl_callback_util.h"
@@ -32,13 +32,13 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
/**
* Root HIDL interface object used to control the Wifi HAL.
*/
class Wifi : public V1_2::IWifi {
class Wifi : public V1_3::IWifi {
public:
Wifi(const std::shared_ptr<legacy_hal::WifiLegacyHal> legacy_hal,
const std::shared_ptr<mode_controller::WifiModeController>
@@ -88,7 +88,7 @@ class Wifi : public V1_2::IWifi {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
@@ -93,7 +93,7 @@ WifiApIface::getValidFrequenciesForBandInternal(WifiBand band) {
return {createWifiStatusFromLegacyError(legacy_status), valid_frequencies};
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -25,7 +25,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -65,7 +65,7 @@ class WifiApIface : public V1_0::IWifiApIface {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -28,13 +28,13 @@
#include "wifi_status_util.h"
namespace {
using android::sp;
using android::base::unique_fd;
using android::hardware::hidl_string;
using android::hardware::hidl_vec;
using android::hardware::wifi::V1_0::ChipModeId;
using android::hardware::wifi::V1_0::IfaceType;
using android::hardware::wifi::V1_0::IWifiChip;
using android::sp;
constexpr ChipModeId kInvalidModeId = UINT32_MAX;
// These mode ID's should be unique (even across combo versions). Refer to
@@ -304,7 +304,7 @@ std::vector<char> makeCharVec(const std::string& str) {
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
using hidl_return_util::validateAndCallWithLock;
@@ -335,7 +335,7 @@ void WifiChip::invalidate() {
bool WifiChip::isValid() { return is_valid_; }
std::set<sp<IWifiChipEventCallback>> WifiChip::getEventCallbacks() {
std::set<sp<V1_2::IWifiChipEventCallback>> WifiChip::getEventCallbacks() {
return event_cb_handler_.getCallbacks();
}
@@ -344,6 +344,7 @@ Return<void> WifiChip::getId(getId_cb hidl_status_cb) {
&WifiChip::getIdInternal, hidl_status_cb);
}
// Deprecated support for this callback
Return<void> WifiChip::registerEventCallback(
const sp<V1_0::IWifiChipEventCallback>& event_callback,
registerEventCallback_cb hidl_status_cb) {
@@ -546,7 +547,8 @@ Return<void> WifiChip::enableDebugErrorAlerts(
}
Return<void> WifiChip::selectTxPowerScenario(
V1_1::IWifiChip::TxPowerScenario scenario, selectTxPowerScenario_cb hidl_status_cb) {
V1_1::IWifiChip::TxPowerScenario scenario,
selectTxPowerScenario_cb hidl_status_cb) {
return validateAndCall(this, WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
&WifiChip::selectTxPowerScenarioInternal,
hidl_status_cb, scenario);
@@ -560,7 +562,7 @@ Return<void> WifiChip::resetTxPowerScenario(
}
Return<void> WifiChip::registerEventCallback_1_2(
const sp<IWifiChipEventCallback>& event_callback,
const sp<V1_2::IWifiChipEventCallback>& event_callback,
registerEventCallback_cb hidl_status_cb) {
return validateAndCall(this, WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
&WifiChip::registerEventCallbackInternal_1_2,
@@ -568,9 +570,10 @@ Return<void> WifiChip::registerEventCallback_1_2(
}
Return<void> WifiChip::selectTxPowerScenario_1_2(
TxPowerScenario scenario, selectTxPowerScenario_cb hidl_status_cb) {
TxPowerScenario scenario, selectTxPowerScenario_cb hidl_status_cb) {
return validateAndCall(this, WifiStatusCode::ERROR_WIFI_CHIP_INVALID,
&WifiChip::selectTxPowerScenarioInternal_1_2, hidl_status_cb, scenario);
&WifiChip::selectTxPowerScenarioInternal_1_2,
hidl_status_cb, scenario);
}
Return<void> WifiChip::debug(const hidl_handle& handle,
@@ -1036,7 +1039,7 @@ WifiStatus WifiChip::enableDebugErrorAlertsInternal(bool enable) {
}
WifiStatus WifiChip::selectTxPowerScenarioInternal(
V1_1::IWifiChip::TxPowerScenario scenario) {
V1_1::IWifiChip::TxPowerScenario scenario) {
auto legacy_status = legacy_hal_.lock()->selectTxPowerScenario(
getWlan0IfaceName(),
hidl_struct_util::convertHidlTxPowerScenarioToLegacy(scenario));
@@ -1050,14 +1053,15 @@ WifiStatus WifiChip::resetTxPowerScenarioInternal() {
}
WifiStatus WifiChip::registerEventCallbackInternal_1_2(
const sp<IWifiChipEventCallback>& event_callback) {
const sp<V1_2::IWifiChipEventCallback>& event_callback) {
if (!event_cb_handler_.addCallback(event_callback)) {
return createWifiStatus(WifiStatusCode::ERROR_UNKNOWN);
}
return createWifiStatus(WifiStatusCode::SUCCESS);
}
WifiStatus WifiChip::selectTxPowerScenarioInternal_1_2(TxPowerScenario scenario) {
WifiStatus WifiChip::selectTxPowerScenarioInternal_1_2(
TxPowerScenario scenario) {
auto legacy_status = legacy_hal_.lock()->selectTxPowerScenario(
getWlan0IfaceName(),
hidl_struct_util::convertHidlTxPowerScenarioToLegacy_1_2(scenario));
@@ -1156,7 +1160,7 @@ WifiStatus WifiChip::registerRadioModeChangeCallback() {
LOG(ERROR) << "Callback invoked on an invalid object";
return;
}
std::vector<IWifiChipEventCallback::RadioModeInfo>
std::vector<V1_2::IWifiChipEventCallback::RadioModeInfo>
hidl_radio_mode_infos;
if (!hidl_struct_util::convertLegacyWifiMacInfosToHidl(
mac_infos, &hidl_radio_mode_infos)) {
@@ -1212,15 +1216,14 @@ void WifiChip::populateModes() {
const IWifiChip::ChipIfaceCombination chip_iface_combination_2 = {
{chip_iface_combination_limit_1, chip_iface_combination_limit_3}};
if (feature_flags_.lock()->isApDisabled()) {
const IWifiChip::ChipMode chip_mode = {
kV2ChipModeId,
{chip_iface_combination_2}};
modes_ = {chip_mode};
const IWifiChip::ChipMode chip_mode = {kV2ChipModeId,
{chip_iface_combination_2}};
modes_ = {chip_mode};
} else {
const IWifiChip::ChipMode chip_mode = {
kV2ChipModeId,
{chip_iface_combination_1, chip_iface_combination_2}};
modes_ = {chip_mode};
const IWifiChip::ChipMode chip_mode = {
kV2ChipModeId,
{chip_iface_combination_1, chip_iface_combination_2}};
modes_ = {chip_mode};
}
} else {
// V1 Iface combinations for Mode Id = 0. (STA Mode)
@@ -1246,9 +1249,9 @@ void WifiChip::populateModes() {
const IWifiChip::ChipMode ap_chip_mode = {kV1ApChipModeId,
{ap_chip_iface_combination}};
if (feature_flags_.lock()->isApDisabled()) {
modes_ = {sta_chip_mode};
modes_ = {sta_chip_mode};
} else {
modes_ = {sta_chip_mode, ap_chip_mode};
modes_ = {sta_chip_mode, ap_chip_mode};
}
}
}
@@ -1415,7 +1418,7 @@ bool WifiChip::writeRingbufferFilesInternal() {
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -37,7 +37,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -69,10 +69,11 @@ class WifiChip : public V1_2::IWifiChip {
// marked valid before processing them.
void invalidate();
bool isValid();
std::set<sp<IWifiChipEventCallback>> getEventCallbacks();
std::set<sp<V1_2::IWifiChipEventCallback>> getEventCallbacks();
// HIDL methods exposed.
Return<void> getId(getId_cb hidl_status_cb) override;
// Deprecated support for this callback
Return<void> registerEventCallback(
const sp<V1_0::IWifiChipEventCallback>& event_callback,
registerEventCallback_cb hidl_status_cb) override;
@@ -137,18 +138,20 @@ class WifiChip : public V1_2::IWifiChip {
Return<void> resetTxPowerScenario(
resetTxPowerScenario_cb hidl_status_cb) override;
Return<void> registerEventCallback_1_2(
const sp<IWifiChipEventCallback>& event_callback,
const sp<V1_2::IWifiChipEventCallback>& event_callback,
registerEventCallback_1_2_cb hidl_status_cb) override;
Return<void> selectTxPowerScenario_1_2(
TxPowerScenario scenario,
selectTxPowerScenario_cb hidl_status_cb) override;
Return<void> debug(const hidl_handle& handle,
const hidl_vec<hidl_string>& options) override;
private:
void invalidateAndRemoveAllIfaces();
// Corresponding worker functions for the HIDL methods.
std::pair<WifiStatus, ChipId> getIdInternal();
// Deprecated support for this callback
WifiStatus registerEventCallbackInternal(
const sp<V1_0::IWifiChipEventCallback>& event_callback);
std::pair<WifiStatus, uint32_t> getCapabilitiesInternal();
@@ -195,10 +198,11 @@ class WifiChip : public V1_2::IWifiChip {
std::pair<WifiStatus, WifiDebugHostWakeReasonStats>
getDebugHostWakeReasonStatsInternal();
WifiStatus enableDebugErrorAlertsInternal(bool enable);
WifiStatus selectTxPowerScenarioInternal(V1_1::IWifiChip::TxPowerScenario scenario);
WifiStatus selectTxPowerScenarioInternal(
V1_1::IWifiChip::TxPowerScenario scenario);
WifiStatus resetTxPowerScenarioInternal();
WifiStatus registerEventCallbackInternal_1_2(
const sp<IWifiChipEventCallback>& event_callback);
const sp<V1_2::IWifiChipEventCallback>& event_callback);
WifiStatus selectTxPowerScenarioInternal_1_2(TxPowerScenario scenario);
WifiStatus handleChipConfiguration(
std::unique_lock<std::recursive_mutex>* lock, ChipModeId mode_id);
@@ -236,14 +240,14 @@ class WifiChip : public V1_2::IWifiChip {
// registration mechanism. Use this to check if we have already
// registered a callback.
bool debug_ring_buffer_cb_registered_;
hidl_callback_util::HidlCallbackHandler<IWifiChipEventCallback>
hidl_callback_util::HidlCallbackHandler<V1_2::IWifiChipEventCallback>
event_cb_handler_;
DISALLOW_COPY_AND_ASSIGN(WifiChip);
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -38,7 +38,7 @@ static const bool wifiHidlFeatureDisableAp = false;
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace feature_flags {
@@ -47,13 +47,11 @@ bool WifiFeatureFlags::isAwareSupported() { return wifiHidlFeatureAware; }
bool WifiFeatureFlags::isDualInterfaceSupported() {
return wifiHidlFeatureDualInterface;
}
bool WifiFeatureFlags::isApDisabled() {
return wifiHidlFeatureDisableAp;
}
bool WifiFeatureFlags::isApDisabled() { return wifiHidlFeatureDisableAp; }
} // namespace feature_flags
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -20,7 +20,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace feature_flags {
@@ -36,7 +36,7 @@ class WifiFeatureFlags {
} // namespace feature_flags
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -48,7 +48,7 @@ std::vector<char> makeCharVec(const std::string& str) {
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace legacy_hal {
// Legacy HAL functions accept "C" style function pointers, so use global
@@ -1417,7 +1417,7 @@ void WifiLegacyHal::invalidate() {
} // namespace legacy_hal
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -27,14 +27,15 @@
// HACK: The include inside the namespace below also transitively includes a
// bunch of libc headers into the namespace, which leads to functions like
// socketpair being defined in android::hardware::wifi::V1_1::implementation::legacy_hal.
// Include this one particular header as a hacky workaround until that's fixed.
// socketpair being defined in
// android::hardware::wifi::V1_1::implementation::legacy_hal. Include this one
// particular header as a hacky workaround until that's fixed.
#include <sys/socket.h>
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
// This is in a separate namespace to prevent typename conflicts between
// the legacy HAL types and the HIDL interface types.
@@ -106,7 +107,8 @@ struct NanCallbackHandlers {
on_event_transmit_follow_up;
std::function<void(const NanRangeRequestInd&)> on_event_range_request;
std::function<void(const NanRangeReportInd&)> on_event_range_report;
std::function<void(const NanDataPathScheduleUpdateInd&)> on_event_schedule_update;
std::function<void(const NanDataPathScheduleUpdateInd&)>
on_event_schedule_update;
};
// Full scan results contain IE info and are hence passed by reference, to
@@ -389,7 +391,7 @@ class WifiLegacyHal {
} // namespace legacy_hal
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -20,7 +20,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace legacy_hal {
template <typename>
@@ -141,7 +141,7 @@ bool initHalFuncTableWithStubs(wifi_hal_fn* hal_fn) {
}
} // namespace legacy_hal
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -20,7 +20,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace legacy_hal {
#include <hardware_legacy/wifi_hal.h>
@@ -28,7 +28,7 @@ namespace legacy_hal {
bool initHalFuncTableWithStubs(wifi_hal_fn* hal_fn);
} // namespace legacy_hal
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -48,7 +48,7 @@ int convertIfaceTypeToFirmwareMode(IfaceType type) {
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace mode_controller {
@@ -85,7 +85,7 @@ bool WifiModeController::deinitialize() {
}
} // namespace mode_controller
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
namespace mode_controller {
using namespace android::hardware::wifi::V1_0;
@@ -55,7 +55,7 @@ class WifiModeController {
} // namespace mode_controller
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
@@ -420,7 +420,7 @@ WifiNanIface::WifiNanIface(
LOG(ERROR) << "Callback invoked on an invalid object";
return;
}
NanDataPathConfirmInd hidl_struct;
V1_2::NanDataPathConfirmInd hidl_struct;
if (!hidl_struct_util::convertLegacyNanDataPathConfirmIndToHidl(
msg, &hidl_struct)) {
LOG(ERROR) << "Failed to convert nan capabilities response";
@@ -477,7 +477,7 @@ WifiNanIface::WifiNanIface(
LOG(ERROR) << "Callback invoked on an invalid object";
return;
}
NanDataPathScheduleUpdateInd hidl_struct;
V1_2::NanDataPathScheduleUpdateInd hidl_struct;
if (!hidl_struct_util::convertLegacyNanDataPathScheduleUpdateIndToHidl(
msg, &hidl_struct)) {
LOG(ERROR) << "Failed to convert nan capabilities response";
@@ -655,7 +655,7 @@ Return<void> WifiNanIface::terminateDataPathRequest(
}
Return<void> WifiNanIface::registerEventCallback_1_2(
const sp<IWifiNanIfaceEventCallback>& callback,
const sp<V1_2::IWifiNanIfaceEventCallback>& callback,
registerEventCallback_1_2_cb hidl_status_cb) {
return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
&WifiNanIface::registerEventCallback_1_2Internal,
@@ -664,7 +664,7 @@ Return<void> WifiNanIface::registerEventCallback_1_2(
Return<void> WifiNanIface::enableRequest_1_2(
uint16_t cmd_id, const NanEnableRequest& msg1,
const NanConfigRequestSupplemental& msg2,
const V1_2::NanConfigRequestSupplemental& msg2,
enableRequest_1_2_cb hidl_status_cb) {
return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
&WifiNanIface::enableRequest_1_2Internal,
@@ -673,7 +673,7 @@ Return<void> WifiNanIface::enableRequest_1_2(
Return<void> WifiNanIface::configRequest_1_2(
uint16_t cmd_id, const NanConfigRequest& msg1,
const NanConfigRequestSupplemental& msg2,
const V1_2::NanConfigRequestSupplemental& msg2,
configRequest_1_2_cb hidl_status_cb) {
return validateAndCall(this, WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
&WifiNanIface::configRequest_1_2Internal,
@@ -832,7 +832,7 @@ WifiStatus WifiNanIface::registerEventCallback_1_2Internal(
WifiStatus WifiNanIface::enableRequest_1_2Internal(
uint16_t cmd_id, const NanEnableRequest& msg1,
const NanConfigRequestSupplemental& msg2) {
const V1_2::NanConfigRequestSupplemental& msg2) {
legacy_hal::NanEnableRequest legacy_msg;
if (!hidl_struct_util::convertHidlNanEnableRequest_1_2ToLegacy(
msg1, msg2, &legacy_msg)) {
@@ -845,7 +845,7 @@ WifiStatus WifiNanIface::enableRequest_1_2Internal(
WifiStatus WifiNanIface::configRequest_1_2Internal(
uint16_t cmd_id, const NanConfigRequest& msg1,
const NanConfigRequestSupplemental& msg2) {
const V1_2::NanConfigRequestSupplemental& msg2) {
legacy_hal::NanConfigRequest legacy_msg;
if (!hidl_struct_util::convertHidlNanConfigRequest_1_2ToLegacy(
msg1, msg2, &legacy_msg)) {
@@ -857,7 +857,7 @@ WifiStatus WifiNanIface::configRequest_1_2Internal(
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -27,7 +27,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -89,15 +89,15 @@ class WifiNanIface : public V1_2::IWifiNanIface {
terminateDataPathRequest_cb hidl_status_cb) override;
Return<void> registerEventCallback_1_2(
const sp<IWifiNanIfaceEventCallback>& callback,
const sp<V1_2::IWifiNanIfaceEventCallback>& callback,
registerEventCallback_1_2_cb hidl_status_cb) override;
Return<void> enableRequest_1_2(
uint16_t cmd_id, const NanEnableRequest& msg1,
const NanConfigRequestSupplemental& msg2,
const V1_2::NanConfigRequestSupplemental& msg2,
enableRequest_1_2_cb hidl_status_cb) override;
Return<void> configRequest_1_2(
uint16_t cmd_id, const NanConfigRequest& msg1,
const NanConfigRequestSupplemental& msg2,
const V1_2::NanConfigRequestSupplemental& msg2,
configRequest_1_2_cb hidl_status_cb) override;
private:
@@ -135,10 +135,10 @@ class WifiNanIface : public V1_2::IWifiNanIface {
const sp<V1_2::IWifiNanIfaceEventCallback>& callback);
WifiStatus enableRequest_1_2Internal(
uint16_t cmd_id, const NanEnableRequest& msg1,
const NanConfigRequestSupplemental& msg2);
const V1_2::NanConfigRequestSupplemental& msg2);
WifiStatus configRequest_1_2Internal(
uint16_t cmd_id, const NanConfigRequest& msg,
const NanConfigRequestSupplemental& msg2);
const V1_2::NanConfigRequestSupplemental& msg2);
// all 1_0 and descendant callbacks
std::set<sp<V1_0::IWifiNanIfaceEventCallback>> getEventCallbacks();
@@ -157,7 +157,7 @@ class WifiNanIface : public V1_2::IWifiNanIface {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -23,7 +23,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
@@ -60,7 +60,7 @@ std::pair<WifiStatus, IfaceType> WifiP2pIface::getTypeInternal() {
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -25,7 +25,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -58,7 +58,7 @@ class WifiP2pIface : public V1_0::IWifiP2pIface {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
@@ -269,7 +269,7 @@ WifiStatus WifiRttController::disableResponderInternal(uint32_t cmd_id) {
return createWifiStatusFromLegacyError(legacy_status);
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -27,7 +27,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
/**
@@ -97,7 +97,7 @@ class WifiRttController : public V1_0::IWifiRttController {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using hidl_return_util::validateAndCall;
@@ -622,7 +622,7 @@ WifiStatus WifiStaIface::setMacAddressInternal(
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -29,7 +29,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -163,7 +163,7 @@ class WifiStaIface : public V1_2::IWifiStaIface {
};
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -19,7 +19,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
std::string legacyErrorToString(legacy_hal::wifi_error error) {
@@ -100,7 +100,7 @@ WifiStatus createWifiStatusFromLegacyError(legacy_hal::wifi_error error) {
}
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android

View File

@@ -24,7 +24,7 @@
namespace android {
namespace hardware {
namespace wifi {
namespace V1_2 {
namespace V1_3 {
namespace implementation {
using namespace android::hardware::wifi::V1_0;
@@ -37,7 +37,7 @@ WifiStatus createWifiStatusFromLegacyError(legacy_hal::wifi_error error,
WifiStatus createWifiStatusFromLegacyError(legacy_hal::wifi_error error);
} // namespace implementation
} // namespace V1_2
} // namespace V1_3
} // namespace wifi
} // namespace hardware
} // namespace android