Commit graph

78 commits

Author SHA1 Message Date
Roshan Pius
271f2c2d9c wifi(interface): Rename interface to iface
The HIDL objects are called "interface", so rename the wifi interface to
iface to distinguish between them better.

This is especially needed in the follow up CL.

Bug: 31943042
Test: mmm -j32 hardware/interfaces/wifi/1.0/
Change-Id: I3bc34930f75159d26321c0e071af9084d0585508
2016-10-05 10:30:24 -07:00
Roshan Pius
6f31d92e59 wifi(interface): Add/Correct docstring params
Changes in the CL:
1. Add missing docstring params in the HIDL interface.
2. Reword some method docs. Occurences of "will" is replaced
by "must" (based on comments received on supplicant HIDL interface:
go/aog/275115).
3. Add onFailure callbacks for all the methods and added docstrings for
them.

Bug: 31352200
Test: mmma -j32 hardware/interfaces/wifi/1.0
Change-Id: Ib7152625851023d6244f742bb77a8fdc0829e00d
2016-10-05 10:30:15 -07:00
Roshan Pius
cdb77f3cf2 wifi: Add implementation of driver/firmware memory dumps
Bug: 31352200
Test: mmma -j32 hardware/interfaces/wifi/1.0/default
Change-Id: I25d42cfd4c2b1ea7e63bdc036f37f81aed93c565
2016-10-05 09:22:06 -07:00
Roshan Pius
4b26c832ed wifi: Add Implementation of IWifiChip.requestChipDebugInfo
Bug: 31352200
Test: mmma -j32 hardware/interfaces/wifi/1.0/default
Change-Id: Id0c02e37dac66de6f830785881cb67f113c0fb19
2016-10-05 09:21:07 -07:00
Roshan Pius
908a69a53a wifi: Use hal_tool & if_tool
Changes in the CL:
1. Currently |WifiNative.cpp|, uses |hal_tool| to initialize the
function table and |if_tool| to set the interface up when |startHAL|
method is invoked. Use the same sequence in the HIDL'ized HAL.
2. Remove the assertion if the function table initialization fails. This
will result in a failure indication on starting the HAL now.

Bug: 31352200
Test: mmma -j32 hardware/interfaces/wifi/1.0/default
Change-Id: I268845ed62158b6a2ff36659f0bb15c4100a7222
2016-10-04 18:36:25 -07:00
Roshan Pius
aabe575536 wifi: Restructure wifi legacy HAL implementation
Restructured the existing code to create a new class called
|WifiLegacyHal|. This class will be used as a wrapper to invoke
all the legacy HAL functions and handle the "C" style callbacks.

Bug: 31936700
Test: mmma -j32 hardware/interfaces/wifi/1.0/default
Change-Id: I63e8543f49886f8446101320a97d1e96e30d1035
2016-10-04 18:36:22 -07:00
Roshan Pius
79a9975d07 wifi: Change namespace
Move the implementation to "android::hardware::wifi:V1_0::implementation"
namespace.
This is following the style guidelines in NFC HIDL
implementation(go/aog/279421).

While there,
Run checkstyle to correct formatting issues.

Bug:31936700
Test: mmma -j32 hardware/interfaces/wifi/1.0/default
Change-Id: I5600a60a0041b3318ed9289823ec335a8ed8a83d
2016-10-04 13:23:20 -07:00
Roshan Pius
3c4e8a358c wifi: Move legacy HAL implementation
Changes in the CL:
1. Move the legacy HAL implementation from
"frameworks/opt/net/wifi/wifi_hal_legacy" to
"hardware/interfaces/wifi/1.0/default".
2. Renamed the .rc file and the module name in makefile to
conform to the HIDL style guide.

Files renamed from:
wifi_hal_service.cpp/h -> wifi.cpp/h
wifi_chip_service.cpp/h -> wifi_chip.cpp/h
main.cpp -> service

Bug: 31821133
Test: mmma -j32 hardware/interfaces/wifi/1.0/default
Change-Id: I5e65e2fdb5596346bde6963588031dcea42d633a
2016-10-04 13:10:25 -07:00
Dan Willemsen
242b34edd5 Convert to Android.bp
See build/soong/README.md for more information.

