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
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