Initial Commit

Add db845c and RB5 firmware binaries. These files are copied/downloaded
from multiple sources and are covered under different different
redistributable licences. Here is a short summary:

vendor/
└── linaro_devices/
    ├── common/
    │   └── linux-firmware/
    │       All but one (ath10k/WCN3390/hw1.0/board-2.bin) binaries are covered
    │       under upstream licenses mentioned in WHENCE file.
    │       https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git (f5d519563ac9)
    │
    │       ath10k/WCN3390/hw1.0/board-2.bin binary for db845c is picked from
    │       linux-firmware.git fork:
    │       https://github.com/andersson/linux-firmware/commit/e165604ca024
    └── qcom/
        ├── db845c/
        │   ├── dragonboard-845c-bootloader-ufs-aosp-88/
        │   │   Db845c bootloader/rescue package is covered under LICENSE file.
        │   │   The package can be downloaded from
        │   │   http://snapshots.linaro.org/96boards/dragonboard845c/linaro/rescue/88/dragonboard-845c-bootloader-ufs-aosp-88.zip
        │   │
        │   ├── qdl/
        │   │   QDL board recovery tool (covered under LICENSE) is built from
        │   │   https://git.linaro.org/landing-teams/working/qualcomm/qdl.git (760b3dffb03d)
        │   │
        │   └── RB3_firmware_20190529180356-v4/
        │       These binaries are covered under LICENSE.qcom.txt
        │       The package can be downloaded from
        │       http://releases.linaro.org/96boards/dragonboard845c/qualcomm/firmware/RB3_firmware_20190529180356-v4.zip
        └── rb5/
            ├── qdl/
            │   QDL board recovery tool (covered under LICENSE) is built from
            │   https://git.linaro.org/landing-teams/working/qualcomm/qdl.git (13681fcb359c)
            │
            ├── rb5-bootloader-ufs-aosp-19/
            │   RB5 bootloader/rescue package is covered under LICENSE file.
            │   The package can be downloaded from
            │   http://snapshots.linaro.org/96boards/qrb5165-rb5/linaro/rescue/19/rb5-bootloader-ufs-aosp-19.zip
            │
            └── RB5_firmware_20210331-v4/
                These binaries are covered under LICENSE.qcom.txt
                The package can be downloaded from
                http://releases.linaro.org/96boards/rb5/qualcomm/firmware/RB5_firmware_20210331-v4.zip

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
diff --git a/linaro_devices/common/linux-firmware/Android.mk b/linaro_devices/common/linux-firmware/Android.mk
new file mode 100644
index 0000000..76a7998
--- /dev/null
+++ b/linaro_devices/common/linux-firmware/Android.mk
@@ -0,0 +1,77 @@
+LOCAL_PATH := $(call my-dir)
+
+# WLAN
+ath10k_firmware_files :=	\
+    board-2.bin			\
+    firmware-5.bin
+
+ath11k_firmware_files :=	\
+    amss.bin			\
+    m3.bin
+
+# Bluetooth firmware files
+qca_firmware_files :=		\
+    crbtfw21.tlv		\
+    crnv21.bin			\
+    htbtfw20.tlv		\
+    htnv20.bin
+
+# Adreno firmware files 
+qcom_firmware_files :=		\
+    a630_gmu.bin		\
+    a630_sqe.fw			\
+    a650_gmu.bin		\
+    a650_sqe.fw
+
+# Firmware files to be copied to qcom/sdm845/ path
+#
+# SM8250 DSP binaries are being PRODUCT_COPY_FILES
+# because of conflicting build target names 
+qcom_sdm845_firmware_files :=	\
+    a630_zap.mbn		\
+    adsp.mbn			\
+    adspr.jsn			\
+    adspua.jsn			\
+    cdsp.mbn			\
+    cdspr.jsn			\
+    mba.mbn			\
+    modem.mbn			\
+    modemuw.jsn
+
+# Venus Codec
+# SM8250 Venus binaries are being PRODUCT_COPY_FILES
+# because of conflicting build target names 
+venus_sdm845_firmware_files :=	\
+    venus.b00			\
+    venus.b01			\
+    venus.b02			\
+    venus.b03			\
+    venus.b04			\
+    venus.mbn			\
+    venus.mdt
+
+# Include macro for Android.mk BUILD_PREBUILT build target
+# Usage:
+#     add-qcom-firmware(LOCAL_MODULE, LOCAL_MODULE_SRC_FILES, LOCAL_MODULE_PATH, LOCAL_NOTICE_FILE) 
+
+include vendor/linaro_devices/common/CommonBuildMacros.mk
+
+FIRMWARE_PATH := $(TARGET_OUT_VENDOR)/firmware/
+
+$(call add-qcom-firmware, lt9611uxc_fw.bin, lt9611uxc_fw.bin, $(FIRMWARE_PATH), $(LOCAL_PATH)/LICENSE.Lontium)
+$(call add-qcom-firmware, a650_zap.mbn, qcom/sm8250/a650_zap.mbn, $(FIRMWARE_PATH)/qcom/sm8250/, $(LOCAL_PATH)/LICENSE.qcom)
+$(call add-qcom-firmware, wlanmdsp.mbn, ath10k/WCN3990/hw1.0/wlanmdsp.mbn, $(FIRMWARE_PATH)/qcom/sdm845/, $(LOCAL_PATH)/ath10k/WCN3990/hw1.0/notice.txt_wlanmdsp)
+
+$(foreach f, $(ath10k_firmware_files), $(call add-qcom-firmware, $(f), ath10k/WCN3990/hw1.0/$(f), $(FIRMWARE_PATH)/ath10k/WCN3990/hw1.0/, $(LOCAL_PATH)/LICENSE.QualcommAtheros_ath10k))
+$(foreach f, $(ath11k_firmware_files), $(call add-qcom-firmware, $(f), ath11k/QCA6390/hw2.0/$(f), $(FIRMWARE_PATH)/ath11k/QCA6390/hw2.0/, $(LOCAL_PATH)/LICENSE.QualcommAtheros_ath10k))
+$(foreach f, $(qca_firmware_files), $(call add-qcom-firmware, $(f), qca/$(f), $(FIRMWARE_PATH)/qca/, $(LOCAL_PATH)/LICENSE.QualcommAtheros_ath10k))
+$(foreach f, $(qcom_firmware_files), $(call add-qcom-firmware, $(f), qcom/$(f), $(FIRMWARE_PATH)/qcom/, $(LOCAL_PATH)/LICENSE.qcom))
+$(foreach f, $(qcom_sdm845_firmware_files), $(call add-qcom-firmware, $(f), qcom/sdm845/$(f), $(FIRMWARE_PATH)/qcom/sdm845/, $(LOCAL_PATH)/LICENSE.qcom))
+$(foreach f, $(venus_sdm845_firmware_files), $(call add-qcom-firmware, $(f), qcom/venus-5.2/$(f), $(FIRMWARE_PATH)/qcom/venus-5.2/, $(LOCAL_PATH)/LICENSE.qcom))
+
+# 5.10 kernel need adsp.mdt and cdsp.mdt files
+$(call add-qcom-firmware, adsp.mdt, qcom/sdm845/adsp.mbn, $(FIRMWARE_PATH)/qcom/sdm845/, $(LOCAL_PATH)/LICENSE.qcom)
+$(call add-qcom-firmware, cdsp.mdt, qcom/sdm845/cdsp.mbn, $(FIRMWARE_PATH)/qcom/sdm845/, $(LOCAL_PATH)/LICENSE.qcom)
+
+# 5.4 kernel need a630_zap.mdt file
+$(call add-qcom-firmware, a630_zap.mdt, qcom/sdm845/a630_zap.mbn, $(FIRMWARE_PATH)/qcom/, $(LOCAL_PATH)/LICENSE.qcom)