Bug: 31742855
Test: mma -j
Change-Id: Icb93f3b1b2caeb5e9c00f88ca35841b927ad075d
2016-09-30 10:31:54 -07:00
Yifan Hong
fe2b098355 Tests for Reference Support.
Bug: 31300815 pointer support
Bug: 31349114 nested types
Bug: 31757611 Parcel ref# cap

Test: `make hidl_test && adb sync && adb shell hidl_test`
      Only works with a kernel patch.

Change-Id: I48351b1bf861a4d2d77f823f7242524156cde1e7
2016-09-29 14:57:22 -07:00
Treehugger Robot
aa3a8e0dbc Merge "Use MQDescriptorSync instead of MQdescriptor in interface" 2016-09-29 16:48:53 +00:00
Martijn Coenen
a614ac0b88 Merge "Default binderized implementation of android.hardware.nfc@1.0" 2016-09-29 07:41:34 +00:00
Treehugger Robot
d8a7bb5838 Merge "wifi: Move supplicant HIDL interfaces to subfolder" 2016-09-28 22:38:53 +00:00
Iliyan Malchev
3db0f605e4 Default binderized implementation of android.hardware.nfc@1.0
Provide a default binderized HAL implementation.  The implementation
uses android.hardware.nfc@1.0-impl.so, which in turn loads the
conventional HAL (nfc_nci.default.so).  If a device includes package
android.hardware.nfc@1.0-service, the device will automatically use the
binderized implementation of the NFC HAL.  If a device includes package
android.hardware.nfc@1.0-impl instead, it will use the default
implementation in hardware/interfaces/nfc/1.0/default.

b/31688271
Test: pass

Change-Id: I31cd93d28705d287975b485092cffd7661599d7c
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-28 20:46:27 +00:00
Andreas Huber
88476c157b Verify that method arguments and results can share the same name.
Bug: 30778622
Test: hidl_test, hidl_test_java
Change-Id: Idb35a03337010c1fb63c2896f216392398e03e0c
2016-09-28 13:43:39 -07:00
Roshan Pius
22ab8b2451 wifi: Move supplicant HIDL interfaces to subfolder
Move all the supplicant HIDL interfaces to a separate subfolder.

Bug: 31800508
Test: Compiles
Change-Id: I09bfb17b626312e8be819238ab2edbb83ca04322
2016-09-28 13:37:45 -07:00
Roshan Pius
9a3a84f5a3 wifi(hidl): Add supplicant HIDL interface
Convert the existing AIDL binder interface of wpa_supplicant to HIDL.

Summary of changes:
1. Every HIDL method returns an instance of |SupplicantStatus|
along with any others params (for getters). This is needed to return the
equivalent of |Binder::Status| to indicate errors in the args passed,
stale proxy, etc.
2. All constants are changed to enums. There were some constants which
should have been enums in the first place, but wasn't because AIDL did
not support enums. But, there are others which should be standalone
constants, but are enums now because constants are not supported in HIDL.
3. Conform to HIDL style guide.

Bug: 31365276
Test: `mmm -j32 hardware/interfaces/wifi/1.0/`
Change-Id: Iba753e279fd260788d8628ea2f5c2281b5844095
2016-09-28 11:03:17 -07:00
Treehugger Robot
e168ebab22 Merge "Verify that vectors of arrays within structures are properly marshaled" 2016-09-28 17:16:52 +00:00
Hridya Valsaraju
9d9672cce2 Use MQDescriptorSync instead of MQdescriptor in interface
Add comments and cleanup code as per HIDL style guidelines.

Bug: 31550963
Test: Built and ran existing FMQ unit tests and benchmarks.

Change-Id: I0a09ba1fcb520b46e5e6299b473c962c93d815eb
2016-09-27 22:22:19 +00:00
Andreas Huber
fd77f50d55 Verify that vectors of arrays within structures are properly marshaled
in the Java backend.

