platform_hardware_libhardware/modules
Ari Hausman-Cohen 662b32fcf2 Merge "camera: add a lock for the request tracker" am: 8c3812f639 am: 421cd310cf
am: 7bac9b0e96

Change-Id: Ie4877dd1169e99fe8e2dcfa64cc9a77de44492ae
2019-01-10 12:19:52 -08:00
..
audio audio: Update default audio implementation. 2018-01-30 12:05:24 -08:00
audio_remote_submix Revert recent r_submix patches 2018-03-05 20:39:30 +00:00
camera Merge "camera: add a lock for the request tracker" am: 8c3812f639 am: 421cd310cf 2019-01-10 12:19:52 -08:00
consumerir Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
fingerprint Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
gralloc Fix a memory leak 2018-02-13 00:33:26 +00:00
hwcomposer Convert to Android.bp 2017-12-27 11:05:29 -08:00
input/evdev Fix performance-for-range-copy warnings 2018-12-12 14:22:28 -08:00
local_time Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
nfc Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
nfc-nci Merge "Use -Werror in hardware/libhardware" am: d1a2b9f7c1 am: d67dcc5fc8 2017-10-12 01:58:44 +00:00
power Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
radio Merge changes from topic "libhardware_vndk" 2017-09-06 15:58:26 +00:00
sensors Fix cert-dcl16-c clang-tidy warnings 2018-12-12 22:23:40 +00:00
soundtrigger Converting sound trigger v2.2 getModelState to be asynchronous 2018-11-08 08:11:02 +01:00
thermal Convert to Android.bp 2017-12-27 11:05:29 -08:00
tv_input Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
usbaudio Moving device profile structures into streams rather than the device. 2018-09-04 10:40:19 -06:00
usbcamera Convert to Android.bp 2017-12-27 11:05:29 -08:00
vibrator Use -Werror in hardware/libhardware 2017-10-04 11:09:30 -07:00
vr Convert to Android.bp 2017-12-27 11:05:29 -08:00
Android.mk Convert to Android.bp 2017-12-27 11:05:29 -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/.