platform_hardware_libhardware/modules
Peng Xu 18082bd61f Dynamic sensor manager -- implementation of basic sensor daemon
Library to handle dynamic sensor connection. There are two way to use
this: as hal extension or standalone hal module.

In hal extension mode: add libdynamic_sensor_ext in dependency of hal,
instantiate DynamicSensorManager with appropriate parameters. Then
for all sensor requests, if the handle is owned by dynamic sensor
manager, forward the request.

In standalone mode, add sensor.dynamic_sensor_hal into device make
file. Usually, this also means multihal is necessary. Add
sensor.dynamic_sensor_hal into multihal configuration file.

A dummy sensor module is included for testing.

Test: tested with cts dynamics sensor related test and demo app.
      also verified sensor basic operation with sensor logger.

Change-Id: I16612935fc21b06c173aca875401ece37c6bde01
2017-04-07 20:54:18 +00:00
..
audio Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
audio_remote_submix Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
camera Merge "modules/camera: Fix compiler warnings" am: f7888e1130 am: f832261e65 am: d6cebded75 2016-09-01 01:53:45 +00:00
consumerir Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
fingerprint Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
gralloc Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
hwcomposer Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
input Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
local_time Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
nfc Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
nfc-nci Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
power Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
radio Merge "Move default HAL libraries to vendor" 2017-03-09 05:15:37 +00:00
sensors Dynamic sensor manager -- implementation of basic sensor daemon 2017-04-07 20:54:18 +00:00
soundtrigger Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
thermal Move thermal HAL to vendor partition 2017-02-27 13:11:33 +09:00
tv_input Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
usbaudio Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
usbcamera usbcamera: Fix compiler warnings 2016-08-08 09:35:54 -07:00
vehicle Move default HAL libraries to vendor 2017-03-07 11:28:32 +08:00
vibrator Merge "vibrator: fix issue with ledtrig-transient support" am: 60849b8da4 am: 95d22ed018 2017-03-11 01:35:14 +00:00
vr Move default HAL libraries to vendor 2017-03-07 11:28:32 +08: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/.