Change-Id: I70baa4ac55d8b0e06b31b2e50662be14b8528ff3
Bug: 31682327
Test: hidl_test_java
2016-09-26 16:34:29 -07:00
Yifan Hong
b0b5322e7d Updated indentation to 4 spaces for Android.mk.
Test: `cd system/tools/hidl && mma`
Change-Id: I088893c3c8b080239f0f32e3434faf3da3fefc7a
2016-09-26 16:02:39 -07:00
Yifan Hong
467bb282d2 Updated tests for constant expressions.
Test: `make android.hardware.tests.expression@1.0` compiles
      and generates enum class Color with autofilled values.
Test: `make hidl_test_java` succeeded.
Test: `make hidl_test` succeeded.

Bug: 31628863 Add test for autofilling enum values.
Bug: 31592132 allow constant expressions be array sizes.

Change-Id: I79f35365f1d37843922725ad5a405848f3e8ec08
2016-09-26 13:39:22 -07:00
Andreas Huber
495391aad8 Updated makefiles that also add static java library targets.
Bug: 31684178
Test: hidl_test and hidl_test_java
Change-Id: Ib53d1be2b1535837ca97cb61796e335141fc7611
2016-09-23 09:21:15 -07:00
Iliyan Malchev
678fa1f456 android.hardware.nfc@1.0: provide a default implementation
b/31524912
Test: pass

Change-Id: Id9d34f62f4a2b92bdc3beb3e62c89c82743c0ca0
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-22 23:31:52 +00:00
Iliyan Malchev
998892cce7 update auto-generated makefiles
b/31524912
Test: pass

Change-Id: Iafea8f87e93181041f42820df39ec43b3c785410
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-22 23:31:33 +00:00
Andreas Huber
f1d448b6a9 [Java] Add a test to verify that typedefs in types.hal does not mistakenly
generate a makefile rule.

Bug: 31678014
Test: regenerate makefiles using hidl-gen.
Change-Id: I72ceaedd33288269b74e2aa233043c741994cd1a
2016-09-22 13:22:47 -07:00
Treehugger Robot
05f80eec9d Merge "Verify that structs with multiple array fields now successfully compile for Java" 2016-09-22 19:53:14 +00:00
Andreas Huber
fc0b6c484a Verify that structs with multiple array fields now successfully compile for Java
Previously "_hidl_array_offset_*" was redeclared multiple times in the same
scope.

Bug: 31675085
Test: run hidl_test, hidl_test_java
Change-Id: I370956ae3008c05bda66dc5cdc44d33c9883376f
2016-09-22 11:25:23 -07:00
Mitchell Wills
5443a9fc9b Initial pieces of WiFi HAL interface definition
Test: make -j48 android.hardware.wifi@1.0 android.hardware.wifi@1.0-java
Bug: 31350762
Change-Id: I1b598be397e08165fc9fd607888e064b139e8007
2016-09-22 10:50:27 -07:00
Treehugger Robot
ed76563377 Merge "Additional test cases to verify multi-dimensional arrays work properly." 2016-09-20 20:28:12 +00:00
Andreas Huber
8e237941ef Additional test cases to verify multi-dimensional arrays work properly.
Bug: 31438033
Change-Id: I1fc58cbbe6f161f7f71a43fa43d743843ba22f76
Test: run updated "hidl_test" and "hidl_test_java"
2016-09-19 14:07:54 -07:00
Zhuoyao Zhang
adc313d43d Add dependency on libcutils.
* Used for get system properies.

Test: pass test hidl_test.
Change-Id: I3b6d2deb442cd627a6f30312f0c204177d410ecb
2016-09-19 12:52:09 -07:00
Yifan Hong
96f539739e Merge "Remove @hal_type from .hal files." 2016-09-19 19:25:19 +00:00
Yifan Hong
252c1c58a4 Remove @hal_type from .hal files.
Test: ran make android.hardware.nfc@1.0 successfully
      compiles.

Bug: 31527823

Change-Id: Ib2c2f40ef6a8939a8344ade6138a7b0f32f14ba9
2016-09-19 10:19:24 -07:00
Iliyan Malchev
15e1558a04 fix update-makefiles.sh to not need Android.mk
When auto-generating Android.mk for HIDL packages, update-makefiles.sh
now just looks for all directories hosting .hal files, converts them to
HIDL package names, and invokes hidl-gen on these package names to
generate the appropriate Android.mk files.

