Turn on manifest enforcement.
This is one of several requirements for being
a fully-trebilized device. Flipping this on
in advance of flipping on the other requirements
and then making it a fully-trebilized device
altogether.
Note 32+64 hals are listed here. The 64-bit versions
however are not installed on 32-bit devices. This will
never cause a problem because they will never even
be attempted to be accessed
Bug: 71707530
Test: boot 32-bit cuttlefish
Test: boot 64-bit cuttlefish
Change-Id: If1ab00272043d92bbda1a47cc41d1bcbf7d83b35
(cherry picked from commit dc67d4a1ee2acf22deadf71e62b3483f2428015b)
diff --git a/shared/config/manifest.xml b/shared/config/manifest.xml
index 21c6367..35ae410 100644
--- a/shared/config/manifest.xml
+++ b/shared/config/manifest.xml
@@ -18,6 +18,25 @@
-->
<manifest version="1.0" type="device">
<hal format="hidl">
+ <name>android.hardware.audio</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IDevicesFactory</name>
+ <instance>default</instance>
+ <instance>msd</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.audio.effect</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IEffectsFactory</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
<name>android.hardware.bluetooth</name>
<transport>hwbinder</transport>
<version>1.0</version>
@@ -27,10 +46,36 @@
</interface>
</hal>
<hal format="hidl">
+ <name>android.hardware.camera.provider</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>2.4</version>
+ <interface>
+ <name>ICameraProvider</name>
+ <instance>legacy/0</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.cas</name>
+ <transport>hwbinder</transport>
+ <version>1.0</version>
+ <interface>
+ <name>IMediaCasService</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.configstore</name>
+ <transport>hwbinder</transport>
+ <version>1.1</version>
+ <interface>
+ <name>ISurfaceFlingerConfigs</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
<name>android.hardware.drm</name>
<transport arch="32">passthrough</transport>
<version>1.0</version>
- <!-- TODO(b/36371166): change to default -->
<interface>
<name>ICryptoFactory</name>
<instance>default</instance>
@@ -41,25 +86,6 @@
</interface>
</hal>
<hal format="hidl">
- <name>android.hardware.graphics.allocator</name>
- <transport>hwbinder</transport>
- <impl level="generic"></impl>
- <version>2.0</version>
- <interface>
- <name>IAllocator</name>
- <instance>default</instance>
- </interface>
- </hal>
- <hal format="hidl">
- <name>android.hardware.graphics.mapper</name>
- <transport arch="32+64">passthrough</transport>
- <version>2.0</version>
- <interface>
- <name>IMapper</name>
- <instance>default</instance>
- </interface>
- </hal>
- <hal format="hidl">
<name>android.hardware.dumpstate</name>
<transport>hwbinder</transport>
<version>1.0</version>
@@ -69,6 +95,82 @@
</interface>
</hal>
<hal format="hidl">
+ <name>android.hardware.gnss</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>1.0</version>
+ <interface>
+ <name>IGnss</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.graphics.allocator</name>
+ <transport>hwbinder</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IAllocator</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.graphics.composer</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>2.1</version>
+ <interface>
+ <name>IComposer</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.graphics.mapper</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IMapper</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.health</name>
+ <transport>hwbinder</transport>
+ <version>2.0</version>
+ <interface>
+ <name>IHealth</name>
+ <instance>backup</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.keymaster</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>3.0</version>
+ <interface>
+ <name>IKeymasterDevice</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.light</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>2.0</version>
+ <interface>
+ <name>ILight</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.media.omx</name>
+ <transport>hwbinder</transport>
+ <version>1.0</version>
+ <interface>
+ <name>IOmx</name>
+ <instance>default</instance>
+ </interface>
+ <interface>
+ <name>IOmxStore</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
<name>android.hardware.power</name>
<transport arch="32+64">passthrough</transport>
<version>1.0</version>
@@ -78,6 +180,42 @@
</interface>
</hal>
<hal format="hidl">
+ <name>android.hardware.radio</name>
+ <transport>hwbinder</transport>
+ <version>1.1</version>
+ <interface>
+ <name>IRadio</name>
+ <instance>slot1</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.radio.deprecated</name>
+ <transport>hwbinder</transport>
+ <version>1.0</version>
+ <interface>
+ <name>IOemHook</name>
+ <instance>slot1</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.sensors</name>
+ <transport arch="32+64">passthrough</transport>
+ <version>1.0</version>
+ <interface>
+ <name>ISensors</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
+ <name>android.hardware.usb</name>
+ <transport>hwbinder</transport>
+ <version>1.0</version>
+ <interface>
+ <name>IUsb</name>
+ <instance>default</instance>
+ </interface>
+ </hal>
+ <hal format="hidl">
<name>android.hardware.wifi.supplicant</name>
<transport>hwbinder</transport>
<version>1.1</version>
diff --git a/shared/device.mk b/shared/device.mk
index 03772ef..d0e1438 100644
--- a/shared/device.mk
+++ b/shared/device.mk
@@ -195,6 +195,9 @@
external/libvncserver/webclients/novnc/vnc_auto.html:system/etc/novnc/vnc_auto.html \
external/libvncserver/webclients/novnc/vnc.html:system/etc/novnc/vnc.html
+# Product full Treble requirements
+PRODUCT_ENFORCE_VINTF_MANIFEST_OVERRIDE := true
+
# Packages for HAL implementations
#