The current timeout of 50ms seems to be insufficient on some devices.
So, changing it to a higher value.
Bug: 66334487
Test: Ran the VTS tests continously in a loop for 30 minutes
without failure. Previously, failure occurence was about once every
5-10 minutes.
`while adb shell /data/VtsHalWifiSupplicantV1_0TargetTest; do :;
done; adb bugreport`
Change-Id: I884de64d748b46b9710a702f3c72cc30dd51627e
IWifi::stop() is currently non-blocking which makes it hard for the
client to determing when the stop is fully complete. This for example
causes wificond to disable the wlan0 interface while the legacy HAL
stop is being processed. So, add a timed wait to let the legacy HAL
complete processing of the stop before we unblock the IWifi::stop()
HIDL call.
Bug: 64611487
Test: Manual tests by wifi state toggling and verifying the order of
events in logs:
08-15 19:17:53.302 796 796 I android.hardware.wifi@1.0-service:
Stopping legacy HAL
08-15 19:17:53.302 796 796 I WifiHAL : Sent msg on exit sock to
unblock poll()
08-15 19:17:53.302 796 4793 E CLD80211:
/vendor/bin/hw/android.hardware.wifi@1.0-service: Could not find group
host_logs, errno: 0 id: -2
08-15 19:17:53.302 796 4793 E CLD80211:
/vendor/bin/hw/android.hardware.wifi@1.0-service: Could not find group
fw_logs, errno: 0 id: -2
08-15 19:17:53.302 796 4793 E CLD80211:
/vendor/bin/hw/android.hardware.wifi@1.0-service: Could not find group
per_pkt_stats, errno: 0 id: -2
08-15 19:17:53.302 796 4793 E CLD80211:
/vendor/bin/hw/android.hardware.wifi@1.0-service: Could not find group
diag_events, errno: 0 id: -2
08-15 19:17:53.302 796 4793 E CLD80211:
/vendor/bin/hw/android.hardware.wifi@1.0-service: Could not find group
fatal_events, errno: 0 id: -2
08-15 19:17:53.302 796 4793 I CLD80211:
/vendor/bin/hw/android.hardware.wifi@1.0-service: Sent msg on exit sock
to unblock poll()
08-15 19:17:53.302 796 4793 I android.hardware.wifi@1.0-service:
Legacy HAL stop complete callback received
08-15 19:17:53.304 802 838 D CHRE : @ 151.328: [Platform] wifi:
has 0, enabled 0
08-15 19:17:53.321 796 4793 I android.hardware.wifi@1.0-service:
Legacy HAL event loop terminated
08-15 19:17:53.321 796 796 I android.hardware.wifi@1.0-service:
Legacy HAL stop complete
08-15 19:17:53.522 796 796 I android.hardware.wifi@1.0-service: Wifi
HAL stopped
Test: Will send for regression tests.
Change-Id: I394c11724e9459a4b9a6b970e2bcb4e0ad65fefc
IE elements should not be present in the batched scan results, but it
being there doesn't cause any problems. The IE elements will be ignored
when we send it over the HIDL interface, so reduce the log level to
prevent log spamming.
Bug: 64448186
Test: None
Change-Id: Ia0d0312a113c907bb0992bb8f41e734fe9d05114
And use VtsHalTargetTestDefaults.
Bug: 64040096
Test: crop out all non-affected tests from vts-hal-hidl.xml and run
vts-tradefed run commandAndExit vts-hal-hidl --skip-all-system-status-check
--skip-preconditions
2 failures, same as without this change:
GatekeeperHidlTest.DeleteAllUsersTest
GatekeeperHidlTest.DeleteUserTest
Change-Id: I8f6995e9536a9aefe283ee3effec9f5a7f03b620
When IWifi.stop() is invoked back to back (happens in the ConfigureChip
vts test), the HAL would return ERROR_NOT_AVAILABLE if the previous stop
is still being processed. This is not an error that needs to fail the test,
but a legitimate status for stop. We have a retry mechanism to handle
this in both the VTS test and framework for the case where IWifi.start()
is invoked while the previous stop is being processed.
While there, corrected a few log messages emitted by the HAL to debug
such startup/stop issues better.
Bug: 63971806
Test: `vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module VtsHalWifiV1_0Target -l
INFO`
Change-Id: I5e3470ac97541a6ea10aceec9b737e5d03ed5206
Update the Android.bp generated with hidl-gen.
Test: build with and without BOARD_VNDK_VERSION=current
Bug: 63866913
Change-Id: I1a9db1df49e0f13c5790da2b118ae9ec63ba34a7
Allow HAL definition libs to be static.
Bug: 32920003
Bug: 64040096
Test: update-all-google-makefiles.sh
Change-Id: I1483d572bea6799717d1614fb7d52fe225e31104
Modifying the interface used to lower the tx power level for meeting SAR
requirements based on recommendation from the nexus hardware team. The
previous interface passed in a single power value in dBm for meeting SAR
requirements. However, the SAR requirements are more complex than that.
Based on the connection mode (802.11 a,b,g,n,ac) and the number of
streams that are active (MIMO), the SAR power levels are very
different. Using the previous interface would mean that we will have to
use the lowest power level among all the connection modes to meet the SAR
requirements. This would however result in us lowering the power much
more than needed (~2 dBm) for many connection modes.
Instead, we're switching to a more generic interface where the framework
informs the wifi chip that we're entering a special tx power mode scenario
(today, there is only 1 for voice call). The chip can then lookup the
extensive table of power levels for different connection modes which are
pre-populated by the OEM's in the BDF file to set the power level (depending
on the scenario framework sends and the active connection mode).
Bug: 62437848
Test: Manual tests
Change-Id: I5ee3f0d2c130958dbeb352e3b5ad9407f432624f
Change the order of shutdown to invalidate chips before
shutting down the legacy HAL. Allows pre-shutdown commands
to be sent down.
Bug: 63704506
Test: NAN tests passing
Test: full regression suite
Change-Id: I03d237d732b4e3482b1e1639848342dfdde9fcb7
Change the order of shutdown to invalidate chips before
shutting down the legacy HAL. Allows pre-shutdown commands
to be sent down.
Bug: 63704506
Test: NAN tests passing
Test: full regression suite
Change-Id: I03d237d732b4e3482b1e1639848342dfdde9fcb7
Restore NAN test and use configuration which determines test
result based on whether or not the platform supports NAN.
Bug: 63131342
Test: NAN-supporting devices: pass (the NAN tests)
Test: Non-NAN-supporting device: pass
Change-Id: I6600abc531d4eb1dea6c501f6a39ef37051cb923
These feature flags are defined in the legacy HAL, but were not exposed in the HIDL
interface.
Updated the hash in current.txt using 'hidl-gen -L hash -r
android.hardware.wifi@1.1:hardware/interfaces -r
android.hardware:hardware/interfaces -r
android.hidl:system/libhidl/transport
android.hardware.wifi@1.1::IWifiChip'
Bug: 63545934
Test: Manual testing
Change-Id: Ia196e0fc1c5e305210ec95eb8a54b1a1204ebf20
Hookup the HIDL method calls to the respective newly added legacy
HAL functions for setting/resetting TX power limits for SAR
requirements.
Bug: 62437848
Test: VTS test fails because of a bug in Qcom implementation. Working
with Qcom to fix their implementation.
Change-Id: Ia619f5558e44d44fd77d037e72dfc1f6863b51e0
1. Move the implementation in 1.0/default to 1.1/default.
2. Move all of the implementation to
android::hardware::V1_1::implementation namespace.
3. All of the header files include the android::hardware::V1_0 namespace
so that it can access the types from 1.0 package. ("using namespace" is
against Google style guide though :().
The other option to prefix each 1.0 type with the namespace name.
For example: V1_0::WifiStatus.
4. Added the implementation of the new 1.1 method
IWifiChip.setTxPowerLimit().
4. The executable name and the .rc still has 1.0 name in it to avoid
changing all the device.mk files.
TODO: Hookup to the new legacy HAL API.
Bug: 62437848
Test: mmm -j128 hardware/interfaces/wifi/1.1/default/
Test: Device boots up and able to connect to wifi networks.
Test: New VTS tests passes
Change-Id: Ib36282939e70b064f246041a03d8870f5cb6410e
Extend the wifi HAL to add a new method in IWifiChip. This new method is
used for setting the TX power limit for meeting SAR requirements.
Bug: 62437848
Test: ./hardware/interfaces/update-makefiles.sh
Test: mmm -j32 hardware/interfaces/wifi/1.1
Change-Id: I8320a64812339f15cd88636505de0dfda18f0ebf