Commit graph

109 commits

Author SHA1 Message Date
Gabriel Biren
989c78a51f Set the value of using_dynamic_iface_combination_
in the WifiChip constructor.

gTest suite currently cannot mock the legacy HAL
call for getSupportedIfaceConcurrencyMatrix.
If we set using_dynamic_iface_combination_ to true
in the unit tests, we can avoid making this call.

Bug: 271914366
Test: ./runtests.sh # gTest
Test: atest VtsHalWifiChipTargetTest # VTS
Change-Id: Ic43daab6ff5fdc5f78af614ad775f436fbbe8726
2023-06-14 22:45:29 +00:00
Yuyang Huang
5c3c6483d3 Update APF VTS to include the vendor API level check
APF is support is mandatory since VSR 14. Before that, the APF
requirement is optional. Vendors can opted into upgrading their
HAL to AIDL, so the VTS need to check if vendor API level on the device
and only mandate the APF capability check if the vendor API level is
greater or equal to 14.

Bug: 283181837
Test: atest VtsHalWifiStaIfaceTargetTest
Change-Id: I21513187d4ca99d721d0e9dc5e243adad77ab8c6
2023-05-18 18:11:56 +09:00
maheshkkv
0ace7e5f91 Add documentation for Aware suspend & resume
Bug: 281882132
Test: build
Change-Id: Ifea3dd9a0bd635c95e3b80f09427d380b75e0fa9
2023-05-10 17:01:24 -07:00
Gabriel Biren
6d41484860 Skip RTT responder VTS tests if the capabilities
do not indicate responder support.

Bug: 280550766
Test: atest WifiRttControllerAidlTest
Change-Id: I343dc3f2729274db5628f54501b89a470a512206
2023-05-03 22:11:51 +00:00
Gabriel Biren
fce371b9b5 Add a lock around any public methods in
the AidlCallbackHandler.

Bug: 278433745
Test: Start wifi.
Change-Id: I2b143b9e8671eaf8c63c5623c09d2a04f914a772
2023-04-21 18:15:16 +00:00
Yuyang Huang
b37f9a8a83 Add @VsrTest annotation to Apf test
Bug: 259309511
Test: atest VtsHalWifiStaIfaceTargetTest
Change-Id: I860e7bff6a31ae7871a6041ab76c2c685b7c8c38
2023-04-14 12:26:32 +09:00
Gabriel Biren
f5c86e53bf Merge "Acquire the global lock when the dump method is called." into udc-dev 2023-04-12 20:06:12 +00:00
Xiao Ma
e238106742 Merge "Update the setDtimMultiplier aidl API documentation." into udc-dev 2023-04-12 00:46:17 +00:00
Xiao Ma
9acf79f7ad Update the setDtimMultiplier aidl API documentation.
Update the aidl API documentation to describe how setDtimMultiplier API
is supposed to work, i.e. we can call this API to set a maximum DTIM
multiplier value to use in driver, any larger value must not be accepted
and meanwhile it allows to set a specific multiplier by OEMs. Try to
make the description clear and avoid the ambiguity.

Bug: 266256943
Test: m
Change-Id: Ic7d2284a25e32d1b0752cf2bc832c069f646fcea
2023-04-11 15:03:51 +09:00
Alex Buynytskyy
1deeb7fabf Merge "UpsideDownCake is now 34" into udc-dev 2023-04-11 01:17:33 +00:00
Gabriel Biren
57896d2a1c Acquire the global lock when the
dump method is called.

This should prevent a race condition
between stop() and dump().

stop() already acquires the global lock
when it calls validateAndCall().

Bug: 274641043
Test: adb shell dumpsys wifi # validates dump()
Change-Id: Ie2df0861308954cd2e399c9604d4ae0dcddf95fb
2023-04-10 23:47:45 +00:00
Alex Buynytskyy
ec1198d941 UpsideDownCake is now 34
Ignore-AOSP-First: UpsideDownCake Finalization
Bug: 275409981
Test: build
Change-Id: I832ab7a8b5445ba85e27bbcf5be64906bfa0e5be
2023-04-07 23:41:20 +00:00
Gabriel Biren
90059381f0 Do not check the returned value in the
VTS test for IWifiChip#getFeatureSet.

