# # Copyright (C) 2019-2020 The LineageOS Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # This contains the module build definitions for the hardware-specific # components for this device. # # As much as possible, those components should be built unconditionally, # with device-specific names to avoid collisions, to avoid device-specific # bitrot and build breakages. Building a component unconditionally does # *not* include it on all devices, so it is safe even with hardware-specific # components. LOCAL_PATH := $(call my-dir) ifneq ($(filter heroqlte hero2qlte,$(TARGET_DEVICE)),) include $(call all-makefiles-under,$(LOCAL_PATH)) include $(CLEAR_VARS) # A/B builds require us to create the mount points at compile time. # Just creating it for all cases since it does not hurt. FIRMWARE_MODEM_MOUNT_POINT := $(TARGET_OUT_VENDOR)/firmware-modem FIRMWARE_MOUNT_POINT := $(TARGET_OUT_VENDOR)/firmware_mnt BT_FIRMWARE_MOUNT_POINT := $(TARGET_OUT_VENDOR)/bt_firmware DSP_MOUNT_POINT := $(TARGET_OUT_VENDOR)/dsp $(FIRMWARE_MODEM_MOUNT_POINT): @echo "Creating $(FIRMWARE_MODEM_MOUNT_POINT)" @mkdir -p $(TARGET_OUT_VENDOR)/firmware-modem $(FIRMWARE_MOUNT_POINT): @echo "Creating $(FIRMWARE_MOUNT_POINT)" @mkdir -p $(TARGET_OUT_VENDOR)/firmware_mnt $(BT_FIRMWARE_MOUNT_POINT): @echo "Creating $(BT_FIRMWARE_MOUNT_POINT)" @mkdir -p $(TARGET_OUT_VENDOR)/bt_firmware $(DSP_MOUNT_POINT): @echo "Creating $(DSP_MOUNT_POINT)" @mkdir -p $(TARGET_OUT_VENDOR)/dsp ALL_DEFAULT_INSTALLED_MODULES += \ $(FIRMWARE_MODEM_MOUNT_POINT) \ $(FIRMWARE_MOUNT_POINT) \ $(BT_FIRMWARE_MOUNT_POINT) \ $(DSP_MOUNT_POINT) IMS_LIBS := libimscamera_jni.so libimsmedia_jni.so IMS_SYMLINKS := $(addprefix $(TARGET_OUT_SYSTEM_EXT_APPS_PRIVILEGED)/ims/lib/arm64/,$(notdir $(IMS_LIBS))) $(IMS_SYMLINKS): $(LOCAL_INSTALLED_MODULE) @echo "IMS lib link: $@" @mkdir -p $(dir $@) @rm -rf $@ $(hide) ln -sf /system_ext/lib64/$(notdir $@) $@ ALL_DEFAULT_INSTALLED_MODULES += $(IMS_SYMLINKS) RFS_MSM_ADSP_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/adsp/ $(RFS_MSM_ADSP_SYMLINKS): $(LOCAL_INSTALLED_MODULE) @echo "Creating RFS MSM ADSP folder structure: $@" @rm -rf $@/* @mkdir -p $(dir $@)/readonly/vendor $(hide) ln -sf /data/vendor/tombstones/rfs/lpass $@/ramdumps $(hide) ln -sf /mnt/vendor/persist/rfs/msm/adsp $@/readwrite $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware RFS_MSM_CDSP_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/cdsp/ $(RFS_MSM_CDSP_SYMLINKS): $(LOCAL_INSTALLED_MODULE) @echo "Creating RFS MSM CDSP folder structure: $@" @rm -rf $@/* @mkdir -p $(dir $@)/readonly/vendor $(hide) ln -sf /data/vendor/tombstones/rfs/cdsp $@/ramdumps $(hide) ln -sf /mnt/vendor/persist/rfs/msm/cdsp $@/readwrite $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware RFS_MSM_MPSS_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/mpss/ $(RFS_MSM_MPSS_SYMLINKS): $(LOCAL_INSTALLED_MODULE) @echo "Creating RFS MSM MPSS folder structure: $@" @rm -rf $@/* @mkdir -p $(dir $@)/readonly/vendor $(hide) ln -sf /data/vendor/tombstones/rfs/modem $@/ramdumps $(hide) ln -sf /mnt/vendor/persist/rfs/msm/mpss $@/readwrite $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos $(hide) ln -sf /vendor/firmware-modem $@/readonly/firmware $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware RFS_MSM_SLPI_SYMLINKS := $(TARGET_OUT_VENDOR)/rfs/msm/slpi/ $(RFS_MSM_SLPI_SYMLINKS): $(LOCAL_INSTALLED_MODULE) @echo "Creating RFS MSM SLPI folder structure: $@" @rm -rf $@/* @mkdir -p $(dir $@)/readonly/vendor $(hide) ln -sf /data/vendor/tombstones/rfs/slpi $@/ramdumps $(hide) ln -sf /mnt/vendor/persist/rfs/msm/slpi $@/readwrite $(hide) ln -sf /mnt/vendor/persist/rfs/shared $@/shared $(hide) ln -sf /mnt/vendor/persist/hlos_rfs/shared $@/hlos $(hide) ln -sf /vendor/firmware_mnt $@/readonly/firmware $(hide) ln -sf /vendor/firmware $@/readonly/vendor/firmware ALL_DEFAULT_INSTALLED_MODULES += \ $(RFS_MSM_ADSP_SYMLINKS) \ $(RFS_MSM_CDSP_SYMLINKS) \ $(RFS_MSM_MPSS_SYMLINKS) \ $(RFS_MSM_SLPI_SYMLINKS) WCNSS_INI_SYMLINK := $(TARGET_OUT_VENDOR)/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini $(WCNSS_INI_SYMLINK): $(LOCAL_INSTALLED_MODULE) @echo "WCNSS config ini link: $@" @mkdir -p $(dir $@) @rm -rf $@ $(hide) ln -sf /vendor/etc/wifi/$(notdir $@) $@ WCNSS_MAC_SYMLINK := $(TARGET_OUT_VENDOR)/firmware/wlan/qca_cld/wlan_mac.bin $(WCNSS_MAC_SYMLINK): $(LOCAL_INSTALLED_MODULE) @echo "WCNSS MAC bin link: $@" @mkdir -p $(dir $@) @rm -rf $@ $(hide) ln -sf /mnt/vendor/persist/$(notdir $@) $@ ALL_DEFAULT_INSTALLED_MODULES += $(WCNSS_INI_SYMLINK) $(WCNSS_MAC_SYMLINK) endif