# WLAN
PRODUCT_PACKAGES :=	\
    board-2.bin		\
    firmware-5.bin	\
    wlanmdsp.mbn

# Bluetooth
PRODUCT_PACKAGES +=	\
    crbtfw21.tlv	\
    crnv21.bin

# Adreno
PRODUCT_PACKAGES +=	\
    a630_gmu.bin	\
    a630_sqe.fw		\
    a630_zap.mbn	\
    a630_zap.mdt

# DSP (adsp+cdsp)
PRODUCT_PACKAGES +=	\
    adsp.mbn.sdm845	\
    adsp.mdt		\
    adspr.jsn.sdm845	\
    adspua.jsn.sdm845	\
    cdsp.mbn.sdm845	\
    cdsp.mdt		\
    cdspr.jsn.sdm845

# Modem
PRODUCT_PACKAGES +=	\
    mba.mbn		\
    modem.mbn		\
    modemuw.jsn

# Video encoder/decoder accelerator
PRODUCT_PACKAGES +=	\
    venus.b00.sdm845	\
    venus.b01.sdm845	\
    venus.b02.sdm845	\
    venus.b03.sdm845	\
    venus.b04.sdm845	\
    venus.mbn.sdm845	\
    venus.mdt.sdm845

# USB (USB Host to PCIE)
# For Ethernet and one of the USB-A host port to work
PRODUCT_PACKAGES +=	\
    K2026090.mem

# I2C/SPI fix
PRODUCT_PACKAGES +=	\
    devcfg.mbn

FIRMWARE_VENDOR_PATH := $(LINARO_VENDOR_PATH)/linux-firmware/$(EXPECTED_LINARO_VENDOR_VERSION)

# Copy Venus and ADSP/CDSP firmware files to vendor ramdisk to drop the
# dependency on user sysfs fw loader helper (FW_LOADER_USER_HELPER_FALLBACK)
PRODUCT_COPY_FILES += \
    $(FIRMWARE_VENDOR_PATH)/qcom/sdm845/adsp.mbn:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/sdm845/adsp.mbn		\
    $(FIRMWARE_VENDOR_PATH)/qcom/sdm845/adsp.mbn:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/sdm845/adsp.mdt		\
    $(FIRMWARE_VENDOR_PATH)/qcom/sdm845/cdsp.mbn:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/sdm845/cdsp.mbn		\
    $(FIRMWARE_VENDOR_PATH)/qcom/sdm845/cdsp.mbn:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/sdm845/cdsp.mdt		\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.b00:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.b00	\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.b01:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.b01	\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.b02:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.b02	\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.b03:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.b03	\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.b04:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.b04	\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.mbn:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.mbn	\
    $(FIRMWARE_VENDOR_PATH)/qcom/venus-5.2/venus.mdt:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/vendor/firmware/qcom/venus-5.2/venus.mdt

# Copy notice/license files to rootfs
# Not an AOSP requirement but other Linux distros do this
PRODUCT_COPY_FILES += \
    $(FIRMWARE_VENDOR_PATH)/ath10k/WCN3990/hw1.0/notice.txt_wlanmdsp:$(TARGET_COPY_OUT_VENDOR)/firmware/ath10k/WCN3990/hw1.0/notice.txt_wlanmdsp	\
    $(FIRMWARE_VENDOR_PATH)/qca/NOTICE.txt:$(TARGET_COPY_OUT_VENDOR)/firmware/qca/NOTICE.txt							\
    $(FIRMWARE_VENDOR_PATH)/qcom/NOTICE.txt:$(TARGET_COPY_OUT_VENDOR)/firmware/qcom/NOTICE.txt							\
    $(FIRMWARE_VENDOR_PATH)/LICENSE.QualcommAtheros_ath10k:$(TARGET_COPY_OUT_VENDOR)/firmware/LICENSE.QualcommAtheros_ath10k			\
    $(FIRMWARE_VENDOR_PATH)/LICENSE.qcom:$(TARGET_COPY_OUT_VENDOR)/firmware/LICENSE.qcom								\
    $(LINARO_VENDOR_PATH)/db845c/$(EXPECTED_LINARO_VENDOR_VERSION)/RB3_firmware_20190529180356-v4/LICENSE.qcom.txt:$(TARGET_COPY_OUT_VENDOR)/firmware/LICENSE.qcom.txt