Some implementations of the legacy HAL,
such as Goldfish, do not have any
supported features.

Bug: 273886122
Test: atest VtsHalWifiChipTargetTest
       (tested on Cuttlefish)
Change-Id: I3ca22187cab0e77d36a28908e57ff4970535e4ae
2023-04-07 23:30:54 +00:00
Yuyang Huang
1096ca0ed2 Merge "Add VTS to cover the APF VSR requirement since U" into udc-dev 2023-03-28 03:57:02 +00:00
Yuyang Huang
e6396ba7ba Add VTS to cover the APF VSR requirement since U
Since Android U, VSR 5.3.12 mentioned the Android Packet Filtering must
be supported by CHIPSETs and DEVICEs launching on Android 14 or higher.
This VTS was added to check if APF is supported properly.

Given the limitation of the VTS testing environment, the first version
of the test case only checks: if the APF is supported by WiFi chips with
version 4 and more than 1024 bytes of usable memory.

Bug: 259309511
Test: atest VtsHalWifiStaIfaceTargetTest
Change-Id: I3ee2a980a4440db232738a23c1633aaff3562d95
2023-03-27 10:54:44 +09:00
Ye Jiao
2dc47ca925 Add config to skip state toggle off/on for Wi-Fi NAN
If STA and NAN share the same iface wlan0, Wi-Fi vendor HAL service
sends eventDisabled to NAN framework when STA setMacAddress to wlan0.
This disables NAN when STA is turned on.

Since NAN always uses its own random MAC instead of using MAC of STA,
this action is not necessary and gets NAN kicked off for no benefits.

We add a build time configuration to optionally disable this behavior.

Bug: 273426515
Test: manually test

Change-Id: Ifc71b7e8d09eac1b66b9e18c70e0e6d202683ff6
2023-03-21 18:13:18 +00:00
Oscar Shu
e07c69786d Merge "Update setAfcChannelAllowance" into udc-dev 2023-03-16 23:40:24 +00:00
Oscar Shu
4275c8793c Update setAfcChannelAllowance
Use a new structure to passdown:
- AFC information queried based on frequency
- AFC information queried based on channel number
- expiration time

This change is per chip vendor request. Based on AFC server support,
either frequency based information or channel based information may be
empty. If both are empty, then it indicate the driver should not allow
any standard power transmission on 6Ghz.

Bug: 262791660
Test: compile
Test: Manually verified information is passed down with local framework
change

Change-Id: Id1d014a6113f6863b98ef8239a5a52d3863aa758
2023-03-16 18:55:54 +00:00
Gabriel Biren
0d841ae812 Add comment to the Vendor HAL Android.bp file to
explain why the linter is disabled.

If the linter were enabled, we would run into a
build failure because fixed-size arrays are not
supported on SDK Level < 33. The interface indicates
min_sdk_version 30 due to mainline requirements,
but the interface will only be accessed by devices
running Android U.

Bug: 267819850
Test: m
Change-Id: Ifed2223d1c5f4bf46329ed72fa622b730e99cde1
2023-03-16 17:24:51 +00:00
Gabriel Biren
c939532af1 Merge "Remove deprecated method getValidFrequenciesForBand from IWifiApIface and IWifiStaIface." into udc-dev 2023-03-15 17:24:54 +00:00
Gabriel Biren
2f86249fcb Rename getCapabilities to getFeatureSet
in the Vendor HAL implementation.

Bug: 267819850
Test: Run gTest suite
Change-Id: Id21f3edde0b01636d0a994cc8b7b1d434bacaa04
2023-03-09 19:14:36 +00:00
Gabriel Biren
2a391a09df Rename getCapabilities to getFeatureSet
in IWifiChip and IWifiStaIface.

Main purpose is to distinguish between
the 2 capability methods in IWifiChip:
 - getCapabilities (renamed here)
 - getWifiChipCapabilities

Bug: 267819850
Test: atest VtsHalWifiChipTargetTest \
            VtsHalWifiStaIfaceTargetTest
