diff options
author | Ahmed ElArabawy <arabawy@google.com> | 2018-10-26 09:46:04 -0700 |
---|---|---|
committer | Ahmed ElArabawy <arabawy@google.com> | 2018-12-04 18:10:15 +0000 |
commit | eaf8240cf1c624b29dba28792571924739710d39 (patch) | |
tree | 9ccc9f5165e62e9416bcd6235f26d0d56e2162ba /wifi/1.3/default/wifi_chip.cpp | |
parent | c622013bce18c4c578cc442e87e578453c43740e (diff) | |
download | android_hardware_interfaces-eaf8240cf1c624b29dba28792571924739710d39.tar.gz android_hardware_interfaces-eaf8240cf1c624b29dba28792571924739710d39.tar.bz2 android_hardware_interfaces-eaf8240cf1c624b29dba28792571924739710d39.zip |
Wifi: Add Implementation for low-latency modes API
This commit adds default implementation for the new API for low-latency
modes in IWifiChip@1.3
Bug: 34905427
Test: Unit test
Test: ./hardware/interfaces/wifi/1.3/default/tests/runtests.sh
Test: VTS test
Test: run vts -m VtsHalWifiV1_3TargetTest
Change-Id: I7109fbad75c0e5adf89edb47f5614a636c65d68f
Diffstat (limited to 'wifi/1.3/default/wifi_chip.cpp')
-rw-r--r-- | wifi/1.3/default/wifi_chip.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/wifi/1.3/default/wifi_chip.cpp b/wifi/1.3/default/wifi_chip.cpp index faf186253..a80116ab8 100644 --- a/wifi/1.3/default/wifi_chip.cpp +++ b/wifi/1.3/default/wifi_chip.cpp @@ -561,6 +561,13 @@ Return<void> WifiChip::resetTxPowerScenario( hidl_status_cb); } +Return<void> WifiChip::setLatencyMode(LatencyMode mode, + setLatencyMode_cb hidl_status_cb) { + return validateAndCall(this, WifiStatusCode::ERROR_WIFI_CHIP_INVALID, + &WifiChip::setLatencyModeInternal, hidl_status_cb, + mode); +} + Return<void> WifiChip::registerEventCallback_1_2( const sp<V1_2::IWifiChipEventCallback>& event_callback, registerEventCallback_cb hidl_status_cb) { @@ -576,6 +583,12 @@ Return<void> WifiChip::selectTxPowerScenario_1_2( hidl_status_cb, scenario); } +Return<void> WifiChip::getCapabilities_1_3(getCapabilities_cb hidl_status_cb) { + return validateAndCall(this, WifiStatusCode::ERROR_WIFI_CHIP_INVALID, + &WifiChip::getCapabilitiesInternal_1_3, + hidl_status_cb); +} + Return<void> WifiChip::debug(const hidl_handle& handle, const hidl_vec<hidl_string>&) { if (handle != nullptr && handle->numFds >= 1) { @@ -618,6 +631,11 @@ WifiStatus WifiChip::registerEventCallbackInternal( } std::pair<WifiStatus, uint32_t> WifiChip::getCapabilitiesInternal() { + // Deprecated support for this callback. + return {createWifiStatus(WifiStatusCode::ERROR_NOT_SUPPORTED), 0}; +} + +std::pair<WifiStatus, uint32_t> WifiChip::getCapabilitiesInternal_1_3() { legacy_hal::wifi_error legacy_status; uint32_t legacy_feature_set; uint32_t legacy_logger_feature_set; @@ -1058,6 +1076,13 @@ WifiStatus WifiChip::resetTxPowerScenarioInternal() { return createWifiStatusFromLegacyError(legacy_status); } +WifiStatus WifiChip::setLatencyModeInternal(LatencyMode mode) { + auto legacy_status = legacy_hal_.lock()->setLatencyMode( + getWlan0IfaceName(), + hidl_struct_util::convertHidlLatencyModeToLegacy(mode)); + return createWifiStatusFromLegacyError(legacy_status); +} + WifiStatus WifiChip::registerEventCallbackInternal_1_2( const sp<V1_2::IWifiChipEventCallback>& event_callback) { if (!event_cb_handler_.addCallback(event_callback)) { |