platform_hardware_libhardware/modules
2017-06-27 22:28:49 +00:00
..
audio resolve merge conflicts of 7c451a93 to oc-dev-plus-aosp 2017-04-12 09:11:38 -07:00
audio_remote_submix Add libhardware_headers and libutils 2017-06-02 15:56:37 -07:00
camera resolve merge conflicts of 7c451a93 to oc-dev-plus-aosp 2017-04-12 16:28:32 +00:00
consumerir consumerir.default: remove unneeded dependency. 2017-04-12 18:51:15 +00:00
fingerprint Build fingerprint.default with BOARD_VNDK_VERSION 2017-06-27 12:54:43 -07:00
gralloc gralloc: fix dependencies 2017-04-19 22:16:20 +00:00
hwcomposer resolve merge conflicts of 7c451a93 to oc-dev-plus-aosp 2017-04-12 09:11:38 -07:00
input Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
local_time Build local_time.default with BOARD_VNDK_VERSION 2017-06-27 12:48:13 -07:00
nfc Build nfc.default with BOARD_VNDK_VERSION 2017-06-27 12:45:33 -07:00
nfc-nci nfc_nci_example: Switch to C++ 2017-04-25 09:11:27 -07:00
power Build power.default with BOARD_VNDK_VERSION 2017-06-27 13:14:51 -07:00
radio tune command execute time to resolve FPE_INTDIV error 2017-06-05 14:19:53 -07:00
sensors Fix missing headers in libhardware/modules/sensors. 2017-06-23 11:34:15 -07:00
soundtrigger resolve merge conflicts of 7c451a93 to oc-dev-plus-aosp 2017-04-12 09:11:38 -07:00
thermal Build thermal.default with BOARD_VNDK_VERSION 2017-06-27 19:19:35 +09:00
tv_input Build tv_input.default.vendor with BOARD_VNDK_VERSION 2017-06-27 11:36:30 -07:00
usbaudio Build audio.usb.default with BOARD_VNDK_VERSION 2017-06-27 11:33:36 -07:00
usbcamera resolve merge conflicts of 7c451a93 to oc-dev-plus-aosp 2017-04-12 09:11:38 -07:00
vehicle resolve merge conflicts of 7c451a93 to oc-dev-plus-aosp 2017-04-12 09:11:38 -07:00
vibrator Build vibrator.default.vendor with BOARD_VNDK_VERSION 2017-06-27 11:26:36 -07:00
vr Build vr.default with BOARD_VNDK_VERSION 2017-06-27 11:18:14 -07:00
Android.mk Add radio HAL stub to the build list; fix format warning. 2017-02-08 15:04:31 -08:00
README.android Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00

Default (and possibly architecture dependents) HAL modules go here. 


libhardware.so eventually should contain *just* the HAL hub
(hardware.c), everything in it should be rewritten as modules.

Modules are .so in /vendor/lib/hw/ and have a well defined naming
convention:

    /vendor/lib/hw/<*_HARDWARE_MODULE_ID>.<ro.product.board>.so
    /vendor/lib/hw/<*_HARDWARE_MODULE_ID>.<ro.board.platform>.so
    /vendor/lib/hw/<*_HARDWARE_MODULE_ID>.<ro.arch>.so
    /vendor/lib/hw/<*_HARDWARE_MODULE_ID>.default.so

They also have a well defined interface which lives in include/hardware/.

A module can have several variants: "default", "arch" and "board", and they're
loaded in the "board", "arch" and "default" order.
The source code for the "board" variant, usually lives under partners/...

The source code for "default" and "arch" would usually
live under hardware/modules/.