device.mk 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271
  1. #
  2. # Copyright (C) 2024 The LineageOS Project
  3. #
  4. # SPDX-License-Identifier: Apache-2.0
  5. #
  6. # Enable project quotas and casefolding for emulated storage without sdcardfs
  7. $(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
  8. # Enforce generic ramdisk allow list
  9. $(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk)
  10. # Dalvik
  11. $(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
  12. # Enable updating of APEXes
  13. $(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
  14. # Add common definitions for Qualcomm
  15. $(call inherit-product, hardware/qcom-caf/common/common.mk)
  16. # AAPT
  17. PRODUCT_AAPT_CONFIG := normal
  18. PRODUCT_AAPT_PREF_CONFIG := xxxhdpi
  19. # API levels
  20. BOARD_SHIPPING_API_LEVEL := 34
  21. PRODUCT_SHIPPING_API_LEVEL := $(BOARD_SHIPPING_API_LEVEL)
  22. # Audio
  23. SOONG_CONFIG_NAMESPACES += android_hardware_audio
  24. SOONG_CONFIG_android_hardware_audio += \
  25. run_64bit
  26. SOONG_CONFIG_android_hardware_audio_run_64bit := true
  27. PRODUCT_PACKAGES += \
  28. [email protected] \
  29. android.hardware.audio.common-V1-ndk.vendor \
  30. [email protected] \
  31. android.hardware.audio.service \
  32. android.hardware.bluetooth.audio-impl \
  33. [email protected] \
  34. audio.bluetooth.default \
  35. audio.primary.pineapple \
  36. audio.r_submix.default \
  37. audio.usb.default \
  38. audioadsprpcd \
  39. libagmmixer \
  40. libagm_compress_plugin \
  41. libagm_mixer_plugin \
  42. libagm_pcm_plugin \
  43. libbatterylistener \
  44. libqcompostprocbundle \
  45. libqcomvisualizer \
  46. libqcomvoiceprocessing \
  47. libsndcardparser \
  48. libtinycompress \
  49. libvolumelistener
  50. AUDIO_HAL_DIR := hardware/qcom-caf/sm8650/audio/primary-hal
  51. AUDIO_PAL_DIR := hardware/qcom-caf/sm8650/audio/pal
  52. PRODUCT_COPY_FILES += \
  53. $(AUDIO_HAL_DIR)/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
  54. $(AUDIO_HAL_DIR)/configs/pineapple/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_pineapple/audio_effects.conf \
  55. $(AUDIO_HAL_DIR)/configs/pineapple/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/sku_pineapple/audio_effects.xml \
  56. $(AUDIO_HAL_DIR)/configs/pineapple/microphone_characteristics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/microphone_characteristics.xml \
  57. $(AUDIO_PAL_DIR)/configs/pineapple/Hapticsconfig.xml:$(TARGET_COPY_OUT_VENDOR)/etc/Hapticsconfig.xml \
  58. PRODUCT_COPY_FILES += \
  59. frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
  60. frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
  61. frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \
  62. frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \
  63. frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml
  64. # Boot animation
  65. TARGET_SCREEN_HEIGHT := 3120
  66. TARGET_SCREEN_WIDTH := 1440
  67. # DebugFS
  68. PRODUCT_SET_DEBUGFS_RESTRICTIONS := true
  69. # Display
  70. PRODUCT_PACKAGES += \
  71. [email protected] \
  72. init.qti.display_boot.rc \
  73. init.qti.display_boot.sh \
  74. vendor.qti.hardware.display.allocator-service \
  75. vendor.qti.hardware.display.composer-service \
  76. vendor.qti.hardware.display.composer-service.rc \
  77. vendor.qti.hardware.display.composer-service.xml \
  78. vendor.qti.hardware.display.demura-service
  79. PRODUCT_COPY_FILES += \
  80. frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml
  81. # fastbootd
  82. PRODUCT_PACKAGES += \
  83. [email protected] \
  84. fastbootd
  85. # Gatekeeper
  86. PRODUCT_PACKAGES += \
  87. [email protected] \
  88. android.hardware.gatekeeper-V1-ndk.vendor \
  89. libgatekeeper.vendor
  90. # Graphics
  91. PRODUCT_COPY_FILES += \
  92. frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
  93. frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
  94. frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \
  95. frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \
  96. frameworks/native/data/etc/android.hardware.vulkan.version-1_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_3.xml \
  97. frameworks/native/data/etc/android.software.opengles.deqp.level-2022-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
  98. frameworks/native/data/etc/android.software.vulkan.deqp.level-2022-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
  99. # HIDL
  100. PRODUCT_PACKAGES += \
  101. libhidltransport.vendor \
  102. libhwbinder.vendor
  103. # Media
  104. PRODUCT_PACKAGES += \
  105. libavservices_minijail.vendor
  106. # Overlays
  107. PRODUCT_ENFORCE_RRO_TARGETS := *
  108. # Power
  109. PRODUCT_PACKAGES += \
  110. android.hardware.power-service-qti
  111. # Partitions
  112. PRODUCT_USE_DYNAMIC_PARTITIONS := true
  113. # Product characteristics
  114. PRODUCT_CHARACTERISTICS := phone
  115. # Protobuf
  116. PRODUCT_PACKAGES += \
  117. libprotobuf-cpp-full-3.9.1-vendorcompat
  118. # QMI
  119. PRODUCT_PACKAGES += \
  120. libcurl.vendor \
  121. libjsoncpp.vendor \
  122. libsqlite.vendor
  123. # RIL
  124. PRODUCT_PACKAGES += \
  125. libnetutils.vendor \
  126. libsecril-client
  127. # Rootdir
  128. PRODUCT_PACKAGES += \
  129. dcc_extension.sh \
  130. hdm_status.sh \
  131. init.class_main.sh \
  132. init.crda.sh \
  133. init.kernel.post_boot-cliffs.sh \
  134. init.kernel.post_boot-pineapple.sh \
  135. init.kernel.post_boot.sh \
  136. init.mdm.sh \
  137. init.qcom.class_core.sh \
  138. init.qcom.coex.sh \
  139. init.qcom.early_boot.sh \
  140. init.qcom.efs.sync.sh \
  141. init.qcom.post_boot.sh \
  142. init.qcom.sdio.sh \
  143. init.qcom.sensors.sh \
  144. init.qcom.sh \
  145. init.qti.qcv.rc \
  146. init.qti.qcv.sh \
  147. init.qti.kernel.debug-cliffs.sh \
  148. init.qti.kernel.debug-pineapple.sh \
  149. init.qti.kernel.debug.sh \
  150. init.qti.kernel.early_debug-pineapple.sh \
  151. init.qti.kernel.early_debug.sh \
  152. init.qti.kernel.sh \
  153. init.qti.media.sh \
  154. init.qti.time.daemon.sh \
  155. init.qti.write.sh \
  156. init.vendor.sensordebug.sh \
  157. init.vendor.sensordebug.ssr_dump.sh \
  158. install-recovery.sh \
  159. qca6234-service.sh \
  160. system_dlkm_modprobe.sh \
  161. ueventd.qcom.rc \
  162. vendor_modprobe.sh \
  163. PRODUCT_PACKAGES += \
  164. fstab.qcom \
  165. init.e3q.rc \
  166. init.qcom.factory.rc \
  167. init.qcom.rc \
  168. init.qti.kernel.rc \
  169. init.qti.ss-ramdump.sh \
  170. init.qti.ufs.rc \
  171. init.samsung.bsp.rc \
  172. init.samsung.display.rc \
  173. init.samsung.dp.rc \
  174. init.samsung.factory.rc \
  175. init.samsung.power.rc \
  176. init.samsung.rc \
  177. init.samsung.user.rc \
  178. init.target.rc \
  179. init.recovery.qcom.rc \
  180. init.recovery.samsung.rc \
  181. PRODUCT_COPY_FILES += \
  182. $(LOCAL_PATH)/rootdir/etc/fstab.qcom:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/fstab.qcom
  183. # Soong namespaces
  184. PRODUCT_SOONG_NAMESPACES += \
  185. $(LOCAL_PATH) \
  186. hardware/samsung \
  187. kernel/samsung/sm8650 \
  188. kernel/samsung/sm8650-modules
  189. # Thermal
  190. PRODUCT_PACKAGES += \
  191. [email protected]
  192. # Trusted UI
  193. PRODUCT_PACKAGES += \
  194. [email protected] \
  195. [email protected]
  196. # USB
  197. PRODUCT_PACKAGES += \
  198. android.hardware.usb-service.qti \
  199. android.hardware.usb.gadget-service.qti \
  200. init.qcom.usb.rc \
  201. init.qcom.usb.sh
  202. PRODUCT_SOONG_NAMESPACES += \
  203. vendor/qcom/opensource/usb/etc
  204. PRODUCT_COPY_FILES += \
  205. frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
  206. frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml
  207. # Vendor service manager
  208. PRODUCT_PACKAGES += \
  209. vndservicemanager
  210. # Verified Boot
  211. PRODUCT_COPY_FILES += \
  212. frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml
  213. # VNDK
  214. PRODUCT_PACKAGES += \
  215. libcrypto-v33
  216. # Wi-Fi
  217. PRODUCT_PACKAGES += \
  218. android.hardware.wifi-service \
  219. hostapd \
  220. libwpa_client \
  221. libwifi-hal-ctrl \
  222. libwifi-hal-qcom \
  223. wpa_supplicant \
  224. wpa_supplicant.conf \
  225. firmware_wlanmdsp.otaupdate_symlink \
  226. firmware_wlan_mac.bin_symlink \
  227. firmware_WCNSS_qcom_cfg.ini_symlink
  228. # Inherit the proprietary files
  229. $(call inherit-product, vendor/samsung/e3q/e3q-vendor.mk)