This covers the following APIs by adding tests to
ISupplicantStaIface:
ISupplicantStaIface::setExternalSim(),
ISupplicantStaIface::addExtRadioWork(),
ISupplicantStaIface::removeExtRadioWork()
Bug: 33457575
Test: VTS tests pass
Change-Id: Ie252ecf8e6e0cdc9d669a5fec18e076dc2d03eba
This covers the following APIs by adding tests to
ISupplicantP2pIface:
ISupplicantP2pIface::SetGroupIdle(),
ISupplicantP2pIface::SetPowerSave()
Bug: 33457575
Test: VTS tests pass
Change-Id: I8291735e74cf88c0e1ee4b5297b39aa37c33d17c
This covers the following APIs by adding tests to
ISupplicantStaNetwork:
ISupplicantNetwork::getInterfaceName(),
ISupplicantNetwork::getType()
Bug: 33457575
Test: VTS tests pass
Change-Id: I9a24195cefefcc23b7603ff33b66a497eba07148
This covers the following APIs by adding tests to both
ISupplicantStaIface and ISupplicantP2pIface:
ISupplicantIface::getName(),
ISupplicantIface::getType()
Bug: 33457575
Test: VTS tests pass
Change-Id: Ibbc4be2e367fc6f179005696724cccbcca58d10f
This copies wifi_hidl_call_util.h to supplicant cts directory
so supplicant vts tests can use this to simplify code.
Bug: 33457575
Test: compile, manual test
Change-Id: I696475062d04d54fafae5c3323818ce1d1ff7d9d
EAP method needs to be set to construct the eap phase 2 method string.
Bug: 37220169
Test: vts tests pass
Change-Id: Ie69aaac0826d4bde784f864631a718242dd5af2a
stopFind() returns SUCCESS even when there is no ongoing
find() operation.
Bug: 37220169
Test: vts tests pass
Change-Id: Ia3f3b4e0c4e7fb7263c1bcbfda1a40b6e5f1cba2
This will cover all APIs except:
- startBackgroundScan
- stopBackgroundScan
- startSendingKeepAlivePackets
- stopSendingKeepAlivePackets
Bug: 32022435
Bug: 36813739
Test: run VtsHalWifiV1_0Target test
Change-Id: I71a1a97e4b0f1145657b249f3eb20305f810962b
The RequestDriverDebugDump API has a capability bit indicating if
supported on device. Calling if not supported should additionally
return ERROR_NOT_SUPPORTED - but does not today. This is arguably
not a valid issue - should not call API if already known not to be
supported.
Remove test for this (questionable) condition until decide on proper
semantics.
Bug: 36562856
Test: test passes
Change-Id: Ic8a1c8b5f77a1b1767c0efc9735731084dfde7cc
NAN is not enabled on O - update all WifiChip NAN tests to expect
failure.
These tests will start failing again on any platforms/code where
NAN is enabled. Will fix more comprehensively at that point.
Bug: 36562856
Test: build + run vts
Change-Id: I0eaf7934d327fb91bff59dd33bd4a8069888c967
This should help us figure out if there are multiple callback objects in
wifi_chip when we see the IPC storm from
onDebugRingBufferDataAvailable().
Bug: 36599054
Test: ACTS wifi tests.
Change-Id: I8c67032c59ecdd45824e131b59d890ce6c94fe25
The IE blob may not always be fully formed in gscan full scan results.
So, log errors when we hit a parsing error and return the IE elements we
could parse so far.
Bug: 36455164
Test: ACTS wifi gscan tests.
Change-Id: I804937ea5e69f51696aaabf3fe3f53850c145ad3
Legacy HAL update to add indications when a solicited publisher
receives a match. Not used in current HAL. However, also added a
control bit to turn off host notification which is now enabled.
Bug: 35195773
Test: integration (sl4a) tests
Change-Id: I8ff378abaae11d4feaa42a9901abb1b48069dc4f
Basic VTS test suite for Wifi Offload HAL
Cherry pick from 00dd5147c4f9a4cdff941b2eed12e1d5844bef86
Bug: 32842314
Bug: 36865676
Change-Id: I702b9d90164f21104a915003b9496fbf4dd969c0
Test: adb shell /data/VtsHalWifiOffloadV1_0TargetTest
Update make files to build Offload HAL binary
Bug: 32842314
Test: Unit tests, check if Wifi Offload HAL service is running
Change-Id: I5da649247fc234fc2555453cf1eac83a14ae496e
This interface defines the interaction of the Wifi framework with the
new HAL module that will offload disconnected PNO scans when screen is
off. For details of the overall design, refer to this document:
https://docs.google.com/a/google.com/document/d/13OmqquTnRXTRnyWbtfpc1Ib7YY411EwjNW3njzJ5KyM/edit?usp=sharing
Cherry pick from 7ac4a32e6eca71fcf1a86991654af747d38928ad
Bug: 32842314
Change-Id: I01e1952458d58b9233f18fc0450491fc7c48e6e1
Test: Unit tests, Mannual Wifi turn on
Fixed couple of compilation failures from .hal changes and made change
to stop/start framework during tests.
Bug: 33457575
Test: mmma -j32 hardware/interfaces/wifi/supplicant/1.0/vts/functional
Change-Id: I1bac68bd71e92b025acdebd0fef8834b826bcfcb
libwifi-hal statically imports the vendor implementation of the legacy
HAL. Since the HIDL daemon is dynamically linking against libwif-hal,
there is no need for it to statically import the vendor implementation
library (one pointed to by: $LIBWIFI-HAL variable).
Bug: 36169790
Test: Compiles & device is able to connect to wifi networks with the
change.
Change-Id: Ie44b58328f9bdde011ba6d4a4d26f786c2d097e7
Restore the usage of WIFI-specific main function. The main
function was inadvertantly disabled by moving it into a static
library - which caused the default main to be used.
Need a custom main since need to stop WIFI before tests start
to enforce a clean starting point.
Bug: 35276551
Test: confirms custom main routine is called
Change-Id: I978827bc0f0f16d9ca4f159fbf42d0bc53f5df99
Add mechanism to configure data-path security using Passphrase
(as an alternative to PMK).
Bug: 35866810
Test: integration (sl4a) tests passing.
Change-Id: If7094a44af1996d3caf5b776d492797f14a7be11
This is useful in debugging (& collecting metrics) when the active bssid changes.
Bug: 36451639
Test: Compiles & manual tests using the framework changes.
Change-Id: I5676dfb9ec9c13ae900c315eb8dfacb857e70fc1
The fallback HAL will return |WIFI_ERROR_NOT_SUPPORTED| when
|init_wifi_vendor_hal_func_table| is invoked. This should be sent as is
to the HIDL interface instead of sending |WIFI_ERROR_UNKNOWN|.
Bug: 34859006
Test: Compiles
Change-Id: I5fd132368715bd158e617ad3cf2e6f88d147cef7
Adding a new API to prevent wpa_supplicant from initiating auto
reconnects.
Bug: 36282386
Test: Compiles & manual tests.
Change-Id: I81d7b1a3677cb26c6e9dc35b7302cc6b00d9a6a2
List out all the association/disconnect reason codes exposed in the
IEEE80211 spec.
Bug:36363830
Test: Compiles
Change-Id: I27168bfb67fbc658339bc5fc9310ffdc9aec5ec6
Aware (NAN) VTS need to be in a separate test binary since whether
they run depends on the feature being supported by the device.
Bug: 36003265
Test: confirms separate binary built
Change-Id: If237e21e72a7c65f5587e40d98acb3146eae45a1
These tests just invoke the HIDL interface API's and ensure
that they succeed or not. Some of these API's (especially P2P) need
multi device testing (AP, Peer) to ensure that they work.
Bug: 33457575
Test: adb shell /data/supplicant_hidl_test
Change-Id: Ibf547b5ed95895c429c8bcb59e4c43b3b436338f
The flag |awaiting_event_loop_termination_| is accessed by multiple
threads, so make it atomic.
Bug: 33552618
Test: Compiles
Change-Id: I5ebe27fe88672565aae0daf34a89616d36f35f90
Previously, we've always assumed that we have only one instance of
radio stats fetched in link layer stats. This is no longer true for the
newer devices which support multiple radios.
Also,
Changed the timestamp member from uint32_t to uint64_t.
Bug: 36148086
Test: The error logs no longer seen on newer devices.
Change-Id: I048a1db7cc0bfb0dc0dacafff2156f42a8ae1e63
According to the legacy HAL header file, the LCI & LCR fields may not
always be populated. So, add null checks for them.
Bug: 36141536
Test: Compiles
Change-Id: Id2a5f5fd0eaf21b3a4d5cfcd26124c9fb6c90869
Add mechanism to define feature support flags to
configure set of Wi-Fi features supported on a particular
device.
Bug: 32997844
Test: integration tests
Change-Id: Iffbf3ba237013f1030b24c0173641234a9c27e5c
Currently, we invoke WifiLegacyHal.invalidate() inside the
|on_stop_complete_internal_callback| std::function. |invalidate|
nulls out |on_stop_complete_internal_callback| inside it which might be
considered a violation since we're deleting the std::function object
as we're executing it.
Bug: 36095153
Test: Compiles, start/stop wifi multiple times.
Test: Verified that a crash is not seen in asan build.
Change-Id: If83c1cbee78a1b6eca12686fcc1ec1de67134f13
These tests basically just ensure that we can call the corresponding
API's successfully. More tests will be added in further CL's.
Bug: 33459306
Test: mmm -j32 hardware/interfaces/wifi/1.0/vts/functional/
&& adb push out/target/product/angler/data/nativetest64/
VtsHalWifiV1_0TargetTest/VtsHalWifiV1_0TargetTest /data/ &&
adb shell /data/VtsHalWifiV1_0TargetTest
Change-Id: I12ad26653993ce7167d007a887e7aff07fd0a5ce
Relocate ranging report config in the legacy HAL. Match the correspoding
setting in the HIDL implementation (field itself not exposed).
Bug: 36065933
Test: integration (sl4a) tests
Change-Id: I651db9e8f63f8382706994d8b3b6cc266b77c73d
This is needed to indicate if the association failed due to a timeout
instead of AP explicitly rejecting us.
Bug: 34280407
Test: Compiles
Change-Id: Ib287ea8e45c28356bf9e3271962fc015761651fd
We can't rely on the ordering of these buckets to populate their
indexes. So, send them explicitly from the caller.
Bug: 35989680
Test: Compiles
Change-Id: Ife09440935eb3526636c27bfdd40c37c69c7ade2
Currently, we wait for the legacy HAL callback to complete to clear and
invalidate the chip objects and it's derivatives. This may cause us to
access the wifi legacy HAL in a indeterminate state (as it's processing stop)
on subsequent HIDL calls.
So, clear up the chip object and derivatives immediately after we
process the stop to prevent any subsequent calls from sneaking in.
Also,
Added a couple of logs when wifi HAL is started/stopped to help debug
such issues later.
Bug: 36026601
Test: Turn on/off wifi and switch to softap mode multiple times.
Change-Id: Id5c2c9a90a335b2de4ae331ac8610b1a4e7875da
Wifi Hal uses some gps components (LOWI) for gscans (location scans).
So, grant it gps group permission.
Denials:
03-03 16:56:03.845 623 6924 I QCALOG : [MessageQ_Client] connecting
to server [/data/misc/location/mq/location-mq-s]
03-03 16:56:03.845 623 6924 E QCALOG : [MessageQ_Client] connect
error: 13, [Permission denied]
Bug: 35959128
Test: Denials no longer seen.
Change-Id: Iddfddb46a585c7c15a26b1fa01889181e4a3cce1
Modified Wi-Fi test setup/tear-down to shutdown and start the
Android framework. The framework competes with the VTS to control
the HAL and so must be disabled for the duration of the test.
Added framework to support VTS testing with the Wi-Fi Aware (NAN)
interface.
Added all callback types (notifications, events) with ability to
wait for such callbacks.
Bug: 35276551
Test: gtest pass
Change-Id: I50847fccad457c2b225ba7f2e1760b4dbb4d363f
Looks like the legacy hal uses a null termination for indicating the
size of ssid.
While there,
Use the helper function to convert wifi band from hidl to legacy.
Bug: 35765841
Test: Integration tests pass now.
Change-Id: Ie480f9d6735a21c5ccedfc68bfde5f0d920dcdc9
Changes in the CL:
1. Add the buckets scanned bitmask to bgscan.
2. exposed the legacy HAL constants for Bgscan in the HIDL interface.
3. Add a stop method for ring buffer logging.
Bug: 35752950
Bug: 33194311
Test: Compiles
Change-Id: Idb2031c33c5a237d7447410fb733f8e408a17288
Data-path has two negotiation modes controlled during a
discovery session configuration as auto-accept or not (in
which case an event to framework is triggered).
Bug: 33552694
Test: unit tests and integration (sl4a) tests
Change-Id: I129ee48554daddb606bfd2c20ffdd867a6d998e0
Data-path security is configured using a specific cipher
type - corrected error which specified a set of cipher
types.
Bug: 33552694
Test: unit tests and integration (sl4a) tests
Change-Id: I2f2d21ebf68bd63906e60b5af76c8808864a1b46
This functionality is needed even for AP iface. So, duplicate this
method.
Changes in the CL:
1. Add getValidChannelsForBand() in IWifiApIface.
2. Rename StaBackgroundScanBan to WifiBand to make it a more generic
name.
3. Change the existing method name in IWifiStaIface to match with the
one in IWifiApIface.
While there,
Fix indentation in hidl_callback_util.h
Bug: 35663149
Test: Compiles
Change-Id: Iaeb6c323e13eedf2f98de92fea77e327c76ffa5b
"private_key" field is not used in Android, we instead use the "key_id"
field. So, change the setter to reflect that.
Bug: 35663125
Test: Compiles
Change-Id: I3c01365fd90fd79cac2b99f9b9fe0bbea2226b59
Wire-up the SDEA service info (aka Extended Service Specific
Info) to the newly available legacy HAL.
Bug: 35193423
Test: integration (sl4a) tests
Change-Id: I2cbd82ecc4274c5137693dde34370f2b68646e19
Add capability to provide maximum number of subscribe
addresses that can be specified in a discovery session
configuration.
Bug: 34059183
Test: integration (sl4a) tests pass
Change-Id: I5aa875cf8f43a7ad215b52e2cf917dfbbb3b1195
There are a few flags which were not being reset before conversion in
hidl_struct_util.cpp. Fix those.
Bug: 35432118
Test: Compiles & tested with calling code changes.
Change-Id: If652ceed856cacf412f4dbf8eedbc351d04b6b89
These new EAP methods were recently added in b/34835771. Add HIDL
support for them.
Bug: 35270422
Bug: 35311730
Test: Compiles
Change-Id: I3488f5e49ff72fe1717a16c27ffbe45ac2a8ebf4
Add a new utility to handle callback death notifications. The new class
HidlCallbackHandler will be used by all the HIDL interface objects to
manage callbacks. Any dead clients will automatically removed from the
cb list by the utility class.
Bug: 34840719
Test: Compiles
Test: Verified that the cbs are deleted on crashing the framework
manually
Change-Id: I0f7ba8b3ed717c2e8e8fbf744a2501d0ad2d48c8
Presently, the core of the Wifi test logic is
obscured by the boilerplate required to create
a callback.
This CL provides some utilities to simplify
the creation of a HIDL result callback, and
migrates existing Wifi code to use the new
utilities.
Along the way: add a .clang-format file, so
that I don't misformat code with 2-space
indents (the Google default).
Bug: 34817351
Test: vts-tradefed run commandAndExit vts --module=HalWifiHidlTargetTest
Change-Id: Id2c728f96c3369c74adc8dfce7228b0a15a0781e
Clarify that DW period specification on discovery session
does not override the overall system DW period specification
(if one is provided).
Bug: 35040192
Test: none - comment fix
Change-Id: Ia7c495f1cd50a4bce0ffbaf242e52bc4f110eef2
We need google shims on the vendor partition because they are providing
an implementation of a vendor defined interface. They were written by
google just as a courtesy/to make the transition easier. They're
basically a set for vendors to assemble their hal implementations
from.
Bug: 34135607
Test: marlin persist.hal.binderization on/off
Merged-In: I3f86c77c147514fe470f08088a66de312ae32d4e
Change-Id: I3f86c77c147514fe470f08088a66de312ae32d4e
* changes:
supplicant(interface): Remove redundant callbacks
wifi(implementation): Copy the user complete callback by value
wifi(implementation): Add status check for all cb invocation
wifi(implementation): Add global lock
The information broadcast via these callbacks are already available via
other callbacks.
1. All of the onProvisionDiscovery* callback data can be retrieved via the
|onProvisionDiscoveryCompleted| callback.
2. OnAssociated & onConnected callbacks data can retrieved via the
onStateChanges callback.
Bug: 34221586
Test: ./hardware/interfaces/update-makefiles.sh
Change-Id: Ieee26013dfda7a9be41a80e98ff1537da16b3466
The callback object may go out of scope by the time it's invoked. So,
make a copy of it. We're doing the same for the other user callbacks
received in this class.
Bug: 34930275
Test: Compiles
Change-Id: I275bba11ae8735a21514d871e8aa473f92f0fd7d
Add a global lock to address synchronization issues between the main
HIDL method servicing thread and the legacy HAL's event loop thread.
Also, added some documentation for the threading model used.
Bug: 34261034
Test: Compiles
Change-Id: I881111814ff5ebd601d6a4c85cf284b30ae47ed3
Large churn in files - seems to be mostly driven
by changes in generated code as opposed to HAL
changes.
Bug: 33459306
Test: build + vts-tradefed run commandAndExit vts --module=HalWifiHidlTargetTest
Change-Id: I1762a24108f9119dbc9c6807d6a2870f016a26d9
Add HAL definition to support Subscribe Service ID List Attribute
inclusion in beacons. Until support is added in legacy HAL will not
be functional.
Rationale: enhances likelihood of being able to find the right service.
Bug: 35195516
Bug: 35040192
Test: unit tests & integration (sl4a) tests
Change-Id: I343266e3277c7351f29f6851cb1a9c1746cda6e8
Add support for SDEA.ServiceInfo as extended service
specific information field in all SDF-related APIs:
discovery (configure & match), message sending and
receiving.
Rationale: SDEA.ServiceInfo will form the basis for
upper layer discovery protocols on NAN (e.g. mDNS).
Even if not exposed to user-facing API will need to
have handle to be able to create adaptation layers.
Bug: 35193423
Bug: 35040192
Test: unit test and integration (sl4a) tests.
Change-Id: I3fc225952e93a134d5e58795281238829ed4b1ea
Update some HIDL names to match more closely the spec
naming convention. Add comments - whenever possible
provide reference to NAN spec.
Bug: 34985658
Bug: 35040192
Test: unit tests and integration (sl4a) tests
Change-Id: I957fb8a9814b3acaf8b710d397fe18b39f6a8c77
Java intermediates are now created in the common rather than the device-
specific generated sources subdirectory.
Bug: 33842609
Test: make
Change-Id: I16af4cd19bf0b24baa0ad9ebfdb86b4d959c8672