Commit graph

418 commits

Author SHA1 Message Date
Roshan Pius
0d1bb97447 wifi(vts): Remove a tight loop of toggling wifi state
The tight loop of HAL start/stop exposes a race condition within the HAL.
Adding a fix for preventing this race would need a fix which would be
pretty risky at this point of the release. The issue itself is unlikely
to happen in real use cases because wifi toggles (user initiated or test
scripts initiated) via framework goes through a series of processing
before it invokes the HAL start/stop.

Bug: 64195190
Test: `make vts -j30 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 &&
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module VtsHalWifiV1_0Target -l
INFO`

Change-Id: I4e4d65f8b6e2e423a3a5f26e5a97a78b7e99c3e8
2017-08-09 04:58:29 +00:00
Roshan Pius
8c216524a3 wifi(vts): Ignore IWifi.stop() returning ERROR_NOT_AVAILABLE
When IWifi.stop() is invoked back to back (happens in the ConfigureChip
vts test), the HAL would return ERROR_NOT_AVAILABLE if the previous stop
is still being processed. This is not an error that needs to fail the test,
but a legitimate status for stop. We have a retry mechanism to handle
this in both the VTS test and framework for the case where IWifi.start()
is invoked while the previous stop is being processed.

While there, corrected a few log messages emitted by the HAL to debug
such startup/stop issues better.

Bug: 63971806
Test: `vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module VtsHalWifiV1_0Target -l
INFO`

Change-Id: I5e3470ac97541a6ea10aceec9b737e5d03ed5206
2017-08-08 17:02:19 +00:00
TreeHugger Robot
cf43256fa9 Merge "Wifi Offload HAL: Improve VTS tests for scanConfig" into oc-dr1-dev 2017-07-31 19:52:44 +00:00
Roshan Pius
735ff43197 wifi(hidl): Modify the SAR power levels interface
Modifying the interface used to lower the tx power level for meeting SAR
requirements based on recommendation from the nexus hardware team. The
previous interface passed in a single power value in dBm for meeting SAR
requirements. However, the SAR requirements are more complex than that.
Based on the connection mode (802.11 a,b,g,n,ac) and the number of
streams that are active (MIMO), the SAR power levels are very
different. Using the previous interface would mean that we will have to
use the lowest power level among all the connection modes to meet the SAR
requirements. This would however result in us lowering the power much
more than needed (~2 dBm) for many connection modes.
Instead, we're switching to a more generic interface where the framework
informs the wifi chip that we're entering a special tx power mode scenario
(today, there is only 1 for voice call). The chip can then lookup the
extensive table of power levels for different connection modes which are
pre-populated by the OEM's in the BDF file to set the power level (depending
on the scenario framework sends and the active connection mode).

Bug: 62437848
Test: Manual tests
Change-Id: I5ee3f0d2c130958dbeb352e3b5ad9407f432624f
2017-07-27 14:05:03 -07:00
Sohani Rao
15ed448e49 Wifi Offload HAL: Improve VTS tests for scanConfig
Configure scans with test parameters from the Offload HAL service.

Bug: 36865676
Test: VTS tests
Change-Id: Iec5a3e837f9a2e2cf285b079a4630ff273727679
2017-07-26 11:29:37 -07:00
Roshan Pius
28b744d2d9 Merge "supplicant(vts): Remove start/stop framework" into oc-dr1-dev 2017-07-24 23:07:54 +00:00
Roshan Pius
145cce98b5 supplicant(vts): Remove start/stop framework
This is already done by the test harness on the host side. So, no need
to invoke this from within the gtest.

Bug: 63914399
Test: `make vts -j30 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 &&
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module
VtsHalWifiSupplicantV1_0Target -l INFO`

Change-Id: I43edc03492bf5e03f9a4236265c43baa5efcd61d
2017-07-24 14:13:48 -07:00
Etan Cohen
a0c6d7d5c6 [HAL] Invalidate chip before shutting down legacy HAL
Change the order of shutdown to invalidate chips before
shutting down the legacy HAL. Allows pre-shutdown commands
to be sent down.

