summaryrefslogtreecommitdiffstats
path: root/bsp/meta-qcom/recipes-bsp
diff options
context:
space:
mode:
authortakeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp>2020-11-02 11:07:33 +0900
committertakeshi_hoshina <takeshi_hoshina@mail.toyota.co.jp>2020-11-02 11:07:33 +0900
commit1c7d6584a7811b7785ae5c1e378f14b5ba0971cf (patch)
treecd70a267a5ef105ba32f200aa088e281fbd85747 /bsp/meta-qcom/recipes-bsp
parent4204309872da5cb401cbb2729d9e2d4869a87f42 (diff)
recipes
Diffstat (limited to 'bsp/meta-qcom/recipes-bsp')
-rw-r--r--bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1034.2.1.bb27
-rw-r--r--bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard820c_01700.1.bb14
-rw-r--r--bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c/generate_board-2_json.sh23
-rw-r--r--bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb55
-rw-r--r--bsp/meta-qcom/recipes-bsp/wcnss-config/wcnss-config_1.13.bb32
5 files changed, 88 insertions, 63 deletions
diff --git a/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1034.2.1.bb b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1034.2.1.bb
index b65ac463..ecdbed94 100644
--- a/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1034.2.1.bb
+++ b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard410c_1034.2.1.bb
@@ -20,36 +20,25 @@ do_compile() {
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware/
+
install -d ${D}/boot
- cp -r ./proprietary-linux/* ${D}${nonarch_base_libdir}/firmware/
cp ./efs-seed/fs_image_linux.tar.gz.mbn.img ${D}/boot/modem_fsg
- MTOOLS_SKIP_CHECK=1 mcopy -i ./bootloaders-linux/NON-HLOS.bin \
- ::image/modem.* ::image/mba.mbn ::image/wcnss.* ${D}${nonarch_base_libdir}/firmware/
+ cp -r ./proprietary-linux/wlan ${D}${nonarch_base_libdir}/firmware/
- # Venus firmware have been merged in linux-firmware in a different location than
- # what we've been using for now. Let's add symlinks for now, until we switch to linux-firmware
- install -d ${D}${nonarch_base_libdir}/firmware/qcom/venus-1.8/
- for f in ${D}${nonarch_base_libdir}/firmware/venus.*; do
- f=$(basename $f)
- ln -s ${nonarch_base_libdir}/firmware/$f ${D}${nonarch_base_libdir}/firmware/qcom/venus-1.8/$f
- done
+ install -d ${D}${nonarch_base_libdir}/firmware/qcom/msm8916
+ MTOOLS_SKIP_CHECK=1 mcopy -i ./bootloaders-linux/NON-HLOS.bin \
+ ::image/modem.* ::image/mba.mbn ::image/wcnss.* ${D}${nonarch_base_libdir}/firmware/qcom/msm8916
install -d ${D}${sysconfdir}/
install -m 0644 LICENSE ${D}${sysconfdir}/QCOM-LINUX-BOARD-SUPPORT-LICENSE
}
-FILES_${PN} += "${nonarch_base_libdir}/firmware/*"
FILES_${PN} += "/boot/modem_fsg"
-INSANE_SKIP_${PN} += "arch"
-
-RPROVIDES_${PN} += "linux-firmware-qcom-adreno-a3xx"
-RREPLACES_${PN} += "linux-firmware-qcom-adreno-a3xx"
-RCONFLICTS_${PN} += "linux-firmware-qcom-adreno-a3xx"
+FILES_${PN} += "${nonarch_base_libdir}/firmware/wlan/*"
+FILES_${PN} += "${nonarch_base_libdir}/firmware/qcom/msm8916/*"
-RPROVIDES_${PN} += "linux-firmware-qcom-venus-1.8"
-RREPLACES_${PN} += "linux-firmware-qcom-venus-1.8"
-RCONFLICTS_${PN} += "linux-firmware-qcom-venus-1.8"
+INSANE_SKIP_${PN} += "arch"
RPROVIDES_${PN} += "linux-firmware-qcom-license"
RREPLACES_${PN} += "linux-firmware-qcom-license"
diff --git a/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard820c_01700.1.bb b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard820c_01700.1.bb
index dc81dcd2..952f574a 100644
--- a/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard820c_01700.1.bb
+++ b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard820c_01700.1.bb
@@ -18,11 +18,9 @@ do_compile() {
do_install() {
install -d ${D}${nonarch_base_libdir}/firmware/
- install -d ${D}${nonarch_base_libdir}/firmware/qcom/venus-4.2/
+ install -d ${D}${nonarch_base_libdir}/firmware/qcom/msm8996/
- install -m 0444 ./proprietary-linux/a530*.* ${D}${nonarch_base_libdir}/firmware/
- install -m 0444 ./proprietary-linux/venus.* ${D}${nonarch_base_libdir}/firmware/qcom/venus-4.2/
- install -m 0444 ./proprietary-linux/adsp.* ${D}${nonarch_base_libdir}/firmware/
+ install -m 0444 ./proprietary-linux/adsp*.* ${D}${nonarch_base_libdir}/firmware/qcom/msm8996/
install -d ${D}${sysconfdir}/
install -m 0644 LICENSE ${D}${sysconfdir}/QCOM-LINUX-BOARD-SUPPORT-LICENSE
@@ -31,14 +29,6 @@ do_install() {
FILES_${PN} += "${nonarch_base_libdir}/firmware/*"
INSANE_SKIP_${PN} += "arch"
-RPROVIDES_${PN} += "linux-firmware-qcom-adreno-a530"
-RREPLACES_${PN} += "linux-firmware-qcom-adreno-a530"
-RCONFLICTS_${PN} += "linux-firmware-qcom-adreno-a530"
-
-RPROVIDES_${PN} += "linux-firmware-qcom-venus-4.2"
-RREPLACES_${PN} += "linux-firmware-qcom-venus-4.2"
-RCONFLICTS_${PN} += "linux-firmware-qcom-venus-4.2"
-
RPROVIDES_${PN} += "linux-firmware-qcom-license"
RREPLACES_${PN} += "linux-firmware-qcom-license"
RCONFLICTS_${PN} += "linux-firmware-qcom-license"
diff --git a/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c/generate_board-2_json.sh b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c/generate_board-2_json.sh
new file mode 100644
index 00000000..3a1d5324
--- /dev/null
+++ b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c/generate_board-2_json.sh
@@ -0,0 +1,23 @@
+JSON="$2"
+
+iter=0
+echo "[" > "${JSON}"
+for file in $1/bdwlan.*; do
+ [[ $file == *.txt ]] && continue
+
+ iter=$((iter+1))
+ [ $iter -ne 1 ] && echo " }," >> "${JSON}"
+
+ echo " {" >> "${JSON}"
+ echo " \"data\": \"$file\"," >> "${JSON}"
+ if [[ $file == */bdwlan.bin ]]; then
+ file_ext="ff"
+ else
+ file_ext="$(printf '%x\n' "$(basename "${file}" | sed -E 's:^.*\.b?([0-9a-f]*)$:0x\1:')")"
+ fi
+ echo " \"names\": [\"bus=snoc,qmi-board-id=${file_ext}\"]" >> "${JSON}"
+done
+
+echo " }" >> "${JSON}"
+echo "]" >> "${JSON}"
+
diff --git a/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb
new file mode 100644
index 00000000..88a1a6c3
--- /dev/null
+++ b/bsp/meta-qcom/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb
@@ -0,0 +1,55 @@
+DESCRIPTION = "QCOM Firmware for DragonBoard 845c"
+
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://LICENSE.qcom.txt;md5=cbbe399f2c983ad51768f4561587f000"
+
+SRC_URI = "https://releases.linaro.org/96boards/dragonboard845c/qualcomm/firmware/RB3_firmware_${PV}.zip \
+ git://github.com/alimon/qca-swiss-army-knife \
+ file://generate_board-2_json.sh"
+SRC_URI[md5sum] = "ad69855a1275547b16d94a1b5405ac62"
+SRC_URI[sha256sum] = "4289d2f2a7124b104d0274879e702aae9b1e50c42eec3747f8584c6744ef65e3"
+SRCREV = "0c01a2abc3e9855b71f0fbea2c335011104d9ec0"
+
+COMPATIBLE_MACHINE = "(dragonboard-845c)"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+DEPENDS += "bash-native"
+inherit python3native
+
+S = "${WORKDIR}"
+
+do_compile() {
+ # Build board-2.bin needed by WiFi
+ mkdir -p bdf
+ cp ./38-bdwlan_split/bdwlan*.* bdf
+ bash generate_board-2_json.sh bdf board-2.json
+ python3 git/tools/scripts/ath10k/ath10k-bdencoder -c board-2.json -o board-2.bin
+}
+
+do_install() {
+ install -d ${D}${nonarch_base_libdir}/firmware/
+ install -d ${D}${nonarch_base_libdir}/firmware/qcom/venus-5.2/
+ install -d ${D}${nonarch_base_libdir}/firmware/qcom/sdm845
+
+ install -m 0444 ./17-USB3-201-202-FW/K2026090.mem ${D}${nonarch_base_libdir}/firmware/
+ install -m 0444 ./18-adreno-fw/a630_zap*.* ${D}${nonarch_base_libdir}/firmware/qcom/
+ install -m 0444 ./20-adsp_split/firmware/adsp*.* ${D}${nonarch_base_libdir}/firmware/qcom/sdm845
+ install -m 0444 ./21-cdsp_split/firmware/cdsp*.* ${D}${nonarch_base_libdir}/firmware/qcom/sdm845
+ install -m 0444 ./33-venus_split/venus.* ${D}${nonarch_base_libdir}/firmware/qcom/venus-5.2/
+
+ install -d ${D}${nonarch_base_libdir}/firmware/ath10k/WCN3990/hw1.0/
+ install -m 0444 ./board-2.bin ${D}${nonarch_base_libdir}/firmware/ath10k/WCN3990/hw1.0/
+
+ install -d ${D}${sysconfdir}/
+ install -m 0644 LICENSE.qcom.txt ${D}${sysconfdir}/QCOM-LINUX-BOARD-SUPPORT-LICENSE
+}
+
+FILES_${PN} += "${nonarch_base_libdir}/firmware/*"
+INSANE_SKIP_${PN} += "arch"
+
+RPROVIDES_${PN} += "linux-firmware-qcom-venus-5.2"
+RREPLACES_${PN} += "linux-firmware-qcom-venus-5.2"
+RCONFLICTS_${PN} += "linux-firmware-qcom-venus-5.2"
+
+RPROVIDES_${PN} += "linux-firmware-qcom-license"
+RREPLACES_${PN} += "linux-firmware-qcom-license"
+RCONFLICTS_${PN} += "linux-firmware-qcom-license"
diff --git a/bsp/meta-qcom/recipes-bsp/wcnss-config/wcnss-config_1.13.bb b/bsp/meta-qcom/recipes-bsp/wcnss-config/wcnss-config_1.13.bb
deleted file mode 100644
index 79711ad8..00000000
--- a/bsp/meta-qcom/recipes-bsp/wcnss-config/wcnss-config_1.13.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "WLAN and BT configuration files for QCOM WCN"
-HOMEPAGE = "https://git.linaro.org/landing-teams/working/qualcomm/wcnss-config.git"
-SECTION = "devel"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://debian/copyright;md5=9ffc7d99f148b53a339cd4374c5c431f"
-
-# TAG:debian/1.13
-SRCREV = "655a59f30915bed785d39cc90130dc06b44d7f6f"
-SRC_URI = "git://git.linaro.org/landing-teams/working/qualcomm/wcnss-config.git;branch=master;protocol=https"
-
-S = "${WORKDIR}/git"
-
-inherit systemd allarch
-
-PACKAGES =+ "wcnss-start"
-
-do_install () {
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${S}/debian/wcnss-start.service ${D}${systemd_unitdir}/system
-
- install -d ${D}${sbindir}
- install -m 0755 ${S}/wcnss-start ${D}${sbindir}
-}
-
-# They are empty, and would break dev-pkgs image feature.
-PACKAGES_remove = "${PN}-dev ${PN}-staticdev"
-
-FILES_wcnss-start = "${sbindir}/wcnss-start ${systemd_unitdir}/system/wcnss-start.service"
-
-SYSTEMD_PACKAGES = "wcnss-start"
-SYSTEMD_SERVICE_wcnss-start = "wcnss-start.service"