Change-Id: I03c15d652d02aef99b219c2d630b69acb4d9e43c
2023-03-09 19:07:53 +00:00
Gabriel Biren
810771c323 Remove deprecated method getValidFrequenciesForBand
from IWifiApIface and IWifiStaIface.

Bug: 267819850
Test: atest VtsHalWifiStaIfaceTargetTest \
            VtsHalWifiApIfaceTargetTest
Change-Id: I369d72e3eff9283552822a92b26ce0f4fb35fedf
2023-03-09 00:40:50 +00:00
TreeHugger Robot
0e270ef5f1 Merge "Convert NAN enums that are used as bitmaps to an int." into udc-dev 2023-03-03 21:51:58 +00:00
TreeHugger Robot
b77c796280 Merge "Update comments to indicate whether NAN enums are used as an enum or a bitmask." into udc-dev 2023-03-03 21:45:15 +00:00
Gabriel Biren
53368fa332 Merge changes from topic "vendor-hal-bitmaps" into udc-dev
* changes:
  Update Vendor HAL service to use ints for bitmaps instead of using enums.
  Use an int to represent bitmaps in the Vendor HAL AIDL interface.
2023-03-03 21:21:34 +00:00
Gabriel Biren
86971aa04c Convert NAN enums that are used as bitmaps
to an int.

Bug: 267819850
Test: atest VtsHalWifiNanIfaceTargetTest
Change-Id: I6085c01fe6a7585fbdd8855bfdf183a75644ff80
2023-03-03 18:06:33 +00:00
Gabriel Biren
e817aeb699 Update comments to indicate whether NAN enums
are used as an enum or a bitmask.

Bug: 267819850
Test: m
Change-Id: I6625d017a5563f82e87a2ee9300bb2d880b9242a
2023-03-03 18:02:16 +00:00
TreeHugger Robot
4da12781df Merge "Update imports and argument comments in the NAN sections of the Vendor HAL interface." into udc-dev 2023-03-02 19:49:19 +00:00
Nate(Qiang) Jiang
39eee87484 Merge "Change the value of constant according to the spec" into udc-dev 2023-03-02 18:41:23 +00:00
Nate Jiang
cdf2ef0bac Change the value of constant according to the spec
Re-assign the value according to the Wifi Aware R4.0 section 9.5.21.1
Also correct several comments.

Bug: 269440402
Test: build
Change-Id: Ib3dd6365b2a28f871ec6ae3775ee8b9e9481475f
2023-03-01 13:58:36 -08:00
Gabriel Biren
3b86a78032 Update Vendor HAL service to use ints
for bitmaps instead of using enums.

Bug: 267819850
Test: m
Change-Id: I6fba3cd669d197229ff637c6326a94be624d5e6e
2023-03-01 21:30:40 +00:00
Gabriel Biren
008c1da031 Use an int to represent bitmaps in
the Vendor HAL AIDL interface.

Bug: 267819850
Test: atest VtsHalWifiChipTargetTest \
            VtsHalWifiStaIfaceTargetTest \
	    VtsHalWifiApIfaceTargetTest \
	    VtsHalWifiNanIfaceTargetTest \
	    VtsHalWifiRttControllerTargetTest
Change-Id: Ic72496c654067b2db97109cc3dc9ff50f1f1d1dd
2023-03-01 21:30:15 +00:00
TreeHugger Robot
b964c8b7be Merge "Update comments for the Aware 4.0 types in the Vendor HAL interface." into udc-dev 2023-03-01 20:31:36 +00:00
Gabriel Biren
e2d0de2093 Update imports and argument comments in the NAN
sections of the Vendor HAL interface.

Bug: 267819850
Test: m
Change-Id: Ic1b25239e5cf3a5cf8633c9d1108a4c200b1b861
2023-03-01 19:10:41 +00:00
Gabriel Biren
65192c3395 Update comments for the Aware 4.0
types in the Vendor HAL interface.

Specs should be included in the
relevant places.

