platform_hardware_libhardware/modules
Bob Badour d7984ccf02 [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware
Added SPDX-license-identifier-Apache-2.0 to:
  modules/audio/Android.bp
  modules/audio_remote_submix/Android.bp
  modules/audio_remote_submix/tests/Android.bp
  modules/camera/3_0/Android.bp
  modules/consumerir/Android.bp
  modules/fingerprint/Android.bp
  modules/gralloc/Android.mk
  modules/hwcomposer/Android.bp
  modules/input/evdev/Android.bp
  modules/local_time/Android.bp
  modules/nfc-nci/Android.bp
  modules/nfc/Android.bp
  modules/power/Android.bp
  modules/radio/Android.bp
  modules/sensors/Android.bp
  modules/sensors/Android.mk
  modules/sensors/dynamic_sensor/Android.bp
  modules/sensors/dynamic_sensor/HidUtils/Android.bp
  modules/soundtrigger/Android.bp
  modules/thermal/Android.bp
  modules/tv_input/Android.bp
  modules/usbaudio/Android.bp
  modules/usbcamera/Android.bp
  modules/vibrator/Android.bp
  modules/vr/Android.bp
  tests/camera3/Android.bp
  tests/fingerprint/Android.bp
  tests/hardware/Android.bp
  tests/hwc/Android.bp
  tests/input/evdev/Android.bp
  tests/nusensors/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:
  Android.bp
  modules/camera/3_4/Android.mk

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all

Exempt-From-Owner-Approval: janitorial work
Change-Id: I28924363e6c478f5d0b465b63534c4efd041c770
2021-02-12 20:51:13 -08:00
..
audio [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
audio_remote_submix [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
camera [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
consumerir [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
fingerprint [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
gralloc [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
hwcomposer [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
input/evdev [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
local_time [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
nfc [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
nfc-nci [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
power [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
radio [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
sensors [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
soundtrigger [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
thermal [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
tv_input [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
usbaudio [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
usbcamera [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
vibrator [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -08:00
vr [LSC] Add LOCAL_LICENSE_KINDS to hardware/libhardware 2021-02-12 20:51:13 -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/.