Bug: 63704506
Test: NAN tests passing
Test: full regression suite
Change-Id: I03d237d732b4e3482b1e1639848342dfdde9fcb7
2017-07-19 19:31:12 +00:00
TreeHugger Robot
b3ea84438b Merge "wifi: Add the missing RTT capabilities" into oc-dr1-dev 2017-07-18 23:04:26 +00:00
Etan Cohen
b14c7560f7 [VTS][NAN] Restore NAN test: configure for device support
Restore NAN test and use configuration which determines test
result based on whether or not the platform supports NAN.

Bug: 63131342
Test: NAN-supporting devices: pass (the NAN tests)
Test: Non-NAN-supporting device: pass
Change-Id: I6600abc531d4eb1dea6c501f6a39ef37051cb923
2017-07-18 10:52:10 -07:00
Keun Soo Yim
e034df0640 Accept a command line arg (nan_on) in wifi vts
Test: make vts -j30 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 &&
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module VtsHalWifiV1_0Host -l
INFO

Test: VtsHalWifiV1_0TargetTest
Test: VtsHalWifiV1_0TargetTest -N
Test: VtsHalWifiV1_0TargetTest --nan_on
Test: VtsHalWifiV1_0TargetTest -f (fails)
Test: VtsHalWifiV1_0TargetTest --gtest_filter=foo
Test: VtsHalWifiV1_0TargetTest --gtest_filter=foo -N
Test: VtsHalWifiV1_0TargetTest -N --gtest_filter=foo

Bug: 63131342

Change-Id: I359ac7238496e64c7ace1e14e797d4fcfc8cc0e4
2017-07-18 10:38:42 -07:00
Roshan Pius
08df76ec0d wifi: Add the missing RTT capabilities
These feature flags are defined in the legacy HAL, but were not exposed in the HIDL
interface.

Updated the hash in current.txt using 'hidl-gen -L hash -r
android.hardware.wifi@1.1:hardware/interfaces -r
android.hardware:hardware/interfaces -r
android.hidl:system/libhidl/transport
android.hardware.wifi@1.1::IWifiChip'

Bug: 63545934
Test: Manual testing
Change-Id: Ia196e0fc1c5e305210ec95eb8a54b1a1204ebf20
2017-07-17 13:21:23 -07:00
Roshan Pius
77d9eea1da supplicant(vts): Remove dependency on libwifi_hal
libwifi_hal is a vendor component, so these are not allowed to be used
in the VTS tests. Use the vendor HAL for the required initializations
instead since that is the flow used by framework anyway (setup the wifi
chip using vendor hal and then use wpa_supplicant for connections).

Bug: 63704014
Bug: 33241851
Test: make vts -j30 BUILD_GOOGLE_VTS=true TARGET_PRODUCT=aosp_arm64 &&
vts-tradefed run commandAndExit vts --skip-all-system-status-check
--primary-abi-only --skip-preconditions --module
VtsHalWifiSupplicantV1_0Target -l INFO

Change-Id: I396d8311253e2b2493f9bb901731937019d30164
2017-07-14 19:25:32 +00:00
Roshan Pius
8184d210d2 wifi(implementation): Set/Reset TX power limit
Hookup the HIDL method calls to the respective newly added legacy
HAL functions for setting/resetting TX power limits for SAR
requirements.

