If set, it indicates that the device is operating
in an indoor environment. When driver receives this
indication, it can safely enable WFD GO operation
on indoor channels.
Bug: 207671411
Test: Manual basic wifi tests
Change-Id: I4cc4c22444f0796c280220534d43c4ae8cae0899
In bridged AP VTS test, need to get the interface name from bridged AP
from Wifi HAL.
As Wifi HAL is still in HIDL interface, need to use HIDL API to obtain
the bridged AP interface name.
Test: atest VtsHalHostapdTargetTest
Bug: 211073349
Change-Id: Ib594877899ff0fe3ef0a7f01fdb169204dff6a74
This commit adds the implementation for the HAL API changes
to enable 11be support.
Bug: 198746544
Test: Build Succeeds
Test: VTS test
Change-Id: I2d1f296856698951c2c0111200e7c7bf661da132
This commit adds the required changes for the support of
802.11be (WiFi-7) support to the wifi vendor hal API.
Bug: 198746544
Test: Build Succeeds
Test: VTS test
Change-Id: I1f631aaa247ce4240dd398230b57c7edae55c141
This CL adds ver 1.6 in Android.bp and rc file. Those were missed
when the HAL version was uprev'd to 1.6
Bug: 214108561
Test: atest VtsHalWifiV1_0TargetTest VtsHalWifiNanV1_0TargetTest VtsHalWifiApV1_0TargetTest \
VtsHalWifiV1_1TargetTest \
VtsHalWifiV1_2TargetTest VtsHalWifiNanV1_2TargetTest \
VtsHalWifiV1_3TargetTest \
VtsHalWifiApV1_4TargetTest VtsHalWifiNanV1_4TargetTest VtsHalWifiRttV1_4TargetTest \
VtsHalWifiV1_5TargetTest VtsHalWifiNanV1_5TargetTest VtsHalWifiApV1_5TargetTest
Change-Id: I5ce531b92af12b54b4a25548e6fef1198fb23716
In this commit, basic support for 11be is added to Supplicant HAL.
That includes adding EHT to list of WifiTechnologies
Bug: 198746544
Test: Build successful
Change-Id: Ied553e502ab2dba9efbcaac80691a6d54195e942
In this commit, basic support for 11be is added to HostApd HAL.
That includes:
1. Adding 320MHz bandwidth channels
2. Adding 11be to list of standards
3. Add a flag to enable/disable 11be for SoftAp
Bug: 198746544
Test: Pass VTS tests, and presubmit tests
Change-Id: I14e1bd8ab00692e743a3a49096fbd66aca806730
Bug: 214298597
Test: Run VTS tests on an AOSP build (since AOSP
is still using the HIDL interface).
Change-Id: I4bd005b5c96570694477a4b45fa5cc790c45be8f
defs.h is a useful reference, but not the main
definition for the bitmap values in the interface.
Bug: 210904141
Test: N/A since only comments were updated
Change-Id: Ib721d6ea0182db50f05ddab10096583481f85413
Bug: 212653303
Bug: 212652735
Bug: 212652340
Test: Run VTS tests on an AOSP build (since AOSP
is still using the HIDL interface).
Change-Id: I442efb35c4c68a1337cacc952c3fdb338ef2615d
Added a callback function to indicate that the p2p
operating frequency has been changed.
Bug: 202758240
Test: vts test
Test: Manually triggered channel switch through hostapd command
and verified the new frequency in logs.
Change-Id: I5814a108c77478cf96bc88f2d8fd8193bd8168be
This API is used to pass the certificate returned from the server to
the framework.
Bug: 196180536
Test: atest VtsHalWifiSupplicantStaIfaceTargetTest \
VtsHalWifiSupplicantStaNetworkTargetTest \
VtsHalWifiSupplicantP2pIfaceTargetTest
Change-Id: I462008e8b2a0f18824b2886613f300213544c785
Prepares android.hardware.wifi@1.0-service for use by a wifi HAL vendor APEX.
- Creates a cc_defaults with soong config vars for @1.0-service and
@1.0-service lib that customized implementations can override.
Bug: 205065320
Test: m -j with mac80211_hwsim vendor APEX on Cuttlefish
Test: Connect to wifi
Change-Id: I5827ed1ceb9be8278a54fd828249bf8e549fb950
Merged-In: I5827ed1ceb9be8278a54fd828249bf8e549fb950
Add another dummy interface combination to be used for debugging:
STA+(STA||P2P||NAN||AP)
Bug: 211919010
Test: adb shell setprop persist.vendor.debug.wifi.hal.preset_interface_combination_idx 5
Change-Id: I0499da1d0920ce03fe142f5b0936c6efe0dcf21a
There are two AP instances when bridged AP is running.
Extend onFailure callback to support if there is a problem one of the instances,
The framework can handle the failure separately. (i.e. No need to
shutdown whole Soft Ap)
Bug: 188921389
Test: Test with test code, the callback works normally.
Change-Id: I0aba5f3c5bf21badd3cf925908c853e9285fa6aa
Converted from android.hardware.wifi.supplicant@1.4 HIDL interface.
Bug: 196235436
Test: m android.hardware.wifi.supplicant-update-api
BYPASS_INCLUSIVE_LANGUAGE_REASON=HE refers to High Efficiency
Change-Id: I9872f297450457c347fb5fe8cf4005b01d3ab1f6
Prepares android.hardware.wifi@1.0-service for use by a wifi HAL vendor APEX.
- Creates a cc_defaults with soong config vars for @1.0-service and
@1.0-service lib that customized implementations can override.
Bug: 205065320
Test: m -j with mac80211_hwsim vendor APEX on Cuttlefish
Test: Connect to wifi
Change-Id: I5827ed1ceb9be8278a54fd828249bf8e549fb950
VTS tests for Netlink Interceptor
BYPASS_INCLUSIVE_LANGUAGE_REASON="dummy" is what Linux uses to refer to
interfaces that are not real or functional. I did not pick this name.
Bug: 201467304
Test: atest VtsHalNetlinkInterceptorV1_0Test
Change-Id: Idb5ad759c9226ddf9e6182213cced750efdbd293
Skip P2P tests if P2P is not supported.
Bug: 200064365
Test: run vts -m VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I6ba23bb27f24700980cab28d1ff806e5efc65ec9
Skip P2P tests if P2P is not supported.
Bug: 200064365
Test: run vts -m VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I6ba23bb27f24700980cab28d1ff806e5efc65ec9
Bug: 204889679
Test: Make and run VtsHalHostapdTargetTest
m vts -j
vts-tradefed run commandAndExit vts \
--module VtsHalHostapdTargetTest
Change-Id: I0fe97b18b83098df6c70a5057576704c4b1f7383
In some implementations P2P device interface is created under
primary interface(wlan0 by default). In those implementations
p2p device name is predefined in system property wifi.direct.interface.
And the interface is created by supplicant with primary interface as
the parent interface. The naming of p2p device interface is
p2p-dev-<parent interface> ("p2p-dev-wlan0").
With STA+STA feature, wlan0 interface gets deleted in certain scenarios
and wlan1 becomes the active interface. In such scenarios P2P fails to
create the interface as parent interface wlan0 is deleted.
To fix the issue update the p2p device interface from system property
based on the current active wlan interface. ie First get the p2p parent
interface name from p2p device interface name set in property.
Check if the parent interface derived from p2p device interface name is
the current active interface. If not, get the current active interface
and update the name as p2p-dev-<ifname> ("p2p-dev-wlan1").
This helps HIDL/supplicant to get an active wlan interface from p2p
device interface name and succeed in creating the p2p interface under the
active interface.
Bug: 203434193
Test: Manual - Tested STA+STA which ended up deleting wlan0 interface.
Then ran p2p tests and confirmed that p2p scan and connection
works.
Change-Id: I522cec02a662c057e21d434f3ed98c7e7a4ca8f0
Merged-In: I522cec02a662c057e21d434f3ed98c7e7a4ca8f0
(cherry picked from commit 7f2822aff7)
In some implementations P2P device interface is created under
primary interface(wlan0 by default). In those implementations
p2p device name is predefined in system property wifi.direct.interface.
And the interface is created by supplicant with primary interface as
the parent interface. The naming of p2p device interface is
p2p-dev-<parent interface> ("p2p-dev-wlan0").
With STA+STA feature, wlan0 interface gets deleted in certain scenarios
and wlan1 becomes the active interface. In such scenarios P2P fails to
create the interface as parent interface wlan0 is deleted.
To fix the issue update the p2p device interface from system property
based on the current active wlan interface. ie First get the p2p parent
interface name from p2p device interface name set in property.
Check if the parent interface derived from p2p device interface name is
the current active interface. If not, get the current active interface
and update the name as p2p-dev-<ifname> ("p2p-dev-wlan1").
This helps HIDL/supplicant to get an active wlan interface from p2p
device interface name and succeed in creating the p2p interface under the
active interface.
Bug: 203434193
Bug: 200810773
Test: Manual - Tested STA+STA which ended up deleting wlan0 interface.
Then ran p2p tests and confirmed that p2p scan and connection
works.
Change-Id: I522cec02a662c057e21d434f3ed98c7e7a4ca8f0
10s is not enough for low-end devices, extending waiting time to
avoid false alarm for low-end devices.
Bug: 201184673
Test: atest VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I9baa53a462b97738e6dc471cf06c2b9230b92c1c
(cherry picked from commit ef3f77f831)
Stopping entire framework can cause other essential services to be
stopped. When wifi is stopped, it does not interact with any of the
wifi HAL's.
Bug: 201266536
Bug: 201184673
Test: atest --iterations 10 \
VtsHalWifiSupplicantV1_0TargetTest \
VtsHalWifiSupplicantV1_1TargetTest \
VtsHalWifiSupplicantV1_2TargetTest \
VtsHalWifiSupplicantV1_3TargetTest \
VtsHalWifiSupplicantV1_4TargetTest \
VtsHalWifiSupplicantP2pV1_0TargetTest \
VtsHalWifiSupplicantP2pV1_2TargetTest \
VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: Ia4a38c2e942681f323cf76941713c429e14870cc
(cherry picked from commit 3a5858a711)
cp: aosp/1428863 to sc-v2-dev branch as b/202788915 mentioned
This used to be present on the old host side VTS tests, port the feature to
target side since host side VTS tests are deprecated.
Also,
i) Added a separate test: VtsHalWifiV1_4TargetTest to test the wifi
chip methods. Putting them in VtsHalWifiApV1_4TargetTest will prevent
these from running on devices without AP feature.
ii) Ensured all the non-NAN, non-RTT tests disable framework for
testing. NAN/RTT tests uses framework to check if the corresponding
package manager feature exists.
Bug: 166529516
Bug: 202788915
Test: atest \
VtsHalWifiApV1_0TargetTest \
VtsHalWifiApV1_4TargetTest \
VtsHalWifiV1_0TargetTest \
VtsHalWifiV1_4TargetTest
Change-Id: I05aab6992277601633a0f926a8262c4c27402e93
Merged-In: I05aab6992277601633a0f926a8262c4c27402e93
cp: aosp/1428863 to master branch
This used to be present on the old host side VTS tests, port the feature to
target side since host side VTS tests are deprecated.
Also,
i) Added a separate test: VtsHalWifiV1_4TargetTest to test the wifi
chip methods. Putting them in VtsHalWifiApV1_4TargetTest will prevent
these from running on devices without AP feature.
ii) Ensured all the non-NAN, non-RTT tests disable framework for
testing. NAN/RTT tests uses framework to check if the corresponding
package manager feature exists.
Bug: 166529516
Test: atest \
VtsHalWifiApV1_0TargetTest \
VtsHalWifiApV1_4TargetTest \
VtsHalWifiV1_0TargetTest \
VtsHalWifiV1_4TargetTest
Change-Id: I05aab6992277601633a0f926a8262c4c27402e93
Skip doing iface reset(down and up) to change MAC address if driver
indicates support for WIFI_FEATURE_DYNAMIC_SET_MAC.
Bug: 202424223
Test: atest VtsHalWifiV1_5TargetTest
Test: Manual - Connect STA to AP and check random mac is set
Change-Id: I86cf86e20893759a4e926571727943e4ee51d093
Done for the following tests:
VtsHalWifiApV1_0TargetTest
VtsHalWifiApV1_4TargetTest
VtsHalWifiApV1_5TargetTest
VtsHalWifiNanV1_0TargetTest
VtsHalWifiNanV1_2TargetTest
VtsHalWifiV1_0TargetTest
VtsHalWifiV1_1TargetTest
VtsHalWifiV1_2TargetTest
VtsHalWifiV1_3TargetTest
VtsHalWifiV1_4TargetTest
VtsHalWifiV1_5TargetTest
VtsHalWifiOffloadV1_0TargetTest
Each VTS module is required to have an OWNERS file. The ownership is based on
go/vts-owners. For more information about ownership policy, please visit
go/xts-owners-policy.
Test: Tree Hugger
Bug: 143903671
Change-Id: I4acdb9a3f7a81f078e4c60d7892a72a16f7ae9d2
This is done for the following test modules:
VtsHalWifiSupplicantP2pV1_0TargetTest
VtsHalWifiSupplicantP2pV1_2TargetTest
VtsHalWifiSupplicantV1_0TargetTest
VtsHalWifiSupplicantV1_1TargetTest
VtsHalWifiSupplicantV1_2TargetTest
VtsHalWifiSupplicantV1_3TargetTest
VtsHalWifiSupplicantV1_4TargetTest
Test: Tree Hugger
Bug: 143903671
Change-Id: Ia2259c6d62223317f5d5c5aee8ae55655972180b
This is done for the following test modules:
VtsHalWifiHostapdV1_0TargetTest
VtsHalWifiHostapdV1_1TargetTest
Test: Tree Hugger
Bug: 143903671
Change-Id: I26b7981e340ac2fc9009f8741fc9e415d1a3c8f0
10s is not enough for low-end devices, extending waiting time to
avoid false alarm for low-end devices.
Bug: 201184673
Test: atest VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I5b58a75fb20cbb65402785ba05355349f91fcd2b
Stopping entire framework can cause other essential services to be
stopped. When wifi is stopped, it does not interact with any of the
wifi HAL's.
Bug: 201266536
Bug: 201184673
Test: atest --iterations 10 \
VtsHalWifiSupplicantV1_0TargetTest \
VtsHalWifiSupplicantV1_1TargetTest \
VtsHalWifiSupplicantV1_2TargetTest \
VtsHalWifiSupplicantV1_3TargetTest \
VtsHalWifiSupplicantV1_4TargetTest \
VtsHalWifiSupplicantP2pV1_0TargetTest \
VtsHalWifiSupplicantP2pV1_2TargetTest \
VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I07d9c70a50eb9558f05a915a4c0f26d721a104ac
onSubsystemRestart should be triggered by wifi HAL
when subsystem restart happened.
Add log to debug why this callback function was not trigger at
unexpected corner case.
Bug: 201330066
Test: Manual test
Change-Id: I160adc6006d078fcc72c1768927e87e378fd675e
Merged-In: I160adc6006d078fcc72c1768927e87e378fd675e
onSubsystemRestart should be triggered by wifi HAL
when subsystem restart happened.
Add log to debug why this callback function was not trigger at
unexpected corner case.
Bug: 201330066
Test: Manual test
Change-Id: I160adc6006d078fcc72c1768927e87e378fd675e
Stopping entire framework can cause other essential services to be
stopped. When wifi is stopped, it does not interact with any of the
wifi HAL's.
Bug: 201266536
Bug: 201184673
Test: atest --iterations 10 \
VtsHalWifiSupplicantV1_0TargetTest \
VtsHalWifiSupplicantV1_1TargetTest \
VtsHalWifiSupplicantV1_2TargetTest \
VtsHalWifiSupplicantV1_3TargetTest \
VtsHalWifiSupplicantV1_4TargetTest \
VtsHalWifiSupplicantP2pV1_0TargetTest \
VtsHalWifiSupplicantP2pV1_2TargetTest \
VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: Ia4a38c2e942681f323cf76941713c429e14870cc
10s is not enough for low-end devices, extending waiting time to
avoid false alarm for low-end devices.
Bug: 201184673
Test: atest VtsHalWifiSupplicantP2pV1_4TargetTest
Change-Id: I9baa53a462b97738e6dc471cf06c2b9230b92c1c
Stopping entire framework can cause other essential services to be
stopped. When wifi is stopped, it does not interact with any of the
wifi HAL's.
Bug: 168278011
Bug: 199444489
Test: atest --iterations 10
VtsHalWifiSupplicantP2pV1_0TargetTest
VtsHalWifiSupplicantP2pV1_1TargetTest
VtsHalWifiSupplicantP2pV1_2TargetTest
VtsHalWifiSupplicantP2pV1_3TargetTest
Change-Id: Ia93e78cf4c147e42dd3d68e24a582c0c1af15899
Added SPDX-license-identifier-Apache-2.0 to:
wifi/hostapd/aidl/Android.bp
Bug: 68860345
Bug: 151177513
Bug: 151953481
Test: m all
Exempt-From-Owner-Approval: janitorial work
Change-Id: I0178f1f02cee7046256a3e4425e5c1fbabe6da85
Add AIDL version of Wifi HAL hostapd interfaces, converted from
android.hardware.wifi.hostapd@1.3 HIDL interfaces.
Bug: 194806512
Test: m android.hardware.wifi.hostapd-update-api
Change-Id: I1035f8bc9171e59967448fa438f2cc79ad53c066
Looper.h needs to include the header for unordered_map, which itself
includes math.h, which defines the macro NAN. Some HALs use enums called
NAN, which causes a build error if the NAN macro is defined. We need to
undef NAN in these cases after including Looper.h.
Bug: 195020232
Test: presubmit: checkbuild
Merged-In: I63bba8ea809a12571ddc88cd1d20f2adeedf0b30
Change-Id: I63bba8ea809a12571ddc88cd1d20f2adeedf0b30
(cherry picked from commit dda604440b)
(cherry picked from commit 84a19f64f5)
Looper.h needs to include the header for unordered_map, which itself
includes math.h, which defines the macro NAN. Some HALs use enums called
NAN, which causes a build error if the NAN macro is defined. We need to
undef NAN in these cases after including Looper.h.
Bug: 195020232
Test: presubmit: checkbuild
Merged-In: I63bba8ea809a12571ddc88cd1d20f2adeedf0b30
Change-Id: I63bba8ea809a12571ddc88cd1d20f2adeedf0b30
This would ensure that 1.4 vts tests are run with
ISupplicant 1.4 support.
Bug: 194979754
Test: atest VtsHalWifiSupplicantV1_4TargetTest
Change-Id: Ifaa3e1bb27f1df350b83fb7a4c05b6251a7c2d10
Clear the in-memory ringbuffer after writing to file.
Bug: 193007899
Test: Manually verified ringbuffers are cleared with command "adb shell
lshal debug android.hardware.wifi@1.5::IWifi"
Change-Id: Icfa08634e948d7155e231458edd394a4d699fbaa
The MAC address of the bridged interface will be dynamically generated
by kernel when any bridged iface is changed. This means that the
bridged interface MAC address will be changed when we remove one of the
instances from the bridged interface (shutdown unused interface case).
The MAC change will break operation of bpf and it may cause the SAP
client to send wrong ns packets because the tethering module is
still using the old MAC in the ra packet.
Always set MAC address so the bridged interface can avoid MAC changing.
Bug: 191611764
Bug: 192315721
Test: Manual test with IPv6 tethering. Make sure client won't disconnect
because it doesn't get na response.
Test: Manual test in two scenarios: 1. MAC randomization 2. reset to factory MAC.
Change-Id: I854fc74b6532824b7d7b5a1aa4bc20a3cf9fd588
1.5 HIDL service is not declared in lazy init rc.
Bug: 191940153
Test: atest VtsHalBaseV1_0TargetTest
Change-Id: Idc4d01e9696c35c8fc2390a2639ff8d7ebf0bbf0
The active interface need to be updated when any of interface changecd.
Also fix the local cache bridged_ap_instances value incorrect
when erasing.
Bug: 191625124
Test: Manual check property "wifi.active.interface" after wlan2 down
Test: Manual test with command "halutil -sar enable 0" after wlan2 down
Change-Id: I40150c231313505ca355228e711c2448088f41ad
SupplicantStaIfaceHidlTest.SetCountryCode(default,default)_32bit fails
when US countrycode is not supported on the device. The test will
read the value of "ro.boot.wificountrycode" and set it to the
countrycode. When the property is not defined on the device, US will
be set by default.
Bug: SupplicantStaIfaceHidlTest.SetCountryCode(default,default)_32bit fails
Bug id https://issuetracker.google.com/182296217
Test: Module VtsHalWifiSupplicantV1_0Host passes successfully
Change-Id: Iec2991223c6857d65b2ecc4337e920d5b823dd3d
Signed-off-by: Hassen KETATNI <hassen.ketatni@sagemcom.com>
Firmware should maintain the last set multi STA
use case & primary connection across periods of
single STA.
Bug: 183861582
Test: compiles
Change-Id: Iab7b9298216a90ddcd792aec794266c9edb397fa
Current hostapd doesn't support mode: HOSTAPD_MODE_IEEE80211AX.
Using he_capabilies->he_supported to identify if the current mode is
AX.
BYPASS_INCLUSIVE_LANGUAGE_REASON : The HE is a abbreviation
which is High-Efficiency.
Bug: 162484222
Test: Enable SAP on P21 (supported AX) and check the wifistandard is
AX mode.
BYPASS_INCLUSIVE_LANGUAGE_REASON=The HE is a abbreviation
which is High-Efficiency.
Change-Id: I1f40f2e2e5a0d1a862810d19899a6d968d8c29b2
Get the radio id from link layer radio stats
to framework.
Bug: 163103321
Test: VTS test - VtsHalWifiV1_5TargetTest
Change-Id: I6958a5b78798edf8529032cd255c61ba6a442633
In order to trigger subsystem restart to reload wlan firmware,
this change adds an API for framework and vendor HAL.
Meanwhile, create new callback function for subsystem restart instead of
general callback "onFailure()".
Bug: 178126071
Test: vendor HAL can received API call
subsystem restart will callback "onSubsystemRestart()"
Change-Id: If3dc84049a9171677ad281c9bcc67a44dc722bdb
Treat WIFI_CHAN_WIDTH_INVALID(-1) and any other unknown
bandwidth value as invalid.
Bug: 182850702
Test: VTS - VtsHalWifiV1_5TargetTest
Change-Id: Id25d50af9283b89f135a4f36e1f696f6db4e302e
setMacAddress may fail in some scenarios like SSR inprogress. In such
case framework is not bringing up the iface again if it was brought down
to set random MAC address. Due to this subsequent operations like scans
are failing with "Network Down" error and Wi-Fi can't recover until
Wi-Fi restarts. To avoid this bring up the iface irrespective of
setMacAddress status.
Modified the original CL to move the WifiIfaceUtil creation to inside
Wifi object since that is where the legacy HAL instance is created for
the corresponding chip. This helps keeping the setMacAddress logic still
inside WifiIfaceUtil. Modified the iface_util lifetime - no longer a
singleton, one instance created per wifi chip instance.
Bug: 174183763
Test: Wifi can be enabled when back-to-back SSR and wifi on
Change-Id: I926b59f5da126aba222e05d1e570c0c19de739ed
Fix coex VTS test by configuring chip for sta iface before invoking the
coex hal api.
Bug: 177929636
Test: atest VtsHalWifiV1_5TargetTest
Change-Id: I5ead53e603a2136e3c8b2d931c512e6d337f4ba7
Add ability to filter usable channel due to coex &
concurrency limitations. List of usable channels could
be limited due to coex restrictions and also due to
concurrency limitations & connection state.
Bug: 160212907
Test: VTS - VtsHalWifiV1_5TargetTest
Change-Id: Ic36b792b93fc4a6e328b9bc606a5286b8c1fd690
API can be used to query what modes (SAP, STA,
WFD Client, WFD Group Owner, TDLS, NAN) can be
supported on each channel for specified band.
Needs support from Wifi chip vendors.
Bug: 160212907
Test: VTS - VtsHalWifiV1_5TargetTest
Change-Id: Icf270b8c2ee14c794778421c9d988712c5c38380
Also fix the instances doesn't update after removing the instance
Cherry-pick from ag/13382534 which finished the review in master branch
Bug: 173999527
Test: atest -c VtsHalWifiApV1_5TargetTest
Change-Id: I439922d38c35b5367823f95f5f7d0e4c6ed05f57
This `if` is executed once, so using `legacy_status` from a prior
execution is nonsensical.
Caught by the static analyzer:
> hardware/interfaces/wifi/1.5/default/wifi_chip.cpp:1053:39: warning:
1st function call argument is an uninitialized value
[clang-analyzer-core.CallAndMessage]
Bug: 173999527
Test: atest -c VtsHalWifiApV1_5TargetTest
Merged-In: Ib81f1496be53e453d9c99ede129a77bdaf860de7
Change-Id: Ib81f1496be53e453d9c99ede129a77bdaf860de7
Added a callback function to indicate that the
supplicant failed to find a network in scan result
which matches with the network capabilities requested by upper layer
for connection.
Bug: 161196120
Test: vts test - VtsHalWifiSupplicantV1_4TargetTest
Change-Id: I9549a80ca636b4ee91aca421cf7cfae9f95a9161
If Wi-Fi driver knows it's in scan-only mode, it can save more power
than connect mode.
This change adds setScanMode in IWifiStaIface to allow Wi-Fi framework
to notify scan-only mode change to Wi-Fi driver.
Bug: 177811719
Test: atest VtsHalWifiV1_5TargetTest
Change-Id: I1dfbc24a0a3272c1341223aff36656be4a6fd21b
In current android design, the general use case is the interface is
removed after terminate() call.
But the VTS kill the hostapd immediately it causes terminate doesn't
work normally.
Add sleep 3 seconds to allow terminate processing.
Another test case is considered to check hostapd died because any reason.
(for instance: NPE crash)
But the interface handling in android design is control in framework and WiFiHal.
Case 1. Native crash will be handled in framework and clean the interface for
the recovery.
Case 2. VTS use "stopHAL" to clean "primy interface".
It will cause clean up fail if OEM use "non-primy interface" for the SoftAp.
But it is not requirement in hostapd HAL. Verify terminate is good in
VtsHalWifiHostapd.
Bug: 177483254
Bug: 177389456
Test: atest -c VtsHalWifiHostapdV1_3TargetTest
Change-Id: I39f6ee92b1354ab2cebbe2fe6e9873e62d850c42
In current android design, the general use case is the interface is
removed after terminate() call.
But the VTS kill the hostapd immediately it causes terminate doesn't
work normally.
Add sleep 3 seconds to allow terminate processing.
Another test case is considered to check hostapd died because any reason.
(for instance: NPE crash)
But the interface handling in android design is control in framework and WiFiHal.
Case 1. Native crash will be handled in framework and clean the interface for
the recovery.
Case 2. VTS use "stopHAL" to clean "primy interface".
It will cause clean up fail if OEM use "non-primy interface" for the SoftAp.
But it is not requirement in hostapd HAL. Verify terminate is good in
VtsHalWifiHostapd.
Bug: 163170239
Test: atest -c VtsHalWifiHostapdV1_2TargetTest
Test: atest -c VtsHalWifiHostapdV1_1TargetTest
Test: atest -c VtsHalWifiHostapdV1_0TargetTest
Change-Id: Id5adc12be4a098af8e5b75d9182c004c1030720c
Tested on S5 and O6.
Found VTS gets failure on wlan1
b/177389456 to track for O6
b/177483254 to track for S5
But both of O6 and S5 will get pass because it uses wlan0.
Bug: 162686273
Bug: 173999527
Test: atest -c VtsHalWifiHostapdV1_3TargetTest
Test: atest -c VtsHalWifiApV1_5TargetTest
Change-Id: Idbaa7fb2f95abc954fda8daf8670e4a57b453030
Country code is global setting across the Wifi chip
and not really Wifi interface (STA or AP) specific.
Framework should have the ability to set the country
code on a chip level without requiring supplicant
instance to be running. As long as there is at least
one active interface to communicate to kernel driver,
country code can be set and driver should apply the
setting globally.
Bug: 149936939
Test: VTS - VtsHalWifiV1_5TargetTest
Change-Id: I1be5dae34b216a6152d09605d055872d5345507c
Parse association response for MBO association
disallowed indication and OCE RSSI based association
rejection info and send it to framework in association
rejection event.
Bug: 162542063
Test: vts test - VtsHalWifiSupplicantV1_4TargetTest
Change-Id: I63ae2c37b816dbe1790647e90541e2d0b6df8401
The hal use first active wlan iface to get chip info.
It should should return active wlan instance in bridged mode.
Bug: 162686273
Test: Manual test.
1. Wifi Off (SAA off), make sure bridged AP is first wlan iface
2. Enable bridged mode
Change-Id: Id5a3d5ab53c6ed34d5633be22ad56070f5f0d0e2
Including the header inside a namespace leads to ODR violations,
which are normally benign but can cause problems if we want to use
something like CFI in the wifi HAL.
Change-Id: I80cc854632da7e18e5c208ba9210de44b31abbdb
Merged-In: I80cc854632da7e18e5c208ba9210de44b31abbdb
Including the header inside a namespace leads to ODR violations,
which are normally benign but can cause problems if we want to use
something like CFI in the wifi HAL.
Change-Id: I80cc854632da7e18e5c208ba9210de44b31abbdb
The current hostapd use channelParams1_3.bandMask
(changed on ag/13001575), but VTS doesn't
prepare test data:channelParams1_3.bandMask.
Test: atest VtsHalWifiHostapdV1_3TargetTest
Test: atest VtsHalWifiHostapdV1_2TargetTest
Test: atest VtsHalWifiHostapdV1_1TargetTest
Test: atest VtsHalWifiHostapdV1_0TargetTest
Bug: 176139512
Change-Id: Ibdc08acb55b673b464b5c59ae714157941487a5b
Added 2 seconds delay in RTT tests. This helps drivers finish the
current test and process the next test.
Bug: 175605811
Test: VTS test - VtsHalWifiRttV1_4TargetTest
Change-Id: I3bb719b5b75ba960913bd405b2c8a41047689682
Add custom enum for wifi coex restrictions since IfaceType is not
suitable for use as a bitmask flag since it does not represent bit
positions.
Bug: 153651001
Test: build
Change-Id: I15575ea12784a778a3b358eea1b05b75319aa95b
1. The concurrent property name over the limitation.
Rename the property name.
2. When allocate bridged iface name, it needs to increase the idx to
avoid two ifaces use the same name.
Bug: 162686273
Test: atest -c VtsHalWifiApV1_0TargetTest
Test: atest -c VtsHalWifiApV1_4TargetTest
Test: atest -c VtsHalWifiApV1_5TargetTest
Change-Id: I388cdd812bd0448c03ad5ae982547629c1e5eff9
Having the AP and STA set the same MAC address in tests could cause
unintended failures when WifiApIfaceHidlTest and WifiStaIfaceHidlTest
are executed back to back.
Bug: 172528120
Test: atest VtsHalWifiApV1_4TargetTest VtsHalWifiV1_2TargetTest
Change-Id: I336d21cd896c46b064f16ecfa184a26dab67deaa
Add HIDL APIs to convey a list of unsafe Wifi channels to the driver for
coex channel avoidance.
Bug: 153651001
Test: build
Change-Id: I8b14f0e2d8855c1f1e363d612617256d8e928f30
SAP Interface idx mechanism.
STA+STA support, AP+AP will use wlan2 & wlan3, single AP use wlan2
STA+STA doesn't support, AP+AP use wlan1 & wlan 2, single AP use
wlan 1
STA+AP doesn't support, AP + AP will take wlan0 & wlan 1 but single AP
use wlan0 (Ideally it should not happen)
Add predefine interface support for bridged AP interface.
(property: ro.vendor.sap.concurrent.interface)
PS: Rename: getApIfaceName to getPredefinedApIfaceName since it
duplicates public HAL API: getApIfaceName
AP+AP Part 4 includes:
1. Support API to indicate Bridged AP supported or not
2. SAP Interface idx mechanism.
Bug: 162686273
Bug: 173999527
Test: atest -c VtsHalWifiApV1_0TargetTest
Test: atest -c VtsHalWifiApV1_4TargetTest
Test: atest -c VtsHalWifiApV1_5TargetTest
Change-Id: I115e294ac2be201cfa3a58cfa0a8a98b481b29de
On a low-end device which does not support STA-SAP concurrency, if STA
is currently enabled and user/app tries to enable SAP, then Wi-Fi needs
to reconfigure and stop Wi-Fi HAL first. Among other stopping actions,
HAL needs to set global_handle_ to nullptr and send "Exit" to
wifi_event_loop then waits no more than kMaxStopCompleteWaitMs. If the
wait times out, then reconfiguration fails and causes Wi-Fi controller
returns to STA mode and creates new STA iface indirectly. In this
process, HAL needs to access global_handle_, but since it was cleared,
we can only get a Native Exception.
Because there is no proper error recovery for UNKNOWN errors, I suggest
to simply set kMaxStopCompleteWaitMs to a higher value to circumvent
this timing issue.
Bug: 173760638
Change-Id: I1b5a0a7a554409704c017ffaf52a767b9424c61e
Support HAL API:resetToFactoryMacAddress to reset the MAC
to factory MAC on each instances in IWifiApIface.
AP+AP Part 3 includes:
1. Support resetToFactoryMac in IWifiApIface.Hal.
2. Vts support for non bridged API.
3. Framework support resetToFactoryMac in bridged Ap.
Test: atest -c VtsHalWifiApV1_5TargetTest
Test: atest -c VtsHalWifiApV1_4TargetTest
Test: atest -c VtsHalWifiApV1_0TargetTest
Bug: 162686273
Change-Id: Ic7f2c0d6f1d8bf46fabfbc874d5f2b74068e43cc
Added below HIDL APIs for DPP STA Enrollee-Responder mode
1. API to start DPP in Enrollee-Responder mode
2. API to generate DPP bootstrap URI
3. API to stop DPP in Enrollee-Responder mode
which internally remove the bootstrap and stop listen.
Bug: 162686712
Test: VTS test
Change-Id: I979b6a7a2fe90f48d478f48da73269fd3f5cb347
If dumpstate closes the reading end of the pipe (likely due to timeout)
and wifi vendor hal attempts to write to the fd it received from
dumpstate, it will receive sig 13 (SIGPIPE), and is then killed.
We should protect wifi vendor hal from the abnormally behaved clients.
Sync patch from ag/12321138. Reference from b/172972545 &
b/161336019#comment29
Bug: 161336019
Bug: 172972545
Test: Manuel Test, Wifi works normally
Change-Id: Ie7de040ac4320f83500c18e74e3c58d63b4df1b7
The bridge interface name will take "ap_br_" + ap interface name.
ex: The ap interface name is "wlan1".
The bridge interface name will be "ap_br_wlan1"
When OEM customize the ap interface name via property
"ro.vendor.wifi.sap.interface".
It will only apply on single AP mode.
i.e.
"ro.vendor.wifi.sap.interface" = "sap0"
Single AP mode: ap interface name = "sap0"
Dual AP mode:
bridge interface name = "ap_br_sap0"
first ap instance name: get from "getSupportedIfaceName" + idx
ex: sap0
second ap instance name: get from "getSupportedIfaceName" + idx + 1
ex: sap1
PS: The VtsHalWifiApV1_5TargetTest will be added in another CL which
will update another SAP related HAL:IWifiApIface.hal.
AP+AP Part 2 includes:
1. Support bridge in libwifi_system_iface
2. WifiHal API
a. createBridgedApIface (Support create bridge mode AP)
b. removeIfaceInstanceFromBridgedApIface (Support remove one of the instance in bridge)
3. Framework:
Create bridge AP when multi-bands configured.
Bug: 162686273
Test: Manual Test (SAP enable normally)
Test: atest -c VtsHalWifiApV1_0TargetTest
Test: atest -c VtsHalWifiApV1_4TargetTest
Change-Id: I8be510778e9772bcf1539e4915384949cbe13127
Older registerCallback is not deprecated until V1.4 HAL correctly.
As a result, their returning codes are still SUCCESS.
Bug: 173570755
Test: atest VtsHalWifiSupplicantV1_0TargetTest \
VtsHalWifiSupplicantV1_1TargetTest \
VtsHalWifiSupplicantV1_2TargetTest
Change-Id: Ib23821d64f53c144d74818fa3ed9aca06cd25a27
AP+AP Part 2 includes:
1. Support bridge in libwifi_system_iface
2. WifiHal
a. createApIface_1_5 (Support create bridge mode AP)
b. removeApIface_1_5 (Support remove one of the instance in bridge)
3. Framework:
Create bridge AP when multi-bands configured.
Bug: 162686273
Test: Manual Test (SAP enable normally)
Change-Id: I518417add566ce4780a7e2e83af14460e6e8a217
Extend the band with 60GHz constant to support starting
AP on the 60GHz band.
Add channel parameters for EDMG (802.11ay, 60GHz channel
bonding).
Bug: 147469374
Test: atest VtsHalWifiHostapdV1_3TargetTest
Change-Id: I8d3ca0c14766dfb4a79c1febcc2bb05f65ba311e
This will be useful for testing/debugging STA + STA & AP + AP feature.
Note: I originally planned to read the entire iface combination from the
property (i.e would be much more flexible), but that is way too complex
and error prone. So, instead pre-define some combinations that we would
want to switch between and use the property as an index.
Bug: 173044646
Test: Manual:
i) adb shell "/vendor/bin/sh -c '/vendor/bin/setprop
persist.vendor.debug.wifi.hal.preset_interface_combination_idx 0'"
ii) adb reboot
iii) Ensure that AP + AP was enabled.
Change-Id: Iea63835c39fce78307a056a5ed94efcbd35cdfb6
The logic to skip the p2p tests on non-p2p devices appear to have
inadventently flipped since d6436731.
Bug: 173134041
Test: atest VtsHalWifiSupplicantV1_1TargetTest
Change-Id: I7945950e8483241e47e308a2c5ad97571d74a769
The logic to skip the p2p tests on non-p2p devices appear to have
inadventently flipped since d6436731.
Bug: 173134041
Test: atest VtsHalWifiSupplicantV1_1TargetTest
Change-Id: I7945950e8483241e47e308a2c5ad97571d74a769