* changes:
wifi(implementation): Load wifi driver on IWifi.start()
wifi(implementation): Different names for concurrent ifaces
wifi(implementation): Add iface combo for 2018
wifi(implementation): Unit tests for V1 & V2 iface combos
wifi(implementation): Add unit test framework
wifi(implementation): Support multiple ifaces of same type
Legacy HAL updated to use mm. The current HIDL is (still at) cm.
Add conversions.
Bug: 69428593
Test: integration tests passing (but ranging is still pending fw)
Change-Id: Ia431fcebedf5a1c66847c2f1627923b5704fece0
The current implementation loads the wifi driver only when the chip is
configured, but the HAL is initialized on IWifi.start(). This seems to
be wrong semantically. The driver needs to be loaded before the HAL is
initialized.
This may have worked previously because the driver was loaded in
init.rc, but may stop working when we move to proper DLKM model in 2018.
Bug: 65671875
Test: Device boots up and connects to wifi networks.
Change-Id: I017d3528bf0b42a6a59af43203ecc9d0d027f60d
Changes in the CL:
a) Added iface combo for 2018 using a new feature flag.
b) Added a generic algorithm to determine if an iface can be created or
not based on the iface combos supported. This is needed because we now
have to support 3 different combos (2016, 2017, 2018) in the HAL.
The current iface creation logic is hard to adapt to these 3 varying combos.
Bug: 65671875
Bug: 69863101
Test: ./hardware/interfaces/wifi/1.2/default/tests/runtests.sh
Change-Id: Iff8737843abee3d03567930e9faba775eaa82e07
Unit tests for all the iface combos supported in V1 (2016 devices) & V2
(2017 devices).
Bug: 68775880
Test: ./hardware/interfaces/wifi/1.2/default/tests/runtests.sh
Change-Id: I1049176aabdf936d442d022b5915129010ce7387
Integrate legacy HAL code mods to add an NDP channel indication.
Note: This CL is just the integration - not the HIDL usage of the
new API.
Bug: 37007030
Test: builds + integration tests passing
Change-Id: I59da1fb7e225a5038e436b793bc66b892786c238
We're going to add some non-trivial logic in wifi chip to handle
multiple chip configurations (to support devices with different
capabilities). So, adding a unit test framework in preparation
for testing those changes.
The mocks only mock legacy HAL methods which are in use during chip
configuration & interface creation/deletion.
Bug: 68775880
Test: Compiles
Change-Id: I8575df02f54656f77077d14ac9535ccc974bdff3
Making all of the iface object fields in WifiChip to vectors to support
multiple ifaces of the same type.
Bug: 65671875
Test: Device boots up and connects to wifi networks.
Change-Id: I4c0c927c0269e54210cc1f81203c1797d72e969c
This was previously disallowed because WifiLegacyHal.stop() was non blocking.
WifiLegacyHal.stop() was made blocking using ag/2715673, so reconfiguration
should be supportable now.
Note: This is a partial revert of ag/2125543.
Bug: 65671875
Bug: 70411703
Test: Will send for regression tests.
Test: Reverted the VTS CL: ag/2139830 and ensured that the test works
now. Can't check-in that revert because it would not be backward
compatible.
Change-Id: Ia5f9ccaf5403d171b0def7740d2adece7eb3c157
Use the top level clang-format setup by the HIDL team to format the
entire implementation.
clang-format -i --style file wifi/1.2/default/*
Bug: 32287573
Test: Compiles
Change-Id: I336c21fd9bfdc560117aa7212f92ab5f01df4b8e
Add support for concurrent interfaces in the WifiLegacyHal class:
a) Removed the hardcoded "wlan0" interface handle in WifiLegacyHal.
b) Modified all the interface specific functions to accept the |iface_name|
argument on which the operation needs to be performed.
Each IWifiIface object will hold the name of the underlying network
interface (wlan0, wlan1 or p2p0) which it is representing.
All IWifiChip operations which needs an iface name will continue to use
the default "wlan0".
Bug: 65671875
Test: Device boots up and connects to wifi networks.
Test: Will send for regression tests.
Change-Id: I9bd9c2a9ba33ac1ea5677fc5d7c261d8eac08e1d
Currently the HAL shim uses fake names to ensure that each type of
IWifiIface has a unique name. This is not a true reflection of the
network interfaces exposed by the wifi driver. So, change the HIDL shim
to use the corresponding interfaces names.
IWifiStaIface, IWifiApIface & IWifiNanIface all use the same "wlan0"
network interface.
IWifiP2pIface uses the "p2p0" network interface.
In the future, we'll be extending this to create a second IWifiStaIface
or IWifiApIface using "wlan1" network interface.
IWifiRttController does not need to be associated with an iface object.
So, it will just default to using "wlan0" always.
TODO(b/34702983): Need to deprecate the bound iface from the HIDL interface.
Bug: 65671875
Test: Device boots up and connects to wifi networks.
Test: Will send for regression tests.
Change-Id: I33fef1332f2fe2da3f48ee87ef06660844699253
Removing whenever I see these in code reviews.
Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d
The stop may fail if the interface down operation takes too long on some
devices. This is not fatal as long as we're able to bring up the
interfae for the next HAL start.
Bug: 68303248
Test: VTS tests
Change-Id: I93943f9d0cfb83cf07253c6f9b3866d6d137028f
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I731eba80656edbf87a5d5ba3af63a2c607ac61a6
Merged-In: Id71e2348eabf5101d1fd286bbc0076154703d159
The NAN-specific VTS tests check whether the device supports NAN.
However, the tests did not abort early enough.
Bug: 68302113
Test: builds
Change-Id: Ie6fb0e2b0bd12840ce6bc52fab1b6d4e8c5a571e
This version of configstore was removed internally.
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I589addff6aec7bb7a8a7938d75c51dcc56116a42