blob: abe90b235596f8a32b7bb2e5a2fe8460230f17b9 [file] [log] [blame]
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -07001#
2# Copyright (C) 2017 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
Greg Hartmanb5759632017-11-13 16:58:16 -080017PRODUCT_COPY_FILES += device/google/cuttlefish_kernel/4.4-x86_64/kernel:kernel
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070018
Steven Morelandcd5f3ef2018-01-08 15:09:48 -080019PRODUCT_SHIPPING_API_LEVEL := 26
20
Shuo Qian02bfe462018-05-07 20:53:03 +000021DISABLE_RILD_OEM_HOOK := true
22
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070023# Explanation of specific properties:
24# debug.hwui.swap_with_damage avoids boot failure on M http://b/25152138
25# ro.opengles.version OpenGLES 2.0
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070026PRODUCT_PROPERTY_OVERRIDES += \
Greg Hartman1c641da2018-03-12 18:29:51 -070027 tombstoned.max_tombstone_count=500 \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070028 debug.hwui.swap_with_damage=0 \
29 ro.adb.qemud=0 \
30 ro.carrier=unknown \
31 ro.com.android.dataroaming=false \
Tomasz Wiszkowski9214f172017-09-19 14:36:53 -070032 ro.com.google.locationfeatures=1 \
Tomasz Wiszkowski9214f172017-09-19 14:36:53 -070033 ro.hardware.virtual_device=1 \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070034 ro.logd.size=1M \
35 ro.opengles.version=131072 \
36 ro.ril.gprsclass=10 \
Tomasz Wiszkowski9214f172017-09-19 14:36:53 -070037 ro.ril.hsxpa=1 \
Tomasz Wiszkowski9214f172017-09-19 14:36:53 -070038 wifi.interface=wlan0 \
39
40# Below is a list of properties we probably should get rid of.
41PRODUCT_PROPERTY_OVERRIDES += \
42 wlan.driver.status=ok
43
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070044
45# Default OMX service to non-Treble
46PRODUCT_PROPERTY_OVERRIDES += \
47 persist.media.treble_omx=false
48
Lalit Maganti6521a182018-12-06 13:32:25 +000049# Enable Perfetto traced
50PRODUCT_PROPERTY_OVERRIDES += \
51 persist.traced.enable=1
52
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070053#
Greg Hartmanb897f912017-06-28 16:33:42 -070054# Packages for various cuttlefish-specific tests
55#
56PRODUCT_PACKAGES += \
Greg Hartman0d8860c2018-02-21 22:09:43 -080057 vsoc_guest_region_e2e_test \
Jorge E. Moreira8b3f59d2018-11-12 13:46:48 -080058 vsoc_managed_region_e2e_test \
Greg Hartman0d8860c2018-02-21 22:09:43 -080059 vsoc_driver_test
Greg Hartmanb897f912017-06-28 16:33:42 -070060
61#
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070062# Packages for various GCE-specific utilities
63#
64PRODUCT_PACKAGES += \
65 audiotop \
66 dhcpcd_wlan0 \
67 gce_fs_monitor \
Ryan Hainingb2cfce22018-02-05 08:58:19 -080068 socket_forward_proxy \
Tomasz Wiszkowskia2f420a2017-07-20 14:56:52 -070069 usbforward \
Tomasz Wiszkowski357220c2017-09-13 09:09:00 -070070 VSoCService \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070071 wpa_supplicant.vsoc.conf \
Andreas Huberf9ad63a2018-01-18 12:55:43 -080072 vsoc_input_service \
Alistair Strachan5f90ba42018-05-03 11:43:25 -070073 vport_trigger \
Cody Schuffelen622d1642018-07-31 14:16:18 -070074 rename_netiface \
Greg Hartman692d2f32018-10-09 17:09:51 -070075 ip_link_add \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070076
77#
78# Packages for AOSP-available stuff we use from the framework
79#
80PRODUCT_PACKAGES += \
81 dhcpcd-6.8.2 \
82 dhcpcd-6.8.2.conf \
83 e2fsck \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070084 ip \
85 network \
86 perf \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070087 scp \
88 sleep \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070089 tcpdump \
90 wpa_supplicant \
91 wificond \
92
93#
94# Packages for the OpenGL implementation
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -070095#
Greg Hartmanaebd8b92018-07-24 01:51:52 -070096
97# Placeholder to ensure that /vendor/lib/egl exists
98PRODUCT_COPY_FILES += \
99 device/google/cuttlefish/shared/config/README_egl.md:$(TARGET_COPY_OUT_VENDOR)/lib/egl/README.md
100
Jorge E. Moreiraa0d64b42018-10-10 12:54:40 -0700101# Guest side SwiftShader
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700102PRODUCT_PACKAGES += \
103 libEGL_swiftshader \
104 libGLESv1_CM_swiftshader \
Greg Hartmanaebd8b92018-07-24 01:51:52 -0700105 libGLESv2_swiftshader
106
107# The locking_wrapper puts a lock around all of the SwiftShader entry points to
108# serialize all access to the library, reducing the chances for races.
Jorge E. Moreiraa0d64b42018-10-10 12:54:40 -0700109# Applies only to guest-side SwiftShader
Greg Hartmanaebd8b92018-07-24 01:51:52 -0700110PRODUCT_PACKAGES += \
111 libEGL_locking_wrapper \
112 libGLESv1_CM_locking_wrapper \
113 libGLESv2_locking_wrapper
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700114
Jorge E. Moreiraa0d64b42018-10-10 12:54:40 -0700115# GLES encoder, reused from goldfish
116PRODUCT_PACKAGES += \
117 libEGL_emulation \
118 libGLESv1_CM_emulation \
119 libGLESv2_emulation \
120
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700121DEVICE_PACKAGE_OVERLAYS := device/google/cuttlefish/shared/overlay
122PRODUCT_AAPT_CONFIG := normal large xlarge hdpi xhdpi
Aurimas Liutikasac823d72017-12-11 19:22:48 +0000123# PRODUCT_AAPT_PREF_CONFIG is intentionally not set to pick up every density resources.
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700124
125#
126# General files
127#
128PRODUCT_COPY_FILES += \
129 device/google/cuttlefish/shared/config/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
Cody Schuffelen56d0d1d2018-08-20 17:49:17 -0700130 device/google/cuttlefish/shared/config/camera_v3.json:$(TARGET_COPY_OUT_VENDOR)/etc/config/camera.json \
Alistair Strachan3b4a2132018-06-12 15:59:02 -0700131 device/google/cuttlefish/shared/config/init.vsoc.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.vsoc.rc \
Alistair Strachan42a26742018-03-20 14:19:46 -0700132 device/google/cuttlefish/shared/config/ueventd.vsoc.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/ueventd.vsoc.rc \
Steven Morelanda1f17832018-06-19 15:41:25 -0700133 device/google/cuttlefish/shared/config/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
134 device/google/cuttlefish/shared/config/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
135 device/google/cuttlefish/shared/config/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700136 frameworks/av/media/libeffects/data/audio_effects.conf:system/etc/audio_effects.conf \
Steven Morelanda1f17832018-06-19 15:41:25 -0700137 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
138 frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
139 frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700140 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
141 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
142 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
Steven Morelandd4384132018-06-12 11:14:30 -0700143 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \
144 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
145 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
146 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml \
147 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
148 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
149 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml \
150 frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
151 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \
152 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
153 frameworks/native/data/etc/android.hardware.sensor.barometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.barometer.xml \
154 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
155 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
156 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
157 frameworks/native/data/etc/android.hardware.touchscreen.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.xml \
158 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
159 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
160 frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700161 system/bt/vendor_libs/test_vendor_lib/data/controller_properties.json:system/etc/bluetooth/controller_properties.json \
162
Romit Dasgupta2a6ae262017-07-20 14:17:42 -0700163
164#
Alistair Strachane7949c32018-11-28 16:42:48 -0800165# The fstab requires special handling. For system-as-root builds, we *must*
166# retrieve the vendor partition mount options from DTB, as system must be
167# "pristine" to support GSI. For builds with an initrd, we prefer not to
168# rely on DTB, and *must* retrieve the partition mount options from an fstab
169# in the initrd instead. (In either case, the fstab *must also* be installed to
170# /vendor/etc)
171#
172ifeq ($(TARGET_BUILD_SYSTEM_ROOT_IMAGE),true)
173PRODUCT_COPY_FILES += \
174 device/google/cuttlefish/shared/config/fstab.dtb:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.vsoc \
175
176else
177PRODUCT_COPY_FILES += \
178 device/google/cuttlefish/shared/config/fstab.initrd:$(TARGET_COPY_OUT_RAMDISK)/fstab.vsoc \
179 device/google/cuttlefish/shared/config/fstab.initrd:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.vsoc \
180
181endif
182
183
184#
Tomasz Wiszkowski8afd7e92017-09-20 09:43:27 -0700185# USB Specific
Romit Dasgupta2a6ae262017-07-20 14:17:42 -0700186#
187PRODUCT_COPY_FILES += \
Tomasz Wiszkowskie1e95672017-09-07 12:55:15 -0700188 device/google/cuttlefish/shared/config/init.hardware.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.vsoc.usb.rc
Romit Dasgupta2a6ae262017-07-20 14:17:42 -0700189
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700190# Packages for HAL implementations
191
192#
193# Hardware Composer HAL
194#
195PRODUCT_PACKAGES += \
Alistair Strachanfaebd892018-03-20 14:21:31 -0700196 hwcomposer.drm \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700197 hwcomposer.vsoc \
Jorge E. Moreira8b42ef62017-06-22 16:55:58 -0700198 hwcomposer-stats \
Steven Morelandb9709b42018-01-08 13:22:17 -0800199 android.hardware.graphics.composer@2.1-impl \
200 android.hardware.graphics.composer@2.1-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700201
202#
203# Gralloc HAL
204#
205PRODUCT_PACKAGES += \
Alistair Strachanfaebd892018-03-20 14:21:31 -0700206 gralloc.minigbm \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700207 gralloc.vsoc \
208 android.hardware.graphics.mapper@2.0-impl \
209 android.hardware.graphics.allocator@2.0-impl \
210 android.hardware.graphics.allocator@2.0-service
211
212#
213# Bluetooth HAL and Compatibility Bluetooth library (for older revs).
214#
215PRODUCT_PACKAGES += \
216 android.hardware.bluetooth@1.0-service.sim \
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700217
218#
219# Audio HAL
220#
221PRODUCT_PACKAGES += \
222 audio.primary.vsoc \
Kevin Rocard2b9595e2018-03-07 17:25:29 -0800223 android.hardware.audio@4.0-impl \
224 android.hardware.audio.effect@4.0-impl \
Steven Moreland40a1dd42018-01-08 12:49:08 -0800225 android.hardware.audio@2.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700226
227#
228# Drm HAL
229#
230PRODUCT_PACKAGES += \
Steven Moreland9bf4f592018-01-08 13:10:53 -0800231 android.hardware.drm@1.0-impl \
232 android.hardware.drm@1.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700233
234#
235# Dumpstate HAL
236#
237PRODUCT_PACKAGES += \
Greg Hartmand0bdc992017-08-17 15:45:08 -0700238 android.hardware.dumpstate@1.0-service.cuttlefish
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700239
240#
241# Camera
242#
243PRODUCT_PACKAGES += \
244 camera.vsoc \
245 camera.vsoc.jpeg \
246 camera.device@3.2-impl \
Steven Moreland84c2d182018-01-08 17:18:14 -0800247 android.hardware.camera.provider@2.4-impl \
248 android.hardware.camera.provider@2.4-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700249
250#
Steven Moreland178b80e2018-01-10 10:03:23 -0800251# Gatekeeper
252#
253PRODUCT_PACKAGES += \
254 gatekeeper.vsoc \
255 android.hardware.gatekeeper@1.0-impl \
256 android.hardware.gatekeeper@1.0-service
257
258#
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700259# GPS
260#
261PRODUCT_PACKAGES += \
262 gps.vsoc \
Steven Moreland87505f72018-01-08 13:23:29 -0800263 android.hardware.gnss@1.0-impl \
264 android.hardware.gnss@1.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700265
Steven Morelandc6bcbcd2018-01-10 12:27:59 -0800266# Health
Steven Morelandc6bcbcd2018-01-10 12:27:59 -0800267PRODUCT_PACKAGES += \
Jorge E. Moreirabe8b5b82018-03-08 16:46:28 -0800268 android.hardware.health@2.0-service.cuttlefish
Steven Morelandc6bcbcd2018-01-10 12:27:59 -0800269
Yifan Hongfe328a22019-01-04 10:43:16 -0800270# Health Storage
271PRODUCT_PACKAGES += \
272 android.hardware.health.storage@1.0-service.cuttlefish
273
Steven Morelandc6bcbcd2018-01-10 12:27:59 -0800274#
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700275# Sensors
276#
277PRODUCT_PACKAGES += \
278 sensors.vsoc \
Steven Morelandf8a997e2018-01-08 13:47:24 -0800279 android.hardware.sensors@1.0-impl \
280 android.hardware.sensors@1.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700281
282#
283# Lights
284#
285PRODUCT_PACKAGES += \
286 lights.vsoc \
Steven Moreland1e0c2202018-01-08 12:45:07 -0800287 android.hardware.light@2.0-impl \
288 android.hardware.light@2.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700289
290#
291# Keymaster HAL
292#
293PRODUCT_PACKAGES += \
Steven Moreland13bb8112018-01-08 13:08:36 -0800294 android.hardware.keymaster@3.0-impl \
295 android.hardware.keymaster@3.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700296
297#
298# Power HAL
299#
300PRODUCT_PACKAGES += \
301 power.vsoc \
Steven Morelandbb738472018-01-08 12:46:04 -0800302 android.hardware.power@1.0-impl \
303 android.hardware.power@1.0-service
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700304
Greg Hartman2fbc4942017-12-14 15:45:55 -0800305#
306# USB
307PRODUCT_PACKAGES += \
308 android.hardware.usb@1.0-service
309
Tomasz Wiszkowskica327fe2017-05-26 15:54:12 -0700310# TODO vibrator HAL
311# TODO thermal
312
Greg Hartmand57a1662017-10-24 22:57:56 -0700313PRODUCT_PACKAGES += \
Greg Hartmanaf49e9b2018-02-02 16:40:53 -0800314 cuttlefish_dtb
Andreas Huber2ad62482018-01-31 09:15:01 -0800315
316# WLAN driver configuration files
317PRODUCT_COPY_FILES += \
318 $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf
Alistair Strachan5b47aac2019-01-03 12:55:59 -0800319
320# Recovery mode
321ifneq ($(TARGET_NO_RECOVERY),true)
322PRODUCT_PACKAGES += \
323 socket_forward_proxy.recovery \
324
325PRODUCT_COPY_FILES += \
326 device/google/cuttlefish/shared/config/init.recovery.vsoc.rc:recovery/root/init.recovery.vsoc.rc \
327
328endif