Change-Id: I8a824672f33be58508ae7c07de463f4f589a9a73
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-18 01:50:01 +00:00
Andreas Huber
9c43f016b6 Add tests to verify that multi-dimensional arrays in Java work (inside structs)
Bug: 31438033
Change-Id: Ic27868fb0f603ca4acb2a42f144493d6ec26044f
2016-09-15 09:28:31 -07:00
Andreas Huber
cf8560c508 Adds tests to verify proper C++ code generation for multi-dimensional arrays
and vectors of arrays.

Bug: 31438033
Change-Id: Ia7c2198de31bdb4705687726abe3d0371625e56a
2016-09-13 09:34:40 -07:00
Treehugger Robot
d66bb6fb5c Merge "interfaces: regenerate makefiles" 2016-09-13 04:52:48 +00:00
Treehugger Robot
3d49850a49 Merge "Java test interface extended to verify vec<STRUCT-TYPE> and STRUCT-TYPE[]" 2016-09-12 17:50:11 +00:00
Iliyan Malchev
c6c7aabdc9 interfaces: regenerate makefiles
b/31372383

Change-Id: I4fd9d3f174a22f29bc3beb9aeb7c30fc6bd4acd8
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-09 16:28:23 -07:00
Andreas Huber
f399e50a90 Java test interface extended to verify vec<STRUCT-TYPE> and STRUCT-TYPE[]
argument/result passing.

Bug: 31380705
Change-Id: I17fd03a10f9740f68a6fb318a5c2ef9847f4c050
2016-09-09 15:06:35 -07:00
Andreas Huber
4a99f3afae WireMQDescriptor => MQDescriptor
b/31091383 Adding WireMQDescriptor as a hidl type

Change-Id: Iff23c833e8ab232ad37fd9bfbfe4d49fbc06b369
2016-09-09 11:35:48 -07:00
Iliyan Malchev
da96fb2a94 android.hardware.tests.msgq@1.0: modify ITestMsgQ
Modify the configure() method so that the implementation does not have
to rely on status_t to return service errors.

b/31367910
b/31348667

Change-Id: I0bc88c396ce4e55ed38b534b7e3ae2c0a4faad62
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-08 15:12:36 -07:00
Iliyan Malchev
b350caf9dc interfaces: update makefiles
b/31015466
b/31045569

Change-Id: I07d54fd956fedc4b94622ace1c8f2be3f2f93b2b
Signed-off-by: Iliyan Malchev <malchev@google.com>
2016-09-07 14:37:35 -07:00
TreeHugger Robot
c0ba83e30a Merge "Updated makefiles (includes java-library rules for applicable packages)." 2016-09-01 00:08:22 +00:00
Andreas Huber
7ab75a7325 Updated makefiles (includes java-library rules for applicable packages).
Change-Id: I178faf37dddb5149c1bdc217fa1395b2566194d7
Bug: 31221188
2016-08-31 13:56:05 -07:00
Keun Soo Yim
989087535a Revert "package android.hardware.tests.* as part of VTS (auto-generated)"
This reverts commit afba0364c6.

Change-Id: I9d143d97ef7857502d88fef92b9ae336ee824bcd
2016-08-31 08:47:29 -07:00
Yifan Hong
a401680f6e add test for constant expression evaluation output
Simply run:

    # hidl_gen converts .hal to .h correctly
    make hidl_gen_test
    # converted .h can compile
    make android.hardware.tests.expression@1.0

to run the tests.

b/30951879: int8_t is same as char, and when emitting output the
	    character corresponding to that number is emitted instead of
	    the number itself.

Change-Id: Icacba6b6262cc0026a94f64527b80e2c0e35e72e
2016-08-30 23:15:05 -07:00
Iliyan Malchev
092d4cdfa0 Merge "Apache2 module license." 2016-08-31 05:24:20 +00:00
Martijn Coenen
cbe590cb9f Apache2 module license.
Bug: 31110244
Change-Id: I7ce63f940199e8cd7d193bdde39fc6cd448db802
2016-08-30 11:28:36 -07:00