Bug: 62437848
Test: VTS test fails because of a bug in Qcom implementation. Working
with Qcom to fix their implementation.
Change-Id: Ia619f5558e44d44fd77d037e72dfc1f6863b51e0
2017-07-11 14:03:06 -07:00
Roshan Pius
dbd83ef585 wifi(implementation): Create 1.1 interface package
1. Move the implementation in 1.0/default to 1.1/default.
2. Move all of the implementation to
android::hardware::V1_1::implementation namespace.
3. All of the header files include the android::hardware::V1_0 namespace
so that it can access the types from 1.0 package. ("using namespace" is
against Google style guide though :().
The other option to prefix each 1.0 type with the namespace name.
For example: V1_0::WifiStatus.
4. Added the implementation of the new 1.1 method
IWifiChip.setTxPowerLimit().
4. The executable name and the .rc still has 1.0 name in it to avoid
changing all the device.mk files.

TODO: Hookup to the new legacy HAL API.

Bug: 62437848
Test: mmm -j128 hardware/interfaces/wifi/1.1/default/
Test: Device boots up and able to connect to wifi networks.
Test: New VTS tests passes
Change-Id: Ib36282939e70b064f246041a03d8870f5cb6410e
2017-07-06 19:44:33 +00:00
Roshan Pius
ee3daf9ab6 wifi(interface): Create 1.1 interface package
Extend the wifi HAL to add a new method in IWifiChip. This new method is
used for setting the TX power limit for meeting SAR requirements.

Bug: 62437848
Test: ./hardware/interfaces/update-makefiles.sh
Test: mmm -j32 hardware/interfaces/wifi/1.1
Change-Id: I8320a64812339f15cd88636505de0dfda18f0ebf
2017-07-06 09:19:25 -07:00
Etan Cohen
c9836f95a1 [AWARE] Pass through full structure for end NDP command
The end NDP command is the only NAN HAL command which uses
a dynamically sized command structure. The original code
stripped out the non-static portions of the command - losing
the information. Modify the dynamically allocate at a lower
level of the shim.

Bug: 62569797
Test: integration tests now proceeding past failure point
Change-Id: I1732923aed64d7ec11649f0bad1731ab5bca13a0
2017-06-30 17:51:22 -07:00
TreeHugger Robot
934946a48c Merge "Offload HAL HIDL: Add return values to synchronous calls" into oc-dr1-dev 2017-06-22 17:40:02 +00:00
Etan Cohen
c4d9f87f66 [AWARE] Actually shut-down functionality when destroying NAN iface
Destroying the interface doesn't actually execute any functions on
the legacy HAL - i.e. on the HAL side. This may leave state around -
a problem when next "re-enabling" the interface as well as possibly
a power issue.

Add code to actually disable Aware and to destroy interfaces. There
is no need to check on current status since calls will simply fail
quietly if there's nothing to disable and nothing to destroy.

Bug: 62632805
Test: integration non-concurrence test cases NonConcurrencyTest
Change-Id: I11e5bd6f3ed47f6d709ff360c9f4adf5f40234a5
2017-06-15 08:59:51 -07:00
Sohani Rao
452ed3039c Offload HAL HIDL: Add return values to synchronous calls
Enhance the HIDL interface to return values indicating the status of the
operation requested by the API.

Bug: 32842314
Test: VTS
Change-Id: I9a75e2524c0256d5da405d5b1b5919d5342deebf
2017-06-08 13:45:29 -07:00
Etan Cohen
a7a059ebbf [AWARE] Fix validity check on PMK + export PASSPHRASE lengths
Bug: 62376042
Test: unit tests + integrated (sl4a) tests
Change-Id: I4c0e19a21a268fe7f2d38e82f3743ac5a8e2c6cb
2017-06-07 20:54:31 +00:00
Steven Moreland
f04fdeb83e Update internal makefiles.
These makefiles are not in dev topic branches
or AOSP currently so they were not updated. This
update adds hidl-generated-module defaults.

Test: pass
Change-Id: Ie52c54877d795bf5358aa600e6d1a13a4f166d25
2017-06-05 17:47:36 -07:00
Roshan Pius
6bb0f4d240 Merge "wifi(vts): Add retry for HAL start" into oc-dev am: 4197ba0208
am: 647d7a8aec

Change-Id: I43f2d5f90c8e5bba71753cdb8587f5fd59233e30
2017-05-23 00:54:47 +00:00
Roshan Pius
647d7a8aec Merge "wifi(vts): Add retry for HAL start" into oc-dev
am: 4197ba0208

Change-Id: I6552049f92cafa2544bd5d24e806f5dd45ea9627
2017-05-23 00:45:05 +00:00
Roshan Pius
c802e09390 wifi(vts): Add retry for HAL start
Port of the retry logic added in HalDeviceManager for temporary IWifi.start()
failures when invoked immediately after IWifi.stop().

Bug: 38342536
Test: Run VTS tests
Change-Id: Ie58a08c45979bafa0c61fa1c8536a2c0a0cd8ed9
2017-05-22 15:29:03 -07:00
Steven Moreland
aeef430de6 Merge "Update makefiles." am: 9119d4ccd1 am: 242b2288d7 am: c6da54569f
am: 67b9ae7d9c

Change-Id: I8462abc85f4f87840c4cee13361290e42746ce82
2017-05-20 00:22:03 +00:00
Steven Moreland
67b9ae7d9c Merge "Update makefiles." am: 9119d4ccd1 am: 242b2288d7
am: c6da54569f

Change-Id: Ib7f7a9cdb64985d545443edac5bb8e9c169fc592
2017-05-20 00:19:40 +00:00
Treehugger Robot
9119d4ccd1 Merge "Update makefiles." 2017-05-20 00:05:51 +00:00
Steven Moreland
e4d318948a Update makefiles.
Adds default configuration to all hals.

Test: pass
Merged-In: Icdf6b56df82c4b7b7de815e7febea9a07ab96856
Change-Id: Icdf6b56df82c4b7b7de815e7febea9a07ab96856
2017-05-19 15:53:53 -07:00
Etan Cohen
b45e3db44d Merge "[WIFI] Remove dependency on vendor-specific library" am: 294340e1d4 am: ee9e5b843a
am: 664584f74e

Change-Id: Ie99267431e980e008b3b27b1f93a58377d94e648
2017-05-19 16:07:18 +00:00
Etan Cohen
294340e1d4 Merge "[WIFI] Remove dependency on vendor-specific library" 2017-05-19 15:52:21 +00:00
Steven Moreland
06c85d986a Update makefiles.
Adds default configuration to all hals.

Test: pass
Change-Id: Icdf6b56df82c4b7b7de815e7febea9a07ab96856
2017-05-18 16:14:16 -07:00
Steven Moreland
320b5134b5 Update makefiles.
Note cleanspec required because of b/38205169 (genrule
doesn't delete output files before building, so when
removing some, they get stale).

Test: power vts test compiles
Change-Id: Ie7ef0fc3d943a75fe898238cf861fb7f99f4146b
Fixes: 35813011
2017-05-12 13:09:49 -07:00
Steven Moreland
01329bc539 Update makefiles for c++-sources and c++-headers. am: cb360c60d8 am: 4bd4e7fb3b am: 127b116fe5
am: 8e89a43590

Change-Id: I35950a57e220cdbe7672d5e814230fb73c154fac
2017-05-10 03:13:43 +00:00
Steven Moreland
8716f3063e Update makefiles for c++-sources and c++-headers.
Test: pass
Bug: 38174080
Merged-In: I683455736eed35e6ced24e2763c2bdb5fb6c9601
Change-Id: I683455736eed35e6ced24e2763c2bdb5fb6c9601
2017-05-09 19:58:45 -07:00
Steven Moreland
8e89a43590 Update makefiles for c++-sources and c++-headers. am: cb360c60d8 am: 4bd4e7fb3b
am: 127b116fe5

Change-Id: I3a2aa76acef0f0d1455bfad775e87e8089d357e8
2017-05-10 02:58:00 +00:00
Steven Moreland
cb360c60d8 Update makefiles for c++-sources and c++-headers.
Test: pass
Bug: 38174080
Change-Id: I683455736eed35e6ced24e2763c2bdb5fb6c9601
2017-05-09 14:34:19 -07:00
Etan Cohen
d810874948 [WIFI] Remove dependency on vendor-specific library
The libcld80211 is vendor-specific. Remove from dependecy list.

(cherry-pick of commit aa281aa266)

Bug: 37901207
Test: builds and runs
Merged-In: If251002c2dd7a0e30ca18620edd905a63217f28a
Change-Id: If251002c2dd7a0e30ca18620edd905a63217f28a
2017-05-09 13:55:36 -07:00
TreeHugger Robot
a677e93223 Merge "[AWARE] Passphrase limit check used incorrect limit" 2017-05-09 20:13:46 +00:00
Etan Cohen
fed081c7a5 [AWARE] Passphrase limit check used incorrect limit
Passphrase has a lower and upper limit. The uppper limit check
was using the incorrect (lower) limit value.

Bug: 38164425
Test: builds & CtsVerifier test passes
Change-Id: I8a58f46a9558f828f8ccfda07935fcf62285f8c3
2017-05-09 12:15:08 -07:00
Etan Cohen
6a4b943f25 Merge "[WIFI] Remove dependency on vendor-specific library" 2017-05-08 17:53:41 +00:00
Ningyuan Wang
9dfaf8852a Merge "Expect SUCCESS for tdls vts tests" into oc-dev am: 525e0ecb1a
am: 4149387a43

Change-Id: I7ac432309de61dc72869847b085f3b2b08bf318b
2017-05-05 17:52:02 +00:00
Ningyuan Wang
4149387a43 Merge "Expect SUCCESS for tdls vts tests" into oc-dev
am: 525e0ecb1a

Change-Id: Icdc6c2349baea024f5944d1ba04a914a6871dd7a
2017-05-05 17:43:42 +00:00
Ningyuan Wang
525e0ecb1a Merge "Expect SUCCESS for tdls vts tests" into oc-dev 2017-05-05 17:34:37 +00:00
Etan Cohen
aa281aa266 [WIFI] Remove dependency on vendor-specific library
The libcld80211 is vendor-specific. Remove from dependecy list.

Bug: 37901207
Test: builds and runs
Change-Id: If251002c2dd7a0e30ca18620edd905a63217f28a
2017-05-03 09:12:50 -07:00
Steven Moreland
2cd0d42d72 Remove redundant dependencies
android.hidl.base@1.0 and android.hidl.manager@1.0 are built into libhidltransport.

Test: links
Bug: 33276472
Change-Id: I08aaad80f7e2fc262aa3a8b66fe932e8133a928d
2017-05-02 10:17:28 -07:00
Steven Moreland
090d6b15c4 Merge "Remove redundant dependencies" am: 62769b7196 am: 170e2e85a2 am: 5fba1db1d2
am: f90189a79f

Change-Id: I6ccecef314c8cd591108a0c739580eda2178425e
2017-05-01 23:53:56 +00:00
Steven Moreland
f90189a79f Merge "Remove redundant dependencies" am: 62769b7196 am: 170e2e85a2
am: 5fba1db1d2

Change-Id: I661fff75d140b4359af055a0f08f08ef33c889c3
2017-05-01 23:37:04 +00:00
Steven Moreland
ee1d248ae2 Remove redundant dependencies
android.hidl.base@1.0 and android.hidlmanager@1.0 are built into libhidltransport.

Test: links
Bug: 33276472
Change-Id: I424371932af129bba9d58dcf8652c64297f35f05
2017-05-01 09:47:58 -07:00
Ningyuan Wang
8c2fd98dea Merge "Fix RssiMonitoring VTS tests" into oc-dev am: 5c604fc1d4
am: c3191c6c84

Change-Id: I9f41f2db9b511c49f6bcf6d813b59d26e747687c
2017-04-29 20:54:03 +00:00