Bug: 267819850
Test: m
Change-Id: I1f213774ebf5dc297225a5cabb757d2956d67bf4
2023-03-01 18:02:34 +00:00
Gabriel Biren
b59064517a Merge changes from topic "remove-radio-combo-matrix" into udc-dev
* changes:
  Update usages of WifiRadioCombinationMatrix in the Vendor HAL service.
  Remove the WifiRadioCombinationsMatrix type from the Vendor HAL interface.
2023-03-01 17:51:51 +00:00
Gabriel Biren
d1bd021607 Merge "Comment fixes for the Wifi Vendor HAL." into udc-dev 2023-02-25 00:40:22 +00:00
Gabriel Biren
263db45eae Update usages of WifiRadioCombinationMatrix in
the Vendor HAL service.

Bug: 267819850
Test: Run the gTest suite under default/tests
Change-Id: I18feb87f16abbc9ece9186b2e92e19984a5a90f0
2023-02-24 21:11:08 +00:00
Gabriel Biren
432807e44b Remove the WifiRadioCombinationsMatrix type from the
Vendor HAL interface.

We can return a list of WifiRadioCombinations instead.

Bug: 267819850
Test: atest VtsHalWifiChipTargetTest
Change-Id: I0f57df6262d36917dfd8cc3e27d6781e9b7c8dbf
2023-02-24 21:03:20 +00:00
Gabriel Biren
0c642ecd42 Comment fixes for the Wifi Vendor HAL.
Bug: 267819850
Test: m
Change-Id: Iaf8bd05482b87f8b0a56da8c4169413d1c6b7d0e
2023-02-22 21:09:26 +00:00
Gabriel Biren
dcd883ff85 Merge "Free version buffer in the Vendor HAL's XML parsing logic." into udc-dev 2023-02-21 17:55:07 +00:00
Gabriel Biren
204e17171b Free version buffer in the Vendor HAL's
XML parsing logic.

Fixes a minor memory leak that results from
not freeing that buffer.

Bug: 269520490
Test: Manual test
       1. Create several XML files under
          /vendor/etc/wifi/vendor_hals
       2. Modify the codepath to run the
          initVendorHalsDescriptorList method
	  (does not run by default on Pixel).
       3. Check that the XML parsing logic is
          working as intended.
Change-Id: I42944169b70c759998d94e8523d2aa55d0366ffd
2023-02-17 16:47:29 +00:00
Sunil Ravi
2be1f2688c Wifi: Add support to query and use driver advertised interface combination
Interface combinations in legacy-hal is predefined with
'WIFI_HAL_INTERFACE_COMBINATIONS' build flag. This change
allows the WiFi HAL to request all the possible interface
concurrency combinations via vendor HAL API,
wifi_get_supported_iface_concurrency_matrix(). Thus build time
dependency can be removed by querying the combination at runtime.

Bug: 249351396
Change-Id: I3bc85ac013490949aab71a00f60028bf5daee68c
Merged-In: I3bc85ac013490949aab71a00f60028bf5daee68c
Test: Build successfully
Signed-off-by: Purushottam Kushwaha <quic_pkushwah@quicinc.com>
(cherry picked from commit f68b9a2709)
2023-02-17 15:20:35 +00:00
Gabriel Biren
597ffa095d Merge "Remove unused DEBUG_PACKET_FATE capability from StaIfaceCapabilityMask." 2023-02-16 07:51:32 +00:00
Mahesh KKV
671f83152d Merge "Add a new AIDL API to set Multi-Link Operation mode" 2023-02-16 02:00:57 +00:00
Mahesh KKV
af05c5ef64 Merge "Add TID-to-Link mapping capability fields" 2023-02-16 01:27:52 +00:00
Mahesh KKV
6442e4a7f9 Merge "Fix multi-link llstat parsing in wifi legacy hal" 2023-02-15 23:58:58 +00:00
Gabriel Biren
dd47e716a0 Remove unused DEBUG_PACKET_FATE capability
from StaIfaceCapabilityMask.

Bug: 266521428
Test: atest VtsHalWifiStaIfaceTargetTest
Change-Id: If20728567cb8877ae54488480e13fd8541640b92
2023-02-15 23:55:02 +00:00
Nate(Qiang) Jiang
4496bcd4cf Merge "Modify HAL for Aware suspension mode" 2023-02-15 23:24:01 +00:00