Few class refactors to help with unit tests for ag/7567226.
Bug: 132943959
Test: ./hardware/interfaces/wifi/1.3/default/tests/runtests.sh
Change-Id: I62909f3f94899bc1593824684b93d29f44954eae
When the iface state is toggled for MAC address change on the underlying
interface for NAN operations, send NAN disabled event up to the
framework. The iface down/up toggle resets all NAN operations in the
firmware. So, this callback should trigger a cleanup of any
operations initiated by the framework.
Bug: 132943959
Test: Unit tests in the follow-up CL.
Test: Will send for regression tests.
Change-Id: I760dc5ca3b9276956f5edd40a97c3c13811f442c
NAN iface/RTT controllers are sharing the STA iface. When a STA iface is
removed, we should remove these dependent modules as well to ensure
proper cleanup.
Bug: 132837537
Test: ./hardware/interfaces/wifi/1.3/default/tests/runtests.sh
Test: Will send for regression tests.
Change-Id: Ia2da1dcf66b388f54e916ae69e2f4e26f20ecfad
Get rid of the unnecessary looping inside the method which was causing a
bunch of unnecessary selinux denial logs.
Bug: 130384921
Test: ./data/android.hardware.wifi@1.0-service-tests
Test: Manually verified the property name after wifi on/off & softap
on/off.
Change-Id: Ia9f61749b2017234851d67b027deb685cb8b539e
hidl-generated makefiles are now generated such that bpfmt(file) == file.
Bug: 67417008
Test: enable bpfmt hook
Change-Id: I53e5bf67a0d314e1b10c0ba0c7172a7af358ddcc
This is updated whenever a new STA or AP iface is created & removed.
Also, when the chip is configured.
This property can be read by the rest of the system (including vendor
specific HAL instances) to retrieve the active iface name.
Bug: 129506593
Test: ./data/android.hardware.wifi@1.0-service-tests
Test: Manually verified the property name after wifi on/off & softap
on/off.
Change-Id: Ic1c21fd3a1c6894c797070bf889f705e4cba6dd1
For the chip level operations, the actual interface itself does not
matter. So, instead of hard-coding these operations to wlan0 interface,
find the first active interface to use. This will still return wlan0 if
it's active, but if only AP is up (& pinned to wlan1), then it will use
wlan1 instead.
Bug: 129358937
Test: ./data/android.hardware.wifi@1.0-service-tests
Test: Verified manually that SAR commands are now correctly sent down.
Change-Id: I5a6175579027cbb45c09d32633ed81b9f72224dd
The primary STA iface will always be pinned to wlan0.
The primary AP iface will be pinned to wlan0 for devices not supporting
STA + AP concurrency & wlan1 for devices supporting STA + AP concurrency.
All secondary STA or AP ifaces will be allocated on a first come first
service basis (the current logic).
Also, refactored/renamed some of the iface combo selection logic methods
to help check whether concurrency is allowed in the current mode.
Bug: 128946563
Test: ./data/android.hardware.wifi@1.0-service-tests
Test: Will send for full regression tests.
Test: On crosshatch, ensured that STA always comes up on wlan0 & AP
comes up on wlan1 regardless of the sequence of toggle followed.
Change-Id: Idca8de42ce819240bf0fac2a9039d15ed4bcaf90
ag/6722341 caused some unit test failures. Fixing them.
Bug: 127715974
Test: ./data/android.hardware.wifi@1.0-service-tests
Change-Id: Ib504cf55b9990dba081eb1b07bc32508e09ad0a6
This commit updates the documentation for the HAL API setLatencyMode().
It also updates the current.txt with the IWifiChip new hash.
Bug: 124459516
Test: None
Change-Id: I018e0237807aab70f7587d5fd7517d64352140f7
This commit adds the ether_type as an argument to the legacy hal
function to send an offloaded packet.
Bug: 122487582
Test: Manual
Test: Make sure ether_type is passed all the way to vendor hal function
Change-Id: I5918088000cc455e7f83feddc1090803ccc04c06
This commit adds a public api call for legacy hal to check if it is
successfully started.
This is to be used by callers of legacy hal to make sure not to request
functionality while legacy hal (and hence all interfaces) are not
started.
Bug: 112205428
Test: Manual
Change-Id: I5183d01811e35edb3149cfb3784067c68b40e46d
wifi.interface.0, etc should only be checked if the primary property
used on most devices (wifi.interface & wifi.concurrent.interface) does
not exist.
wifi.interface.0, etc should only defined on Android auto platforms.
Bug: 126925255
Test: Manually verified that the spammy log does not exist
Change-Id: Ib5e6a87a7da2d4b26cdd35f668385b503e7c8006
Generate random MAC address on the first creation of AP iface after
reboot.
Bug: 78353419
Test: ./hardware/interfaces/wifi/1.3/default/tests/runtests.sh
Test: Manually verified that the AP MAC address & BSSID changes on every
reboot.
Change-Id: Ie9984ec72b2dfec9b7de7a9ef33b9e9ebfaf945c
Add the plumbing required for setting a random MAC address on AP
startup. The random MAC address is created once for the lifetime of
the daemon and then reused for any further AP creation. This would
ensure that the MAC address is changed on every reboot.
The feature is turned on by default, devices will need to set the
|WIFI_HIDL_FEATURE_DISABLE_AP_MAC_RANDOMIZATION| in their .mk file to
disable the feature at compile time.
Bug: 78353419
Test: ./hardware/interfaces/wifi/1.3/default/tests/runtests.sh
Change-Id: I054d5249c20cc582b76966313135295873cd0b61
This is just a refactor to move the setMacAddress & getFactoryMacAddress
methods to a util class within the HAL. This can be then reused in AP
iface for mac randomization of SoftAp.
This also fixes a bug in the existing setMacAddress() method, the
current method always sets wlan0 up/down. STA interface could be wlan1
on some devices.
Bug: 78353419
Test: ./hardware/interfaces/wifi/1.3/default/tests/runtests.sh
Test: Manually verified STA MAC randomization still works.
Change-Id: I0bb8154f7e6dcae37c977454423c8c299762260e
This reverts commit e338c81190.
Cannot be supported without additional HAL APIs to provide the
device's capability to the host. These aren't necessary since
this capability should be enabled by default by the firmware.
Bug: 112586769
Test: (ACTS) act.py
ThroughputTest:test_iperf_max_ndi_aware_only_passphrases
Test: (CTS) atest SingleDeviceTest
Devices can use the lazy wifi HAL to allow it to exit when wifi is not
in use.
Test: Flash walleye_svelte-userdebug and check that HAL only runs when
wifi is on.
Bug: 123307146
Change-Id: If20120f902a7e102372666447b39cf9fdad7d352
There are compatibility issue with driver for P2P random MAC.
The framework needs to check driver capability first before enabling
P2P random MAC address feature.
Bug: 118904478
Test: vts - atest VtsHalWifiSupplicantP2pV1_2TargetTest
Test: manual test
* Enter WiFI Direct Page
* check the feature is enabled in logcat
* WifiP2pService: Supported feature: P2P MAC randomization
* check p2p0 MAC address is randomized.
Change-Id: I28e226e7d51e3d5e3e6013d3772e643c1df1ab54
Disable the firmware to send NANv3 data-path negotiations packets.
Means that device will only use NANv2 data-path negotiation packets.
That is interoperable - though may miss extra information from pure
NANv3 peers - where extra = port/transport-protocol/ipv6 address (we
have an AOSP-specific emulation of this feature).
Bug: 112586769
Test: (ACTS) act.py ThroughputTest:test_iperf_max_ndi_aware_only_passphrases
Test: (CTS) atest SingleDeviceTest
Change-Id: I3fd3e3bfc80a7815e035c592967e5448601c8153
Wlan log does not include correct timestamp while
taking bug report. Flush HAL ringbuffe to files
directly when issue happen.
Bug: 118854557
Test: Builds and wifi works
Change-Id: Ic9a6b7470f943f1498428e8b0d40b117b2ff04e6
The total number of interfaces is still limited to 2,
will be addressed in a separate change.
Bug: 36120314
Test: KitchenSink (see go/aae-dual-ap)
Test: b/120081854
Change-Id: I8962c5167fcbe55805fce320f639d37b4b902c5c
Add getFactoryMacAddress method to retrieve the factory MAC of Sta
interface.
Bug: 111634904
Test: Manual Verification
Test: run vts with command "mma -j64 && adb sync data && adb shell data/nativetest64/VtsHalWifiV1_3TargetTest/VtsHalWifiV1_3TargetTest"
Change-Id: I82b47366d3576201ef54a4e89a3f864c31fff42c
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
Get the list of channel stats from linklayerstats radiostats
and send it to framework.
Bug: 79111545
Test: Connected STA to AP and verified the link layer stats
Test: Unit test
Test: ./wifi/1.3/default/tests/runtests.sh
Change-Id: If1008256afe0ec918cdbd952aa4f14012d5b0caf
This commit adds HAL API to IWifiChip for low-latency modes along
with the associated capability.
Bug: 34905427
Test: VTS test
Change-Id: I9f874ab5a9e6c0b3dc00e3924157ee421c3f104b
It will be a global error by default.
Test: make checkbuild
Bug: 112564944
Change-Id: Iccb4189374015ceea26b0d9b3d3af2afdccbde38
Exempt-From-Owner-Approval: do not block on new warnings
Condition creation of the RTT controller on the chip being in a mode
which can support a STA (whether one is already created or one could
be created).
This is the default behavior on currently supported Wi-Fi devices.
Note: this is part of the reference HAL implementation - it is not
expected to reflect behavior of all devices. Vendors may and should
replace or modify the reference HAL implementation.
Bug: 79565105
Bug: 111218083
Test: ACTS RangeApSupporting11McTest:test_rtt_in_and_after_softap_mode
Change-Id: If76b6598acb22f7821b34f7f1c8ae2873a6dac1d
Gets additional scan related information from legacy_hal up to
framework.
Bug: 77603419
Test: compile, unit tests
Change-Id: I9c948166b640af192c8e6f85ed6c76719e0937a4