This applies to the following types:
- audio_gain_mode_t;
- audio_flags_mask_t;
- audio_channel_representation_t;
- audio_channel_mask_t;
- audio_devices_t.
Enum types are distinct thus proper overloading on the type
is possible in C++. Also, assignments to enum types are
less prone to errors.
Bug: 169889714
Test: basic audio functionality
Change-Id: I6366511b421ccab2782310ecc15a13e08d9c17af
Merged-In: I6366511b421ccab2782310ecc15a13e08d9c17af
This applies to the following types:
- audio_gain_mode_t;
- audio_flags_mask_t;
- audio_channel_representation_t;
- audio_channel_mask_t;
- audio_devices_t.
Enum types are distinct thus proper overloading on the type
is possible in C++. Also, assignments to enum types are
less prone to errors.
Bug: 169889714
Test: basic audio functionality
Change-Id: I6366511b421ccab2782310ecc15a13e08d9c17af
Enhance the API to support multiple WIFI chips.
Each WIFI chip is represented by a separate and independent
vendor HAL library providing its own function table
(wifi_hal_fn structure).
New functions added to the function table in order to
better support multiple WIFI chips:
1. In the existing hardware/interfaces/wifi implementation,
WIFI chip modes and concurrency combinations are hard-coded.
Since each WIFI chip can have its own concurrency
combinations, it is no longer possible to hard-code the
modes/combinations.
Add new function wifi_get_chip_modes for reporting
chip modes/concurrency combinations. For backward compatibility,
if the vendor HAL does not implement this function,
the previous hard-coded chip modes and concurrency combinations
will be used.
2. In the existing hardware/interfaces/wifi implementation,
when creating a new interface, it will use a fixed name
such as wlan0 or wlan1. This does not extend well to
multiple WIFI chips, as different WIFI chips may want
to use their own interface names, or the suggested interface
name may have been pre-created by another chip.
In order to better support interface creation on multiple
WIFI chips, add a function wifi_get_supported_interface_name
that allows the vendor HAL to specify its own interface
name for upcoming interface creation. If the vendor HAL returns
an interface name, it should be passed to
wifi_virtual_interface_create to create the interface
with the provided name.
3. In the existing hardware/interfaces/wifi implementation,
wifi_initialize is only called when creating the first
interface (typically when enabling WIFI). However some
chips may want to perform early initialization and provide
some functionality while WIFI is still disabled. One example
is reporting chip-global capabilities that may affect
the UI even before WIFI is enabled.
In order to support this, add a new function
wifi_early_initialize which will perform early initialization.
The function should be called as soon as possible after
loading the vendor HAL, and if it returns a failure, the vendor
HAL should not be considered usable and no WIFI chip should
be created based on it.
4. In some cases it is needed to query chip features before
creating any interfaces. For example, for trying to start
a SoftAP on the 60GHz band, it is needed to detect a chip
which supports the 60GHz band, and only if such chip was detected,
then an AP interface can be created on it.
The wifi_get_supported_feature_set function only works on
a created interface so it is not suitable for this scenario.
To support such scenarios, add a new function
wifi_get_chip_feature_set which returns a set of chip-global
features which are independent of any created interface.
Bug: 146922967
Test: atest VtsHalWifiV1_0TargetTest VtsHalWifiNanV1_0TargetTest VtsHalWifiApV1_0TargetTest \
VtsHalWifiV1_1TargetTest \
VtsHalWifiV1_2TargetTest VtsHalWifiNanV1_2TargetTest \
VtsHalWifiV1_3TargetTest \
VtsHalWifiApV1_4TargetTest VtsHalWifiNanV1_4TargetTest VtsHalWifiRttV1_4TargetTest
Change-Id: If0b4934002c5687024c9fc2e65e15c466f94acd2
This commit adds a method to set the handler for wifi subsystem
restart callback.
Bug: 159367026
Test: force a firmware restart and make sure Wifi is recovered.
Change-Id: Id125b85a697a0cdd5cf2677abb0006c85053fd43
This commit adds the needed enum and methods to handle the mapping
of DSCP into wifi access categories.
Bug: 141500691
Bug: 141550272
Test: Manual
Change-Id: If532a6dc34f4a2c61fc4601cb1b83d2fec053ea5
global handle instead of interface handle as thermal
mitigation is not interface specific.
Bug: 112471991
Test: atest FrameworksWifiTests
Change-Id: I40b8d85156b7a4561a4ef6db9e4655824c10b5ba
It was decided to base device capability for support of 6GHz band
on overlay configs rather than HAL capability bitmask.
Hence, this commit removes the 6GHz feature flag.
Bug: 145936758
Bug: 139354972
Test: Manual
Change-Id: I0c72161a31452bd0fab226f9f92f0aa859d3f5e4
This commit forces the features and feature_set to be 64 bit
for better portability.
Bug: 144576287
Test: Builds passes successfully
Change-Id: I93c74d9f1802520c9bd0aa7f8f15cec4e30ce2ba
This commit implements support of checking whether device supports 6GHz band.
To accomodate the new feature as well as any future features, feature_set type
was changed from int (32 bits) to long (64 bits).
Bug: 139354972
Test: Manual
Change-Id: If002d8efb854d50af314794926fbdfdc4fb08a5e
This CL makes modidfication to support Wifi 802.11ax to RTT procedures.
This includes adding support for the 11ax preamble
Bug: 139354972
Test: Manual
Change-Id: I2aca64edcb4bc2ee267db4e4011da246c540a4b8
Main motivation is to prevent wake lock leaks, e.g. b/133175847.
Changing power.h header breaks downstream vendor code that does C
linkage to that header b/135730848. Introduce new wakelock.h header.
Bug: 133175847
Test: boot blueline
Test: device suspends if left alone
Change-Id: I477123938ab20e954ce4d55b8588c0a116ed3882
In current implementation, the ether type used for offloaded
packets is always hardcoded to IPv4 in lower layers.
This commit adds support to specify ether type of offloaded
packets from user space.
Bug: 122487582
Test: Manual
Change-Id: I1ca7391bd70ecebaf0591e0eafe08b79383538c5
This commit updates the enum for wifi_sar_scenario.
Bug: 112205428
Test: Compiles (just a header file change)
Change-Id: If01d0daf5e535e8fdca6eeab115f6c409cc38c46
This commit is part of the addition of the ether_type as an argument
to the legacy hal function to send an offloaded packet.
Bug: 122487582
Test: Manual
Test: Make sure code builds properly
Change-Id: I5c56acb74f5724ac3d6199433c7632177bfc9704
P2P random MAC needs the driver to support changing MAC address.
Bug: 118904478
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: Iadae3cf74722d29014caffe7080e0efa44a7659e
Add NDPE attribute config and enable support so that the framework
can decide the usage of it.
Bug: 113149569
Bug: 112586769
Test: (ACTS) act.py ThroughputTest:test_iperf_max_ndi_aware_only_passphrases
Test: (CTS) atest SingleDeviceTest
Change-Id: I0c93ba53fa7de3e346ab0913d04bd670a528ec4e
This commit adds the enum and prototype to enable setting of wifi
latency mode.
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: I846fd5f41b740be9ebf2efb16be87d456b573b2a
This is used to implement readApfPacketFilterData() for legacy wifi
drivers.
Bug: 73804303
Test: builds!
Change-Id: I562911cc064efec747629628df4eab8128449b51
(cherry picked from commit f70b864ede)
This commit adds a vendor hal function to wait for the driver to be
ready. This ensures the driver is ready for operatin before framework
starts to use it
Bug: 73482286
Test: Manual test (reboot and make sure wifi comes up consistently)
Test: The reboot test has been performed more than 10 times in a row
Test: Also, tested toggling wifi off/on then rebooted, wifi starts fine
Change-Id: I31bc594525762454b0c2f491486ffe575843c858
Signed-off-by: Ahmed ElArabawy <arabawy@google.com>
This commit extends SAR by adding more scenarios to handle near
body/head cases
Bug: 65174506
Test: Manual
Change-Id: I02fe09e450b7ca4800750169f14b1ad05308b8b0
Signed-off-by: Ahmed ElArabawy <arabawy@google.com>
Add support to configure discovery beacon interval in NAN enable
and config request.
Bug: 67745737
Test: builds, integration tests passing
Change-Id: I44d1918f740b35e39d751f26a5b5e4ee9b371a84
Add qos config parameter in sdea control parameters and also
add schedule update channel as part of nan sync stats.
Change-Id: I8b56bf49dc3b0a7139a1bfd8698114f0fbf2fd16
This header does not look like it is used anymore, and compilation
succeeds without it, so it seems safe to remove.
Bug: 64223827
Test: 'mma -j4' throws no compilation errors.
Change-Id: Ic7ca90a7ba576d0ae14ee95d2d20c8ddf612754a
Modify the current tx power API to select predefined power settings
and apply the same from the BDF file.
Bug: 62437848
Test: Manual tests
Change-Id: Ia8a4c2c3ebbc055fc28cbee224ff685f97589a08
(cherry-picked from 674da97c8fbc40b9e9b7f80bb86c4f0824fa9d7a)
Provide configuration support to set sid on the subscriber side sync and
discovery beacons as part of NAN enable and config request.
(cherry-pick of commit b2c4b3825a5b1ef4713417538755b04225b2b53d)
Bug: 35195516
Test: integrated (sl4a) tests pass
Change-Id: I20548928a9ad81e8d3154eb5b982fd19add7659c
Add new parameter second ndp channel freq in the stats response
message to support the certification efforts.
Change-Id: I9011bd7d4c5f34a15fbfe871b67d255807df8347
Modify publish/subscribe/Data Initiator/Data Indication messages
to accept either PMK or Passphrase key information. Also, provide
a new parameter service name in Data Initiator request and
Data Indication response to generate PMK from passphrase and
service name for out of band requests.
Bug: 35866810
Test: TBD
Change-Id: Ibe572928e892bbd10be79dc2e09911ada348e89d
Add a constant to make the no-cipher specification explicit.
Bug: 35387576
Test: integrated (sl4a) tests pass.
Change-Id: Ia272cad70cd4bedbdbdb4d2c856167305f747a30
Left deprecated field in place since it broke
dependent projects. Dependencies cleaned-up -
remove field.
Bug: 27914592
Test: build only requirements since unused field
Change-Id: I910ffd811ddbca9b83a0190eaede2a58b36fedc8
Roaming enhancements to avoid critical sections between
firmware based network selection and framework based network
selection. Also remove blacklist_bssid changes from gscan.h
to avoid duplication.
BUG: 32883971
Test: Build.
Change-Id: I4c851e9c1969123427f2a92e729b9a5b6fd5b8d8
Merged-In: I4c851e9c1969123427f2a92e729b9a5b6fd5b8d8
By default discovery MAC address randomization is enabled
and default(maximum) interval value is 30 minutes(1800 seconds).
Nan enable and config can specify the interval value in seconds.
Value of zero disables discovery MAC address randomization.
Bug: 33386762
Test: builds
Change-Id: I5dc10db8535227575f96635604665b6f52f8d507
1) Include security params in Publish/Subscribe/Data Request/Response
Structures.
2) Include security params in MatchIndication.
Bug: 33552694
Test: builds
Change-Id: I7a3af05b17f18040b311cf861c8dc0a0bba99d7d
As part of the Power save enhancements:
1) The device level DW intervals to be configured through config API.
2) Awake DW intervals for publish and subscribe(period parameter)
can be configured using the interval values 1, 2, 4, 8, 16.
Bug: 33552536
Test: builds
Change-Id: I3177ba13c861275a5860b825d3c466e0643bcec1
Configure the Service Non Auto responder mode.
Accept all subscribes is the default firmware behavior.
If Non Auto response is configured in the Publish API,
firmware notifies the framework and expects a response
from the Publisher.
Bug: 33209958
Test: integration data-path (sl4a) tests passing
Change-Id: I78f096d0d046f3bd39421269c79b9012a3a3cc0e
The NanSRFState enum was incorrectly specifying NAN_DO_NOT_USE_SRF
as 1 which was not insync with the wifi firmware expected value
causing the case of active subscribe and solicited publish to fail.
This commit updates the enum type appropriately.
Bug: 30898004
Change-Id: I89f092964daeeb962b57ea474131bb58984a4d43
Remove obsolete pieces from libardware_legacy that were related
to QEMU (i.e. running the system image under emulation) but are
no longer used.
Note that qemu tracing isn't implemented by the emulator anymore
(and has been for a long time).
BUG=25875346
Change-Id: I2593fe9f90241af9c5076fa248c30e0d8ab5d663
Most of this code is device independent, and we're parameterizing the
parts that are not in a way which makes the logic device independent.
Bug: 29321445
Change-Id: Ice9f16d966275378d4fc5a5201eca82f2ea67c5e
Test: Compiles, can associate to an AP.
The service instance Id needs to match the handle received during
the match indication. The current match handle is 32bit,fixing
the service instance id.