marble: add support for new Wi-Fi firmware and configuration files

- Introduced symlinks for WCNSS_qcom_cfg.ini and wlan_mac.bin for qca6490 and qca6750.
- Updated BoardConfig.mk to enable vendor RIL service and set security patch level.
- Enhanced device.mk with additional packages for Wi-Fi, USB, and sensors.
- Removed obsolete GNSS-related files from proprietary-files.txt.
- Updated setup-makefiles.py and sort-blobs-list.sh to executable permissions.
- Created public.libraries.txt for shared libraries.
- Added prebuilt IDCs and keylayouts for fingerprint sensors (uinput-fpc and uinput-goodix).
- Implemented new HAL configuration for sensors.
- Enhanced WLAN configuration files with additional parameters for performance optimization.
- Updated wpa_supplicant_overlay.conf and p2p_supplicant_overlay.conf for improved Wi-Fi functionality.
This commit is contained in:
2025-06-20 11:27:03 +09:00
parent f09e486236
commit e58aaaa2ef
18 changed files with 906 additions and 21 deletions

322
device.mk
View File

@ -79,6 +79,63 @@ PRODUCT_PACKAGES += \
android.hardware.boot-service.qti \
android.hardware.boot-service.qti.recovery
$(call soong_config_set, ufsbsg, ufsframework, bsg)
# Camera
$(call soong_config_set,camera,override_format_from_reserved,true)
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml
# Configstore
PRODUCT_PACKAGES += \
disable_configstore
# Display
PRODUCT_PACKAGES += \
android.hardware.graphics.mapper@4.0-impl-qti-display \
vendor.qti.hardware.display.allocator-service \
vendor.qti.hardware.display.composer-service
PRODUCT_PACKAGES += \
init.qti.display_boot.rc \
init.qti.display_boot.sh
PRODUCT_COPY_FILES += \
hardware/qcom-caf/sm8450/display/config/snapdragon_color_libs_config.xml:$(TARGET_COPY_OUT_VENDOR)/etc/snapdragon_color_libs_config.xml
# DRM
PRODUCT_PACKAGES += \
android.hardware.drm-service.clearkey
# GPS
PRODUCT_PACKAGES += \
android.hardware.gnss@2.1-impl-qti \
android.hardware.gnss-aidl-impl-qti \
android.hardware.gnss-aidl-service-qti
PRODUCT_PACKAGES += \
libbatching \
libgeofencing \
libgnss
$(call soong_config_set, qtilocation, feature_nhz, false)
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml
# Graphics
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \
frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \
frameworks/native/data/etc/android.software.opengles.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
frameworks/native/data/etc/android.software.vulkan.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
# Fstab
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/rootdir/etc/charger_fw_fstab.qti:$(TARGET_COPY_OUT_VENDOR)/etc/charger_fw_fstab.qti
@ -94,18 +151,150 @@ PRODUCT_PACKAGES += \
libvndfwk_detect_jni.qti \
libvndfwk_detect_jni.qti.vendor
# Fingerprint
ifneq ($(TARGET_IS_TABLET),true)
PRODUCT_PACKAGES += \
android.hardware.biometrics.fingerprint-service.xiaomi
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
ifeq ($(TARGET_HAS_UDFPS),true)
PRODUCT_PACKAGES += \
libudfpshandler
endif
endif
# Health
PRODUCT_PACKAGES += \
android.hardware.health-service.qti
ifneq ($(TARGET_IS_VAB),true)
PRODUCT_PACKAGES += \
android.hardware.health-service.qti_recovery
endif
# IFAAService
PRODUCT_PACKAGES += \
IFAAService
# IPACM
PRODUCT_PACKAGES += \
ipacm \
IPACM_cfg.xml \
IPACM_Filter_cfg.xml
# IR
PRODUCT_PACKAGES += \
android.hardware.ir-service.lineage
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.consumerir.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.consumerir.xml
# Input
PRODUCT_PACKAGES += \
uinput-fpc.kl \
uinput-goodix.kl
PRODUCT_PACKAGES += \
uinput-fpc.idc \
uinput-goodix.idc
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/idc/uinput-fpc.idc:$(TARGET_COPY_OUT_SYSTEM)/usr/idc/uinput-fpc.idc \
$(LOCAL_PATH)/idc/uinput-goodix.idc:$(TARGET_COPY_OUT_SYSTEM)/usr/idc/uinput-goodix.idc \
$(LOCAL_PATH)/keylayout/uinput-fpc.kl:$(TARGET_COPY_OUT_SYSTEM)/usr/keylayout/uinput-fpc.kl \
$(LOCAL_PATH)/keylayout/uinput-goodix.kl:$(TARGET_COPY_OUT_SYSTEM)/usr/keylayout/uinput-goodix.kl
# Kernel
PRODUCT_SET_DEBUGFS_RESTRICTIONS := true
# Keymaster
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.keystore.app_attest_key.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.keystore.app_attest_key.xml
# Lights
PRODUCT_PACKAGES += \
android.hardware.light-service.lineage
# Lineage Health
PRODUCT_PACKAGES += \
vendor.lineage.health-service.default
$(call soong_config_set,lineage_health,charging_control_supports_bypass,false)
# Media - Dolby vision
PRODUCT_PACKAGES += \
libcodec2_hidl_shim.vendor
# Network
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.software.ipsec_tunnel_migration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnel_migration.xml \
frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml
# NFC / Secure Element
PRODUCT_PACKAGES += \
android.hardware.nfc-service.nxp \
com.android.nfc_extras
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml
ifeq ($(TARGET_NFC_SUPPORTED_SKUS),)
TARGET_COPY_OUT_NFC_SKU_PERMISSIONS := $(TARGET_COPY_OUT_VENDOR)/etc/permissions/
else
$(foreach sku, $(TARGET_NFC_SUPPORTED_SKUS), \
$(eval TARGET_COPY_OUT_NFC_SKU_PERMISSIONS += $(TARGET_COPY_OUT_ODM)/etc/permissions/sku_$(sku)))
endif
$(foreach sku_out, $(TARGET_COPY_OUT_NFC_SKU_PERMISSIONS), \
$(eval PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(sku_out)/android.hardware.nfc.ese.xml \
frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(sku_out)/android.hardware.nfc.hce.xml \
frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(sku_out)/android.hardware.nfc.hcef.xml \
frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(sku_out)/android.hardware.nfc.uicc.xml \
frameworks/native/data/etc/android.hardware.nfc.xml:$(sku_out)/android.hardware.nfc.xml \
frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(sku_out)/etc/permissions/android.hardware.se.omapi.ese.xml \
frameworks/native/data/etc/com.android.nfc_extras.xml:$(sku_out)/com.android.nfc_extras.xml \
frameworks/native/data/etc/com.nxp.mifare.xml:$(sku_out)/com.nxp.mifare.xml))
# OMX
TARGET_SUPPORTS_OMX_SERVICE := false
# Partitions
PRODUCT_PACKAGES += \
vendor_bt_firmware_mountpoint \
vendor_dsp_mountpoint \
vendor_firmware_mnt_mountpoint
vendor_firmware_mnt_mountpoint \
vendor_vm-system_mountpoint
PRODUCT_USE_DYNAMIC_PARTITIONS := true
# Power
PRODUCT_PACKAGES += \
android.hardware.power-service-qti
PRODUCT_COPY_FILES += \
vendor/qcom/opensource/power/config/taro/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
# Powershare
$(call soong_config_set,lineage_powershare,powershare_path,/sys/class/qcom-battery/reverse_chg_mode)
# Public libraries
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
# QMI
PRODUCT_PACKAGES += \
libvndfwk_detect_jni.qti_vendor # Needed by CNE app
# Recovery
PRODUCT_PACKAGES += \
fastbootd
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/rootdir/etc/init.recovery.qcom.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.qcom.rc
# Rootdir
PRODUCT_PACKAGES += \
fstab.qcom
@ -123,11 +312,74 @@ PRODUCT_PACKAGES += \
init.target.rc \
ueventd.qcom.rc
# Sensors
PRODUCT_PACKAGES += \
android.hardware.sensors-service.xiaomi-multihal
PRODUCT_PACKAGES += \
sensors.xiaomi.v2
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/sensors/hals.conf:$(TARGET_COPY_OUT_ODM)/etc/sensors/hals.conf
$(foreach sku, taro diwali cape ukee, \
$(eval PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.accelerometer.xml \
frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.compass.xml \
frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.gyroscope.xml \
frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.light.xml \
frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.proximity.xml \
frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.stepcounter.xml \
frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/sku_$(sku)/android.hardware.sensor.stepdetector.xml \
))
# Soong namespaces
PRODUCT_SOONG_NAMESPACES += \
$(LOCAL_PATH) \
hardware/xiaomi
# Telephony
PRODUCT_PACKAGES += \
extphonelib \
extphonelib-product \
extphonelib.xml \
extphonelib_product.xml \
ims-ext-common \
ims_ext_common.xml \
qti-telephony-hidl-wrapper \
qti-telephony-hidl-wrapper-prd \
qti_telephony_hidl_wrapper.xml \
qti_telephony_hidl_wrapper_prd.xml \
qti-telephony-utils \
qti-telephony-utils-prd \
qti_telephony_utils.xml \
qti_telephony_utils_prd.xml \
telephony-ext \
xiaomi-telephony-stub
PRODUCT_BOOT_JARS += \
telephony-ext \
xiaomi-telephony-stub
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml
# Thermal
PRODUCT_PACKAGES += \
android.hardware.thermal-service.qti
# Touchscreen
PRODUCT_PACKAGES += \
vendor.lineage.touch-service.xiaomi
$(call soong_config_set, XIAOMI_TOUCH, HIGH_TOUCH_POLLING_PATH, /sys/devices/virtual/touch/touch_dev/bump_sample_rate)
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml
# Ueventd
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/rootdir/etc/ueventd-odm.rc:$(TARGET_COPY_OUT_ODM)/etc/ueventd.rc
@ -141,7 +393,73 @@ PRODUCT_PACKAGES += \
PRODUCT_PACKAGES_DEBUG += \
update_engine_client
# WiFi Display
# USB
PRODUCT_PACKAGES += \
android.hardware.usb-service.qti \
android.hardware.usb.gadget-service.qti
PRODUCT_PACKAGES += \
init.qcom.usb.rc \
init.qcom.usb.sh \
usb_compositions.conf
PRODUCT_SOONG_NAMESPACES += vendor/qcom/opensource/usb/etc
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml
# Vendor service manager
PRODUCT_PACKAGES += \
vndservicemanager
# Vibrator
PRODUCT_PACKAGES += \
vendor.qti.hardware.vibrator.service
PRODUCT_COPY_FILES += \
vendor/qcom/opensource/vibrator/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml
# Wi-Fi
PRODUCT_PACKAGES += \
android.hardware.wifi-service \
android.hardware.wifi.hostapd@1.0.vendor \
hostapd \
hostapd_cli \
libwifi-hal-ctrl \
libwifi-hal-qcom \
wpa_supplicant \
wpa_supplicant.conf
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/wlan/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
$(LOCAL_PATH)/wlan/qca6490/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/qca6490/WCNSS_qcom_cfg.ini \
$(LOCAL_PATH)/wlan/qca6750/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/qca6750/WCNSS_qcom_cfg.ini \
$(LOCAL_PATH)/wlan/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \
frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml
# Wi-Fi Display
PRODUCT_PACKAGES += \
libwfdaac_vendor
PRODUCT_BOOT_JARS += \
WfdCommon
# WiFi firmware symlinks
PRODUCT_PACKAGES += \
firmware_WCNSS_qcom_cfg.ini_symlink \
firmware_qca6490_WCNSS_qcom_cfg.ini_symlink \
firmware_qca6490_wlan_mac.bin_symlink \
firmware_qca6750_WCNSS_qcom_cfg.ini_symlink \
firmware_qca6750_wlan_mac.bin_symlink
# Misc
PRODUCT_PACKAGES += \
libavservices_minijail \
libgui_shim \