diff options
45 files changed, 543 insertions, 393 deletions
diff --git a/conf/machine/dragonboard-845c.conf b/conf/machine/dragonboard-845c.conf index 8391ef6..e5f0755 100644 --- a/conf/machine/dragonboard-845c.conf +++ b/conf/machine/dragonboard-845c.conf @@ -8,6 +8,7 @@ MACHINE_FEATURES = "usbhost usbgadget alsa screen wifi bluetooth ext2" KERNEL_IMAGETYPE ?= "Image.gz" KERNEL_DEVICETREE ?= "qcom/sdm845-db845c.dtb" +KERNEL_CMDLINE_EXTRA ?= "clk_ignore_unused pd_ignore_unused" SERIAL_CONSOLE ?= "115200 ttyMSM0" diff --git a/conf/machine/include/qcom-apq8016.inc b/conf/machine/include/qcom-apq8016.inc index 80e097b..a073ae7 100644 --- a/conf/machine/include/qcom-apq8016.inc +++ b/conf/machine/include/qcom-apq8016.inc @@ -9,3 +9,6 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ fastrpc \ " + +# Android boot image settings +QCOM_BOOTIMG_PAGE_SIZE = "2048" diff --git a/conf/machine/include/qcom-apq8064.inc b/conf/machine/include/qcom-apq8064.inc index 96f880c..af8e87a 100644 --- a/conf/machine/include/qcom-apq8064.inc +++ b/conf/machine/include/qcom-apq8064.inc @@ -1,3 +1,6 @@ SOC_FAMILY = "apq8064" require conf/machine/include/qcom-common.inc require conf/machine/include/tune-cortexa8.inc + +# Android boot image settings +QCOM_BOOTIMG_PAGE_SIZE = "2048" diff --git a/conf/machine/include/qcom-apq8096.inc b/conf/machine/include/qcom-apq8096.inc index 4f62b59..8038091 100644 --- a/conf/machine/include/qcom-apq8096.inc +++ b/conf/machine/include/qcom-apq8096.inc @@ -10,6 +10,3 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ fastrpc \ " - -# Android boot image settings -QCOM_BOOTIMG_PAGE_SIZE = "4096" diff --git a/conf/machine/include/qcom-common.inc b/conf/machine/include/qcom-common.inc index 272ab6a..fd86574 100644 --- a/conf/machine/include/qcom-common.inc +++ b/conf/machine/include/qcom-common.inc @@ -22,10 +22,12 @@ PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa" PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg" PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-qcomlt" +PREFERRED_PROVIDER_android-tools-conf = "android-tools-conf-configfs" + # Fastboot expects an ext4 image, which needs to be 4096 aligned IMAGE_FSTYPES ?= "ext4.gz" IMAGE_ROOTFS_ALIGNMENT ?= "4096" # Android boot image settings QCOM_BOOTIMG_KERNEL_BASE ?= "0x80000000" -QCOM_BOOTIMG_PAGE_SIZE ?= "2048" +QCOM_BOOTIMG_PAGE_SIZE ?= "4096" diff --git a/conf/machine/include/qcom-qcs404.inc b/conf/machine/include/qcom-qcs404.inc index eacc03c..90f9acb 100644 --- a/conf/machine/include/qcom-qcs404.inc +++ b/conf/machine/include/qcom-qcs404.inc @@ -5,6 +5,3 @@ require conf/machine/include/arm/arch-armv8a.inc MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ qrtr \ " - -# Android boot image settings -QCOM_BOOTIMG_PAGE_SIZE = "4096" diff --git a/conf/machine/include/qcom-sdm845.inc b/conf/machine/include/qcom-sdm845.inc index da6ff9f..d197ca6 100644 --- a/conf/machine/include/qcom-sdm845.inc +++ b/conf/machine/include/qcom-sdm845.inc @@ -13,6 +13,3 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ fastrpc \ " - -# Android boot image settings -QCOM_BOOTIMG_PAGE_SIZE = "4096" diff --git a/conf/machine/include/qcom-sm8250.inc b/conf/machine/include/qcom-sm8250.inc index fbdd7cb..c557147 100644 --- a/conf/machine/include/qcom-sm8250.inc +++ b/conf/machine/include/qcom-sm8250.inc @@ -13,6 +13,3 @@ MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ MACHINE_EXTRA_RRECOMMENDS += " \ fastrpc \ " - -# Android boot image settings -QCOM_BOOTIMG_PAGE_SIZE ?= "4096" diff --git a/conf/machine/qcom-armv8a.conf b/conf/machine/qcom-armv8a.conf new file mode 100644 index 0000000..c171c27 --- /dev/null +++ b/conf/machine/qcom-armv8a.conf @@ -0,0 +1,49 @@ +require conf/machine/include/qcom-common.inc +require conf/machine/include/arm/arch-armv8a.inc + +MACHINE_FEATURES = "usbhost usbgadget alsa screen wifi bluetooth ext2" + +# UFS partitions in 820/845/RB5 setup with 4096 logical sector size +EXTRA_IMAGECMD_ext4 += " -b 4096 " + +# Support for dragonboard{410, 820, 845}c, rb5 +KERNEL_IMAGETYPE ?= "Image.gz" +SERIAL_CONSOLE ?= "115200 ttyMSM0" +KERNEL_DEVICETREE ?= "qcom/apq8016-sbc.dtb qcom/apq8096-db820c.dtb qcom/sdm845-db845c.dtb qcom/qrb5165-rb5.dtb qcom/sm8250-rb5-dvt.dtb" + +QCOM_BOOTIMG_PAGE_SIZE[apq8016-sbc] = "2048" +QCOM_BOOTIMG_ROOTFS = "/dev/sda1" +QCOM_BOOTIMG_ROOTFS[apq8016-sbc] = "/dev/mmcblk0p14" +QCOM_BOOTIMG_ROOTFS[qrb5165-rb5] = "PARTLABEL=userdata" +QCOM_BOOTIMG_ROOTFS[sm8250-rb5-dvt] = "PARTLABEL=userdata" +SD_QCOM_BOOTIMG_ROOTFS[apq8016-sbc] = "/dev/mmcblk1p7" +KERNEL_CMDLINE_EXTRA[sdm845-db845c] = "clk_ignore_unused pd_ignore_unused" + +# Userspace tools +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ + pd-mapper \ + qrtr \ + rmtfs \ + tqftpserv \ +" + +MACHINE_EXTRA_RRECOMMENDS += " \ + fastrpc \ +" + +# Modules and firmware for all supported machines +MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ + kernel-modules \ + firmware-qcom-dragonboard410c \ + firmware-qcom-dragonboard820c \ + firmware-qcom-dragonboard845c \ + firmware-qcom-rb5 \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'linux-firmware-ath10k linux-firmware-ath11k linux-firmware-qcom-sdm845-modem wireless-regdb-static', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'linux-firmware-qca linux-firmware-qcom-sdm845-modem', '', d)} \ + linux-firmware-qcom-sdm845-audio \ + linux-firmware-qcom-sdm845-compute \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'linux-firmware-qcom-adreno-a3xx linux-firmware-qcom-adreno-a530 linux-firmware-qcom-adreno-a630', '', d)} \ + linux-firmware-qcom-venus-1.8 \ + linux-firmware-qcom-venus-4.2 \ + linux-firmware-qcom-venus-5.2 \ +" diff --git a/conf/machine/qrb5165-rb5.conf b/conf/machine/qrb5165-rb5.conf index 8a0e11a..a15690a 100644 --- a/conf/machine/qrb5165-rb5.conf +++ b/conf/machine/qrb5165-rb5.conf @@ -7,14 +7,16 @@ require conf/machine/include/qcom-sm8250.inc MACHINE_FEATURES = "usbhost usbgadget alsa screen wifi bluetooth ext2" KERNEL_IMAGETYPE ?= "Image.gz" -KERNEL_DEVICETREE ?= "qcom/qrb5165-rb5.dtb" +KERNEL_DEVICETREE ?= "qcom/qrb5165-rb5.dtb qcom/sm8250-rb5-dvt.dtb" +KERNEL_CMDLINE_EXTRA ?= "pcie_pme=nomsi" SERIAL_CONSOLE ?= "115200 ttyMSM0" MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += " \ kernel-modules \ firmware-qcom-rb5 linux-firmware-lt9611uxc \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'linux-firmware-ath11k', '', d)} \ + lt9611uxc-upgrade \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'linux-firmware-ath11k wireless-regdb-static', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'linux-firmware-qca', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-msm', '', d)} \ " diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/android-tools/android-tools-conf-configfs/qcom/android-gadget-setup.machine b/dynamic-layers/openembedded-layer/recipes-devtools/android-tools/android-tools-conf-configfs/qcom/android-gadget-setup.machine new file mode 100644 index 0000000..37f26bb --- /dev/null +++ b/dynamic-layers/openembedded-layer/recipes-devtools/android-tools/android-tools-conf-configfs/qcom/android-gadget-setup.machine @@ -0,0 +1,4 @@ +manufacturer=Qualcomm +model=`hostname` +androidserial="$(sed -n -e '/androidboot.serialno/ s/.*androidboot.serialno=\([^ ]*\).*/\1/gp ' /proc/cmdline)" +[ -n "$androidserial" ] && serial="$androidserial" diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/android-tools/android-tools-conf-configfs_%.bbappend b/dynamic-layers/openembedded-layer/recipes-devtools/android-tools/android-tools-conf-configfs_%.bbappend new file mode 100644 index 0000000..1e314d8 --- /dev/null +++ b/dynamic-layers/openembedded-layer/recipes-devtools/android-tools/android-tools-conf-configfs_%.bbappend @@ -0,0 +1,5 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:" + +SRC_URI_append_qcom = " \ + file://android-gadget-setup.machine \ +" diff --git a/recipes-bsp/firmware/files/lib-firmware-modem.service b/recipes-bsp/firmware/files/lib-firmware-modem.service deleted file mode 100644 index 9962a0d..0000000 --- a/recipes-bsp/firmware/files/lib-firmware-modem.service +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=Mount partition with preflashed firmware ('modem_a') -ConditionPathExists=/lib/firmware/modem -Before=systemd-udevd-control.socket -After=local-fs-pre.target -Before=local-fs.target -Before=umount.target -Conflicts=umount.target -DefaultDependencies=no - -[Install] -WantedBy=local-fs.target - -[Service] -Type=oneshot -RemainAfterExit=true -# sde4 = modem_a -ExecStart=mount -t vfat -o ro /dev/sde4 /lib/firmware/modem -ExecStop=umount /lib/firmware/modem diff --git a/recipes-bsp/firmware/files/lib-firmware-system.service b/recipes-bsp/firmware/files/lib-firmware-system.service deleted file mode 100644 index c4b4e2a..0000000 --- a/recipes-bsp/firmware/files/lib-firmware-system.service +++ /dev/null @@ -1,21 +0,0 @@ -[Unit] -Description=Mount partition with system root for for firmware files ('system_a') -ConditionPathExists=/lib/firmware/system -Before=systemd-udevd-control.socket -After=local-fs-pre.target -Before=local-fs.target -Before=umount.target -Conflicts=umount.target -DefaultDependencies=no - -[Install] -WantedBy=local-fs.target - -[Service] -Type=oneshot -RemainAfterExit=true -# sda7: -# - system_b with older partition scheme -# - single system with newer partition cheme -ExecStart=mount -t ext4 -o ro /dev/sda7 /lib/firmware/system -ExecStop=umount /lib/firmware/system diff --git a/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb b/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb index 994ff6d..dd03753 100644 --- a/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb +++ b/recipes-bsp/firmware/firmware-qcom-dragonboard845c_20190529180356-v4.bb @@ -3,22 +3,17 @@ 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 \ - file://generate_board-2_json.sh" +SRC_URI = "https://releases.linaro.org/96boards/dragonboard845c/qualcomm/firmware/RB3_firmware_${PV}.zip;subdir=${BP}" SRC_URI[md5sum] = "ad69855a1275547b16d94a1b5405ac62" SRC_URI[sha256sum] = "4289d2f2a7124b104d0274879e702aae9b1e50c42eec3747f8584c6744ef65e3" PACKAGE_ARCH = "${MACHINE_ARCH}" -DEPENDS += "bash-native qca-swiss-army-knife-native" +DEPENDS += "qca-swiss-army-knife-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 + ath10k-generate-board-2_json.sh ./38-bdwlan_split board-2.json python3 "${STAGING_BINDIR_NATIVE}/ath10k-bdencoder" -c board-2.json -o board-2.bin } @@ -26,7 +21,7 @@ do_install() { install -d ${D}${nonarch_base_libdir}/firmware/ 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 ./17-USB3-201-202-FW/K2026090.mem ${D}${nonarch_base_libdir}/firmware/renesas_usb_fw.mem 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 diff --git a/recipes-bsp/firmware/firmware-qcom-rb5_1.0.bb b/recipes-bsp/firmware/firmware-qcom-rb5_1.0.bb deleted file mode 100644 index 6201bf0..0000000 --- a/recipes-bsp/firmware/firmware-qcom-rb5_1.0.bb +++ /dev/null @@ -1,116 +0,0 @@ -# Provide base URI of NHLOS_Binaries.zip and adreno_1.0_qrb5165_rb5.tar.gz -# files. Use "file://" if those files are copied into -# recipes-bsp/firmware/files/ directory. -# NHLOS_URI ?= "file://" -# ADRENO_URI ?= "file://" - -DESCRIPTION = "QCOM Firmware for Qualcomm Robotics RB5 platform" - -LICENSE = "Proprietary" - -# There is no license file in the archive -#LIC_FILES_CHKSUM = "file://license.txt;md5=" -ERROR_QA_remove = "license-checksum" - -NHLOS_ARCHIVE = "NHLOS_Binaries.zip" -ADRENO_ARCHIVE = "adreno_1.0_qrb5165_rb5.tar.gz" - -SRC_URI_NHLOS = "${NHLOS_URI}${NHLOS_ARCHIVE}" -SRC_URI_ADRENO = "${ADRENO_URI}${ADRENO_ARCHIVE};unpack=0" - -PACKAGE_ARCH = "${MACHINE_ARCH}" - -# do_unpack is written in Python, so let's use do_compile here -do_compile() { - if [ -r ${WORKDIR}/${ADRENO_ARCHIVE} ] ; then - tar xzf ${WORKDIR}/${ADRENO_ARCHIVE} .//lib/firmware - fi -} - -do_install() { - if [ -n "${ADRENO_URI}" ] ; then - install -d ${D}${nonarch_base_libdir}/firmware/qcom - install -m 0444 ./lib/firmware/a650_*.* ${D}${nonarch_base_libdir}/firmware/qcom - else - install -d ${D}${nonarch_base_libdir}/firmware/qcom - install -d ${D}${nonarch_base_libdir}/firmware/system - - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/lib-firmware-system.service ${D}${systemd_system_unitdir} - - # Symlink firmware to proper paths. - for img in a650_gmu.bin a650_sqe.fw a650_zap.mdt a650_zap.elf a650_zap.b00 a650_zap.b01 a650_zap.b02 - do - ln -s ../system/lib/firmware/${img} ${D}${nonarch_base_libdir}/firmware/qcom - done - fi - - if [ -n "${NHLOS_URI}" ] ; then - cd ${WORKDIR}/NHLOS_Binaries - install -d ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - install -m 0444 adsp.b* adsp.mdt adspr.jsn adspua.jsn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - install -m 0444 cdsp.b* cdsp.mdt cdspr.jsn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - install -m 0444 slpi.b* slpi.mdt ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - install -m 0444 venus.b* venus.mdt ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - - install -d ${D}${nonarch_base_libdir}/firmware/ath11k/QCA6390/hw2.0/ - install -m 0444 bdwlan.e04 ${D}${nonarch_base_libdir}/firmware/ath11k/QCA6390/hw2.0/board.bin - - install -m 0444 verinfo/Ver_Info.txt ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - cd .. - else - install -d ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - install -d ${D}${nonarch_base_libdir}/firmware/modem - - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${WORKDIR}/lib-firmware-modem.service ${D}${systemd_system_unitdir} - - # Unfortunately Qualcomm firmware partition uses different layout there, so we have to symlink firmware to proper paths. - # Bettere be safe than sorry. Install more links that are actually present there in case firmware is changed. - for base in adsp cdsp slpi venus - do - for idx in $(seq 0 20) - do - ln -s ../../modem/image/$base.b`printf %02d $idx` ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - done - ln -s ../../modem/image/${base}.mdt ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - done - for img in adspr adspua cdspr - do - ln -s ../../modem/image/${img}.jsn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 - done - - install -d ${D}${nonarch_base_libdir}/firmware/ath11k/QCA6390/hw2.0/ - ln -s ../../../modem/image/bdwlan.e04 ${D}${nonarch_base_libdir}/firmware/ath11k/QCA6390/hw2.0/board.bin - fi -} - -inherit systemd - -FILES_${PN} += "${nonarch_base_libdir}/firmware/" -INSANE_SKIP_${PN} += "arch" -INHIBIT_PACKAGE_DEBUG_SPLIT = "1" -INHIBIT_PACKAGE_STRIP = "1" -INHIBIT_DEFAULT_DEPS = "1" - -# We list firmware-qcom-rb5 in RRECOMMENDS, so we can not skip the recipe here -# If firmware files are not provided, do not download/package anything -python () { - if d.getVar("NHLOS_URI") == "" and d.getVar("ADRENO_URI") == "": - bb.warn("Not packaging RB5 firmware. Please update HNLOS_URI and ADRENO_URI") - - uri = d.getVar("NHLOS_URI") - if uri != None and uri != "": - d.appendVar("SRC_URI", " ${SRC_URI_NHLOS}") - d.appendVarFlag('do_unpack', 'depends', ' unzip-native:do_populate_sysroot') - else: - d.appendVar("SRC_URI", " file://lib-firmware-modem.service") - d.appendVar("SYSTEMD_SERVICE_" + d.getVar("PN"), " lib-firmware-modem.service") - - uri = d.getVar("ADRENO_URI") - if uri != None and uri != "": - d.appendVar("SRC_URI", " ${SRC_URI_ADRENO}") - else: - d.appendVar("SRC_URI", " file://lib-firmware-system.service") - d.appendVar("SYSTEMD_SERVICE_" + d.getVar("PN"), " lib-firmware-system.service") -} diff --git a/recipes-bsp/firmware/firmware-qcom-rb5_20210118133815-v2.bb b/recipes-bsp/firmware/firmware-qcom-rb5_20210118133815-v2.bb new file mode 100644 index 0000000..da3f19b --- /dev/null +++ b/recipes-bsp/firmware/firmware-qcom-rb5_20210118133815-v2.bb @@ -0,0 +1,71 @@ +# Provide base URI of NHLOS_Binaries.zip and adreno_1.0_qrb5165_rb5.tar.gz +# files. Use "file://" if those files are copied into +# recipes-bsp/firmware/files/ directory. +# NHLOS_URI ?= "file://" +# ADRENO_URI ?= "file://" + +DESCRIPTION = "QCOM Firmware for Qualcomm Robotics RB5 platform" + +LICENSE = "Proprietary" +LIC_FILES_CHKSUM = "file://LICENSE.qcom.txt;md5=cbbe399f2c983ad51768f4561587f000" + +SRC_URI = " \ + http://releases.linaro.org/96boards/rb5/qualcomm/firmware/RB5_firmware_${PV}.zip;subdir=${BP} \ +" +SRC_URI[md5sum] = "d9289f59fe4f93ce433707294c9286ca" +SRC_URI[sha256sum] = "9d7b42916d83c8f721258175b8d7a9ed758ebe02228d36099e6ea1a2b2a556d3" + +DEPENDS += "qca-swiss-army-knife-native" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +VENUS_FW = "vpu-1.0" + +do_compile() { + # Build board-2.bin needed by WiFi + ath11k-generate-board-2_json.sh ./38-bdwlan_split board-2.json + python3 "${STAGING_BINDIR_NATIVE}/ath10k-bdencoder" -m ath11k -c board-2.json -o board-2.bin +} + +do_install() { + install -d ${D}${nonarch_base_libdir}/firmware/qcom/sm8250 + + install -m 0444 ./18-adreno-fw/a650_gmu.bin ${D}${nonarch_base_libdir}/firmware/qcom + install -m 0444 ./18-adreno-fw/a650_sqe.fw ${D}${nonarch_base_libdir}/firmware/qcom + install -m 0444 ./18-adreno-fw/a650_zap.elf ${D}${nonarch_base_libdir}/firmware/qcom/sm8250/a650_zap.mbn + + install -m 0444 ./20-adsp_split/adsp.mbn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250/ + install -m 0444 ./21-cdsp_split/cdsp.mbn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250/ + install -m 0444 ./30-slpi_split/slpi.mbn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250/ + + install -m 0444 ./39-jsn/*.jsn ${D}${nonarch_base_libdir}/firmware/qcom/sm8250/ + + install -d ${D}${nonarch_base_libdir}/firmware/qcom/${VENUS_FW} + install -m 0444 ./33-venus_split/venus.b* ./33-venus_split/venus.mdt ${D}${nonarch_base_libdir}/firmware/qcom/${VENUS_FW} + + install -d ${D}${nonarch_base_libdir}/firmware/ath11k/QCA6390/hw2.0/ + install -m 0444 ${S}/board-2.bin ${D}${nonarch_base_libdir}/firmware/ath11k/QCA6390/hw2.0/board-2.bin + + install -d ${D}${sysconfdir}/ + install -m 0644 LICENSE.qcom.txt ${D}${sysconfdir}/QCOM-LINUX-BOARD-SUPPORT-LICENSE-${PN} +} + +FILES_${PN} += "${nonarch_base_libdir}/firmware/" +INSANE_SKIP_${PN} += "arch" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_DEFAULT_DEPS = "1" + +RPROVIDES_${PN} += "linux-firmware-qcom-adreno-a650" +RREPLACES_${PN} += "linux-firmware-qcom-adreno-a650" +RCONFLICTS_${PN} += "linux-firmware-qcom-adreno-a650" + +RPROVIDES_${PN} += "linux-firmware-qcom-${VENUS_FW}" +RREPLACES_${PN} += "linux-firmware-qcom-${VENUS_FW}" +RCONFLICTS_${PN} += "linux-firmware-qcom-${VENUS_FW}" + +inherit update-alternatives + +ALTERNATIVE_${PN} = "qca6390-board2" +ALTERNATIVE_LINK_NAME[qca6390-board2] = "/lib/firmware/ath11k/QCA6390/hw2.0/board-2.bin" +ALTERNATIVE_PRIORITY = "100" diff --git a/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade.bb b/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade.bb new file mode 100644 index 0000000..e6ae271 --- /dev/null +++ b/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade.bb @@ -0,0 +1,19 @@ +SUMMARY = "Upgrade Lontium LT9611UXC firmware to the latest image" + +SRC_URI = "file://lt9611uxc.service file://lt9611uxc-upgrade.sh" +LICENSE = "MIT" + +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" + +inherit systemd + +RDEPENDS_${PN} += "linux-firmware-lt9611uxc" + +do_install() { + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/lt9611uxc-upgrade.sh ${D}${bindir} + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/lt9611uxc.service ${D}${systemd_system_unitdir} +} + +SYSTEMD_SERVICE_${PN} = "lt9611uxc.service" diff --git a/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade/lt9611uxc-upgrade.sh b/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade/lt9611uxc-upgrade.sh new file mode 100644 index 0000000..0886980 --- /dev/null +++ b/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade/lt9611uxc-upgrade.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +set -e + +if [ ! -r /lib/firmware/lt9611uxc_fw.bin ] ; then + echo "LT9611UXC firmware not found" + exit 1 +fi + +if [ ! -d /sys/bus/i2c/drivers/lt9611uxc ] ; then + modprobe lontium-lt9611uxc + sleep 1 +fi + +for f in /sys/bus/i2c/drivers/lt9611uxc/* ; do + [ -L $f ] || continue + version=`cat $f/lt9611uxc_firmware` + if [ "$version" -lt "43" ] ; then + echo > $f/lt9611uxc_firmware + fi +done diff --git a/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade/lt9611uxc.service b/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade/lt9611uxc.service new file mode 100644 index 0000000..c55e8ff --- /dev/null +++ b/recipes-bsp/lt9611uxc-upgrade/lt9611uxc-upgrade/lt9611uxc.service @@ -0,0 +1,11 @@ +[Unit] +Description=Update LT9611UXC Firmware +ConditionOnFirstBoot=true +After=systemd-udev-settle.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/lt9611uxc-upgrade.sh + +[Install] +WantedBy=getty.target diff --git a/recipes-bsp/firmware/firmware-qcom-dragonboard845c/generate_board-2_json.sh b/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife/ath10k-generate-board-2_json.sh index 3a1d532..373689f 100644 --- a/recipes-bsp/firmware/firmware-qcom-dragonboard845c/generate_board-2_json.sh +++ b/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife/ath10k-generate-board-2_json.sh @@ -1,20 +1,27 @@ +#!/bin/sh + JSON="$2" iter=0 echo "[" > "${JSON}" for file in $1/bdwlan.*; do - [[ $file == *.txt ]] && continue + case `basename "${file}"` in + *.txt) + continue + ;; + bdwlan.bin) + file_ext="ff" + ;; + bdwlan.*) + file_ext="$(basename "${file}" | sed -E 's:^.*\.b?0*([0-9a-f]+)$:\1:')" + ;; + esac 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 diff --git a/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife/ath11k-generate-board-2_json.sh b/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife/ath11k-generate-board-2_json.sh new file mode 100644 index 0000000..0e3cc10 --- /dev/null +++ b/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife/ath11k-generate-board-2_json.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +JSON="$2" + +iter=0 +echo "[" > "${JSON}" +for file in $1/bdwlan.elf $1/bdwlan.e* ; do + iter=$((iter+1)) + [ $iter -ne 1 ] && echo " }," >> "${JSON}" + + echo " {" >> "${JSON}" + echo " \"data\": \"$file\"," >> "${JSON}" + if [ `basename $file` = "bdwlan.elf" ]; then + file_ext="255" + else + file_ext="$(( $(basename "${file}" | sed -E 's:^.*\.e?([0-9a-f]*)$:0x\1:') ))" + fi + echo " \"names\": [\"bus=pci,qmi-chip-id=0,qmi-board-id=${file_ext}\"]" >> "${JSON}" +done + +echo " }" >> "${JSON}" +echo "]" >> "${JSON}" + diff --git a/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife_git.bb b/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife_git.bb index e3c6dca..6a31f7a 100644 --- a/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife_git.bb +++ b/recipes-devtools/qca-swiss-army-knife/qca-swiss-army-knife_git.bb @@ -13,6 +13,8 @@ SRC_URI = " \ file://0001-read-powers-port-to-python3.patch \ file://0002-ath10k-fwencoder-port-to-python3.patch \ file://0003-scripts-port-to-python3.patch \ + file://ath10k-generate-board-2_json.sh \ + file://ath11k-generate-board-2_json.sh \ " PV = "0.0+${SRCPV}" @@ -21,6 +23,8 @@ S = "${WORKDIR}/git" do_install () { install -d ${D}/${bindir} install -m 0755 tools/scripts/*/* ${D}/${bindir} + install -m 0755 ${WORKDIR}/ath10k-generate-board-2_json.sh ${D}/${bindir} + install -m 0755 ${WORKDIR}/ath11k-generate-board-2_json.sh ${D}/${bindir} } BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch b/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch index 446f5ee..873cafc 100644 --- a/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch +++ b/recipes-graphics/mesa/files/0001-meson.build-check-for-all-linux-host_os-combinations.patch @@ -1,7 +1,7 @@ -From ca1043af699f23ffe33a9f44a40f6714b925008f Mon Sep 17 00:00:00 2001 +From aae6b7833f86c3504c0c4f880da503164e25ba4a Mon Sep 17 00:00:00 2001 From: Alistair Francis <alistair@alistair23.me> Date: Thu, 14 Nov 2019 13:04:49 -0800 -Subject: [PATCH] meson.build: check for all linux host_os combinations +Subject: [PATCH 1/5] meson.build: check for all linux host_os combinations Make sure that we are also looking for our host_os combinations like linux-musl etc. when assuming support for DRM/KMS. @@ -14,13 +14,12 @@ Signed-off-by: Anuj Mittal <anuj.mittal@intel.com> Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Alistair Francis <alistair@alistair23.me> - --- meson.build | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build -index e26ba52ba70..08a4793b63e 100644 +index 932eb136681..efc61711f4d 100644 --- a/meson.build +++ b/meson.build @@ -153,7 +153,7 @@ with_any_opengl = with_opengl or with_gles1 or with_gles2 @@ -36,8 +35,11 @@ index e26ba52ba70..08a4793b63e 100644 endif # TODO: this is very incomplete --if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd'].contains(host_machine.system()) -+if ['cygwin', 'gnu', 'gnu/kfreebsd'].contains(host_machine.system()) or host_machine.system().startswith('linux') +-if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) ++if ['linux', 'cygwin', 'gnu', 'freebsd', 'gnu/kfreebsd', 'haiku'].contains(host_machine.system()) or host_machine.system().startswith('linux') pre_args += '-D_GNU_SOURCE' elif host_machine.system() == 'sunos' pre_args += '-D__EXTENSIONS__' +-- +2.30.0 + diff --git a/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch b/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch index 8709da3..80fd1ff 100644 --- a/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch +++ b/recipes-graphics/mesa/files/0002-meson.build-make-TLS-ELF-optional.patch @@ -1,4 +1,4 @@ -From 86ba53b592aca0dd7928f7fe5d706db385fcf6cf Mon Sep 17 00:00:00 2001 +From 3758cfb761ee0981ea8278f1c3f2f8633234d317 Mon Sep 17 00:00:00 2001 From: Alistair Francis <alistair@alistair23.me> Date: Wed, 2 Sep 2020 15:28:50 -0500 Subject: [PATCH] meson.build: make TLS ELF optional @@ -8,30 +8,29 @@ TLS GLX optional again" patch updated to the latest mesa. Upstream-Status: Inappropriate [configuration] Signed-off-by: Alistair Francis <alistair@alistair23.me> - --- meson.build | 2 +- meson_options.txt | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index 08a4793b63e..70962fbb3f4 100644 +index efc61711f4d..bda122b6465 100644 --- a/meson.build +++ b/meson.build -@@ -450,7 +450,7 @@ endif +@@ -448,7 +448,7 @@ endif # Android uses emutls for versions <= P/28. For USE_ELF_TLS we need ELF TLS. use_elf_tls = false --if not ['windows', 'freebsd', 'openbsd'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) +-if not ['windows', 'freebsd', 'openbsd', 'haiku'].contains(host_machine.system()) and (not with_platform_android or get_option('platform-sdk-version') >= 29) +if (not with_platform_android or get_option('platform-sdk-version') >= 29) and get_option('elf-tls') pre_args += '-DUSE_ELF_TLS' use_elf_tls = true endif diff --git a/meson_options.txt b/meson_options.txt -index 6810602ead9..057e3bebe32 100644 +index fc73f6e1c24..d7482c0ab84 100644 --- a/meson_options.txt +++ b/meson_options.txt -@@ -414,6 +414,12 @@ option( +@@ -420,6 +420,12 @@ option( value : true, description : 'Enable direct rendering in GLX and EGL for DRI', ) @@ -44,3 +43,6 @@ index 6810602ead9..057e3bebe32 100644 option( 'prefer-iris', type : 'boolean', +-- +2.30.0 + diff --git a/recipes-graphics/mesa/files/fix-meson-config-compat.patch b/recipes-graphics/mesa/files/fix-meson-config-compat.patch deleted file mode 100644 index f22f8aa..0000000 --- a/recipes-graphics/mesa/files/fix-meson-config-compat.patch +++ /dev/null @@ -1,49 +0,0 @@ -From f0794ab48d95d570077ece0f01c4ea5d15fc8e62 Mon Sep 17 00:00:00 2001 -From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> -Date: Wed, 2 Sep 2020 15:37:55 -0500 -Subject: [PATCH] mesa: adapt meson script to restore compatibility with - - release one - -During this development cycle meson script was changed to stop accepting -empty values. This causes issues using some build options from OE-core's -mesa.inc. Restore this compatibility by patching in support for empty -values. - -Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> - ---- - meson_options.txt | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/meson_options.txt b/meson_options.txt -index eb8eaa84b08..77c1494ec95 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -51,7 +51,7 @@ option( - 'dri-drivers', - type : 'array', - value : ['auto'], -- choices : ['auto', 'i915', 'i965', 'r100', 'r200', 'nouveau', 'swrast'], -+ choices : ['', 'auto', 'i915', 'i965', 'r100', 'r200', 'nouveau', 'swrast'], - description : 'List of dri drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' - ) - option( -@@ -71,7 +71,7 @@ option( - type : 'array', - value : ['auto'], - choices : [ -- 'auto', 'kmsro', 'radeonsi', 'r300', 'r600', 'nouveau', 'freedreno', -+ '', 'auto', 'kmsro', 'radeonsi', 'r300', 'r600', 'nouveau', 'freedreno', - 'swrast', 'v3d', 'vc4', 'etnaviv', 'tegra', 'i915', 'svga', 'virgl', - 'swr', 'panfrost', 'iris', 'lima', 'zink', 'd3d12' - ], -@@ -184,7 +184,7 @@ option( - 'vulkan-drivers', - type : 'array', - value : ['auto'], -- choices : ['auto', 'amd', 'broadcom', 'freedreno', 'intel', 'swrast'], -+ choices : ['', 'auto', 'amd', 'broadcom', 'freedreno', 'intel', 'swrast'], - description : 'List of vulkan drivers to build. If this is set to auto all drivers applicable to the target OS/architecture will be built' - ) - option( diff --git a/recipes-graphics/mesa/mesa_20.3.0-rc2.bb b/recipes-graphics/mesa/mesa_20.3.0-rc2.bb deleted file mode 100644 index 188dd63..0000000 --- a/recipes-graphics/mesa/mesa_20.3.0-rc2.bb +++ /dev/null @@ -1,14 +0,0 @@ -require recipes-graphics/mesa/mesa.inc - -FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-graphics/mesa/files:" - -SRC_URI[sha256sum] = "671bfc98724ca04ccda3255d9aa7fe3c730b10477446983a708305d00e9f5b5b" - -SRC_URI_remove = " \ - file://0001-meson-Add-xcb-fixes-to-loader-when-using-x11-and-dri.patch \ - file://0005-vc4-use-intmax_t-for-formatted-output-of-timespec-me.patch \ -" - -# Do not select this version by default -DEFAULT_PREFERENCE = "-1" -DEFAULT_PREFERENCE_sm8250 = "1" diff --git a/recipes-graphics/mesa/mesa_git.bb b/recipes-graphics/mesa/mesa_git.bb index bd737a5..871d560 100644 --- a/recipes-graphics/mesa/mesa_git.bb +++ b/recipes-graphics/mesa/mesa_git.bb @@ -6,11 +6,10 @@ SRC_URI = "git://gitlab.freedesktop.org/mesa/mesa.git;protocol=https \ file://0003-Allow-enable-DRI-without-DRI-drivers.patch \ file://0004-Revert-mesa-Enable-asm-unconditionally-now-that-gen_.patch \ file://0001-meson-misdetects-64bit-atomics-on-mips-clang.patch \ - file://fix-meson-config-compat.patch \ " LIC_FILES_CHKSUM = "file://docs/license.rst;md5=9aa1bc48c9826ad9fdb16661f6930496" -SRCREV = "533f6debb17b02ee9f92f51c19a2da9c0700bca1" +SRCREV = "13f92183c7dbff9d76a83656862d0b2c2536e25d" #SRCREV_sm8250 = "${AUTOREV}" PLATFORMS_remove = "drm surfaceless" @@ -28,8 +27,8 @@ FILES_${PN}-ci = "${bindir}/deqp-runner.sh ${datadir}/mesa/deqp-*" do_install_append () { install -d ${D}/${datadir}/mesa - install -m 0644 ${S}/.gitlab-ci/deqp-default-skips.txt ${D}/${datadir}/mesa/ - for f in ${S}/.gitlab-ci/deqp-freedreno-*; do + install -m 0644 ${S}/ci-expects/default/deqp-default-skips.txt ${D}/${datadir}/mesa/ + for f in ${S}/ci-expects/freedreno/deqp-freedreno-*; do install -m 0644 $f ${D}/${datadir}/mesa/ done diff --git a/recipes-kernel/linux-firmware/linux-firmware_%.bbappend b/recipes-kernel/linux-firmware/linux-firmware_%.bbappend new file mode 100644 index 0000000..3679a64 --- /dev/null +++ b/recipes-kernel/linux-firmware/linux-firmware_%.bbappend @@ -0,0 +1,4 @@ +inherit update-alternatives + +ALTERNATIVE_${PN}-ath11k = "qca6390-board2" +ALTERNATIVE_LINK_NAME[qca6390-board2] = "/lib/firmware/ath11k/QCA6390/hw2.0/board-2.bin" diff --git a/recipes-kernel/linux/linux-linaro-qcom.inc b/recipes-kernel/linux/linux-linaro-qcom.inc index f1d5795..4e78597 100644 --- a/recipes-kernel/linux/linux-linaro-qcom.inc +++ b/recipes-kernel/linux/linux-linaro-qcom.inc @@ -81,13 +81,3 @@ do_configure_prepend() { yes '' | oe_runmake -C ${S} O=${B} oldconfig oe_runmake -C ${S} O=${B} savedefconfig && cp ${B}/defconfig ${WORKDIR}/defconfig.saved } - -# append DTB -do_compile_append() { - if ! [ -e ${B}/arch/${ARCH}/boot/dts/${KERNEL_DEVICETREE} ] ; then - oe_runmake ${KERNEL_DEVICETREE} - fi - cp arch/${ARCH}/boot/${KERNEL_IMAGETYPE} arch/${ARCH}/boot/${KERNEL_IMAGETYPE}.backup - cat arch/${ARCH}/boot/${KERNEL_IMAGETYPE}.backup arch/${ARCH}/boot/dts/${KERNEL_DEVICETREE} > arch/${ARCH}/boot/${KERNEL_IMAGETYPE} - rm -f arch/${ARCH}/boot/${KERNEL_IMAGETYPE}.backup -} diff --git a/recipes-kernel/linux/linux-linaro-qcomlt_5.10.bb b/recipes-kernel/linux/linux-linaro-qcomlt_5.10.bb index 6c66d8e..01a4502 100644 --- a/recipes-kernel/linux/linux-linaro-qcomlt_5.10.bb +++ b/recipes-kernel/linux/linux-linaro-qcomlt_5.10.bb @@ -9,7 +9,7 @@ require recipes-kernel/linux/linux-qcom-bootimg.inc LOCALVERSION ?= "-linaro-lt-qcom" -SRCBRANCH = "release/rb5/qcomlt-5.10" -SRCREV = "59db0bbc0b0399254e4a1a08566bed91b0bdc45a" +SRCBRANCH = "release/qcomlt-5.10" +SRCREV = "9ab492e76768cd1bd9f2da52004ed537c8b329f3" -COMPATIBLE_MACHINE = "(sm8250)" +COMPATIBLE_MACHINE = "(qcom)" diff --git a/recipes-kernel/linux/linux-linaro-qcomlt_5.11.bb b/recipes-kernel/linux/linux-linaro-qcomlt_5.11.bb new file mode 100644 index 0000000..9ff0647 --- /dev/null +++ b/recipes-kernel/linux/linux-linaro-qcomlt_5.11.bb @@ -0,0 +1,15 @@ +# Copyright (C) 2014-2020 Linaro +# Released under the MIT license (see COPYING.MIT for the terms) + +DESCRIPTION = "Linaro Qualcomm Landing team 5.11 Kernel" +LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" + +require recipes-kernel/linux/linux-linaro-qcom.inc +require recipes-kernel/linux/linux-qcom-bootimg.inc + +LOCALVERSION ?= "-linaro-lt-qcom" + +SRCBRANCH = "release/rb5/qcomlt-5.11" +SRCREV = "84882774d77f1f841b01142219eea531b135655c" + +COMPATIBLE_MACHINE = "(sm8250)" diff --git a/recipes-kernel/linux/linux-linaro-qcomlt_5.7.bb b/recipes-kernel/linux/linux-linaro-qcomlt_5.7.bb index d59db58..88b33be 100644 --- a/recipes-kernel/linux/linux-linaro-qcomlt_5.7.bb +++ b/recipes-kernel/linux/linux-linaro-qcomlt_5.7.bb @@ -23,7 +23,7 @@ LOCALVERSION ?= "-linaro-lt-qcom" SRCBRANCH ?= "release/qcomlt-5.7" SRCREV ?= "4af49ea41ecf17e5e6243f3ac81dfc2f84d8a3a1" -COMPATIBLE_MACHINE = "(apq8016|apq8096|sdm845|sm8250)" +COMPATIBLE_MACHINE = "(qcom)" # Wifi firmware has a recognizable arch :( ERROR_QA_remove = "arch" diff --git a/recipes-kernel/linux/linux-linaro-qcomlt_5.9.bb b/recipes-kernel/linux/linux-linaro-qcomlt_5.9.bb index afc22b0..118ff78 100644 --- a/recipes-kernel/linux/linux-linaro-qcomlt_5.9.bb +++ b/recipes-kernel/linux/linux-linaro-qcomlt_5.9.bb @@ -10,9 +10,9 @@ require recipes-kernel/linux/linux-qcom-bootimg.inc LOCALVERSION ?= "-linaro-lt-qcom" SRCBRANCH ?= "release/qcomlt-5.9" -SRCREV ?= "dfc69bfc93c0d2f943d21340e55a61c391794a71" +SRCREV ?= "b5ff44498a19a685aa10a07ec67e3d12bc95a33a" SRCBRANCH_sm8250 = "release/rb5/qcomlt-5.9" SRCREV_sm8250 = "6d5a9a5da79684f69e4c66a7cf9108ab4e77025f" -COMPATIBLE_MACHINE = "(apq8016|apq8096|sdm845|sm8250)" +COMPATIBLE_MACHINE = "(qcom)" diff --git a/recipes-kernel/linux/linux-qcom-bootimg.inc b/recipes-kernel/linux/linux-qcom-bootimg.inc index 8a8a407..15b3397 100644 --- a/recipes-kernel/linux/linux-qcom-bootimg.inc +++ b/recipes-kernel/linux/linux-qcom-bootimg.inc @@ -1,49 +1,104 @@ -DEPENDS += "skales-native" - -QCOM_BOOTIMG_ROOTFS ?= "undefined" -SD_QCOM_BOOTIMG_ROOTFS ?= "undefined" - -# set output file names -BOOT_IMAGE_BASE_NAME = "boot-${KERNEL_IMAGE_NAME}" -BOOT_IMAGE_SYMLINK_NAME = "boot-${KERNEL_IMAGE_LINK_NAME}" -SD_BOOT_IMAGE_BASE_NAME = "boot-sd${KERNEL_IMAGE_NAME}" -SD_BOOT_IMAGE_SYMLINK_NAME = "boot-sd-${KERNEL_IMAGE_LINK_NAME}" -KERNEL_CMDLINE = "root=${1} rw rootwait console=${ttydev},${baudrate}n8" -KERNEL_CMDLINE_append_dragonboard-845c = " clk_ignore_unused pd_ignore_unused" -KERNEL_CMDLINE_append_qrb5165-rb5 = " pcie_pme=nomsi" - -# param ${1} partition where rootfs is located -# param ${2} output boot image file name -priv_make_image() { - ${STAGING_BINDIR_NATIVE}/skales/mkbootimg --kernel ${B}/arch/${ARCH}/boot/${KERNEL_IMAGETYPE} \ - --ramdisk ${B}/initrd.img \ - --output ${DEPLOYDIR}/${2}.img \ - --pagesize ${QCOM_BOOTIMG_PAGE_SIZE} \ - --base ${QCOM_BOOTIMG_KERNEL_BASE} \ - --cmdline "${KERNEL_CMDLINE}" -} +QIMG_DEPLOYDIR = "${WORKDIR}/qcom_deploy-${PN}" + +python do_qcom_img_deploy() { + import shutil + import subprocess + + subdir = d.getVar("KERNEL_DEPLOYSUBDIR") + if subdir is not None: + qcom_deploy_dir = os.path.join(d.getVar("QIMG_DEPLOYDIR"), subdir) + image_dir = os.path.join(d.getVar("DEPLOY_DIR_IMAGE"), subdir) + else: + qcom_deploy_dir = d.getVar("QIMG_DEPLOYDIR") + image_dir = d.getVar("DEPLOY_DIR_IMAGE") + + B = d.getVar("B") + D = d.getVar("D") + kernel_output_dir = d.getVar("KERNEL_OUTPUT_DIR") + kernel_imagedest = d.getVar("KERNEL_IMAGEDEST") + kernel = os.path.join(B, "kernel-dtb") + definitrd = os.path.join(B, "initrd.img") + mkbootimg = os.path.join(d.getVar("STAGING_BINDIR_NATIVE"), "skales", "mkbootimg") + kernel_image_name = d.getVar("KERNEL_IMAGE_NAME") + kernel_link_name = d.getVar("KERNEL_IMAGE_LINK_NAME") + output_img = os.path.join(qcom_deploy_dir, "boot-%s.img" % (kernel_link_name)) + output_sd_img = os.path.join(qcom_deploy_dir, "boot-sd-%s.img" % (kernel_link_name)) + + arch = d.getVar("ARCH") + if arch is "arm": + kernel_name = "zImage" + elif arch is "arm64": + kernel_name = "Image.gz" + else: + bb.fatal("Unuspported ARCH %s" % arch) + + if os.path.exists(output_img): + os.unlink(output_img) + if os.path.exists(output_sd_img): + os.unlink(output_sd_img) + + with open(definitrd, "w") as f: + f.write("This is not an initrd\n") -do_deploy_append() { + for dtbf in d.getVar("KERNEL_DEVICETREE").split(): + dtb = os.path.basename(dtbf) + dtb_name = dtb.rsplit('.', 1)[0] - tmp="${SERIAL_CONSOLES}" - baudrate=`echo $tmp | sed 's/\;.*//'` - ttydev=`echo $tmp | sed -e 's/^[0-9]*\;//' -e 's/\s.*//' -e 's/\;.*//'` + def getVarDTB(name): + return d.getVarFlag(name, dtb_name) or d.getVar(name) + + def make_image(template, rootfs): + output = os.path.join(qcom_deploy_dir, template % (dtb_name, kernel_image_name)) + output_link = os.path.join(qcom_deploy_dir, template % (dtb_name, kernel_link_name)) + subprocess.check_call([mkbootimg, + "--kernel", kernel, + "--ramdisk", definitrd, + "--output", output, + "--pagesize", getVarDTB("QCOM_BOOTIMG_PAGE_SIZE"), + "--base", getVarDTB("QCOM_BOOTIMG_KERNEL_BASE"), + "--cmdline", "root=%s rw rootwait %s %s" % (rootfs, consoles, getVarDTB("KERNEL_CMDLINE_EXTRA") or "")]) + if os.path.exists(output_link): + os.unlink(output_link) + os.symlink(os.path.basename(output), output_link) + return output + + consoles = ' '.join(map(lambda c: "console=%(tty)s,%(rate)sn8" % dict(zip(("rate", "tty"), c.split(';'))), getVarDTB("SERIAL_CONSOLES").split())) + + # prepare kernel image with appended dtb + with open(kernel, 'wb') as wfd: + with open(os.path.join(kernel_output_dir, kernel_name), 'rb') as rfd: + shutil.copyfileobj(rfd, wfd) + with open(os.path.join(D, kernel_imagedest, dtb), 'rb') as rfd: + shutil.copyfileobj(rfd, wfd) + + rootfs = getVarDTB("QCOM_BOOTIMG_ROOTFS") + if not rootfs or rootfs is "": + bb.fatal("QCOM_BOOTIMG_ROOTFS is undefined") + + output = make_image("boot-%s-%s.img", rootfs) + if not os.path.exists(output_img): + os.symlink(os.path.basename(output), output_img) + + sd_rootfs = getVarDTB("SD_QCOM_BOOTIMG_ROOTFS") + if sd_rootfs: + output = make_image("boot-sd-%s-%s.img", sd_rootfs) + if not os.path.exists(output_sd_img): + os.symlink(os.path.basename(output), output_sd_img) +} - # mkbootimg requires an initrd file, make fake one that will be ignored - # during boot - echo "This is not an initrd" > ${B}/initrd.img +do_qcom_img_deploy[depends] += "skales-native:do_populate_sysroot" - # don't build bootimg if rootfs partition is not defined - if [ "${QCOM_BOOTIMG_ROOTFS}" = "undefined" ]; then - bbfatal "Rootfs partition must be defined" - fi +addtask qcom_img_deploy after do_populate_sysroot do_packagedata bundle_initramfs before do_deploy - priv_make_image ${QCOM_BOOTIMG_ROOTFS} ${BOOT_IMAGE_BASE_NAME} - ln -sf ${BOOT_IMAGE_BASE_NAME}.img ${DEPLOYDIR}/${BOOT_IMAGE_SYMLINK_NAME}.img +# Setup sstate, see deploy.bbclass +SSTATETASKS += "do_qcom_img_deploy" +do_qcom_img_deploy[sstate-inputdirs] = "${QIMG_DEPLOYDIR}" +do_qcom_img_deploy[sstate-outputdirs] = "${DEPLOY_DIR_IMAGE}" - # build sd boot image only for machines supporting it. - if [ "${SD_QCOM_BOOTIMG_ROOTFS}" != "undefined" ]; then - priv_make_image ${SD_QCOM_BOOTIMG_ROOTFS} ${SD_BOOT_IMAGE_BASE_NAME} - ln -sf ${SD_BOOT_IMAGE_BASE_NAME}.img ${DEPLOYDIR}/${SD_BOOT_IMAGE_SYMLINK_NAME}.img - fi +python do_qcom_img_deploy_setscene () { + sstate_setscene(d) } +addtask do_qcom_img_deploy_setscene +do_qcom_img_deploy[dirs] = "${QIMG_DEPLOYDIR} ${B}" +do_qcom_img_deploy[cleandirs] = "${QIMG_DEPLOYDIR}" +do_qcom_img_deploy[stamp-extra-info] = "${MACHINE_ARCH}" diff --git a/recipes-multimedia/alsa/alsa-ucm-conf/0001-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch b/recipes-multimedia/alsa/alsa-ucm-conf/0001-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch index 8e109d0..7f664b1 100644 --- a/recipes-multimedia/alsa/alsa-ucm-conf/0001-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch +++ b/recipes-multimedia/alsa/alsa-ucm-conf/0001-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch @@ -21,50 +21,55 @@ Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> diff --git a/ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf b/ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf new file mode 100644 -index 000000000000..457344e71e1b +index 0000000..ec3f45a --- /dev/null +++ b/ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf -@@ -0,0 +1,3 @@ -+cset "name='VA DMIC MUX0' ZERO" -+cset "name='VA_DEC0 Volume' 0" -+cset "name='VA_AIF1_CAP Mixer DEC0' 0" +@@ -0,0 +1,5 @@ ++DisableSequence [ ++ cset "name='VA DMIC MUX0' ZERO" ++ cset "name='VA_DEC0 Volume' 0" ++ cset "name='VA_AIF1_CAP Mixer DEC0' 0" ++] diff --git a/ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf b/ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf new file mode 100644 -index 000000000000..11b428f868ac +index 0000000..bd6e8f5 --- /dev/null +++ b/ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf -@@ -0,0 +1,3 @@ -+cset "name='VA DMIC MUX0' DMIC0" -+cset "name='VA_AIF1_CAP Mixer DEC0' 1" -+cset "name='VA_DEC0 Volume' 100" +@@ -0,0 +1,5 @@ ++EnableSequence [ ++ cset "name='VA DMIC MUX0' DMIC0" ++ cset "name='VA_AIF1_CAP Mixer DEC0' 1" ++ cset "name='VA_DEC0 Volume' 100" ++] diff --git a/ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf b/ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf new file mode 100644 -index 000000000000..d84463e751fa +index 0000000..1f27d4c --- /dev/null +++ b/ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf -@@ -0,0 +1,8 @@ -+cset "name='WSA_RX0 Digital Volume' 0" -+cset "name='WSA_RX1 Digital Volume' 0" -+cset "name='WSA_COMP1 Switch' 0" -+cset "name='WSA_COMP2 Switch' 0" -+cset "name='WSA_RX0 INP0' ZERO" -+cset "name='WSA_RX1 INP0' ZERO" -+cset "name='WSA RX0 MUX' ZERO" -+cset "name='WSA RX1 MUX' ZERO" +@@ -0,0 +1,10 @@ ++DisableSequence [ ++ cset "name='WSA_RX0 Digital Volume' 0" ++ cset "name='WSA_RX1 Digital Volume' 0" ++ cset "name='WSA_COMP1 Switch' 0" ++ cset "name='WSA_COMP2 Switch' 0" ++ cset "name='WSA_RX0 INP0' ZERO" ++ cset "name='WSA_RX1 INP0' ZERO" ++ cset "name='WSA RX0 MUX' ZERO" ++ cset "name='WSA RX1 MUX' ZERO" ++] diff --git a/ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf b/ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf new file mode 100644 -index 000000000000..4e9faceab70b +index 0000000..618bab4 --- /dev/null +++ b/ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf -@@ -0,0 +1,8 @@ -+cset "name='WSA RX0 MUX' AIF1_PB" -+cset "name='WSA RX1 MUX' AIF1_PB" -+cset "name='WSA_RX0 INP0' RX0" -+cset "name='WSA_RX1 INP0' RX1" -+cset "name='WSA_COMP1 Switch' 1" -+cset "name='WSA_COMP2 Switch' 1" -+cset "name='WSA_RX0 Digital Volume' 68" -+cset "name='WSA_RX1 Digital Volume' 68" --- -2.29.2 - +@@ -0,0 +1,10 @@ ++EnableSequence [ ++ cset "name='WSA RX0 MUX' AIF1_PB" ++ cset "name='WSA RX1 MUX' AIF1_PB" ++ cset "name='WSA_RX0 INP0' RX0" ++ cset "name='WSA_RX1 INP0' RX1" ++ cset "name='WSA_COMP1 Switch' 1" ++ cset "name='WSA_COMP2 Switch' 1" ++ cset "name='WSA_RX0 Digital Volume' 68" ++ cset "name='WSA_RX1 Digital Volume' 68" ++] diff --git a/recipes-multimedia/alsa/alsa-ucm-conf/0002-ucm2-add-support-to-for-Qualcomm-RB5-Platform.patch b/recipes-multimedia/alsa/alsa-ucm-conf/0002-ucm2-add-support-to-for-Qualcomm-RB5-Platform.patch index 58a508d..452128e 100644 --- a/recipes-multimedia/alsa/alsa-ucm-conf/0002-ucm2-add-support-to-for-Qualcomm-RB5-Platform.patch +++ b/recipes-multimedia/alsa/alsa-ucm-conf/0002-ucm2-add-support-to-for-Qualcomm-RB5-Platform.patch @@ -9,19 +9,19 @@ Onboard DMIC audio input. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> --- - ucm2/sm8250/HDMI.conf | 26 +++++++++++++ - ucm2/sm8250/HiFi.conf | 37 +++++++++++++++++++ - .../Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf | 11 ++++++ - 3 files changed, 74 insertions(+) - create mode 100644 ucm2/sm8250/HDMI.conf - create mode 100644 ucm2/sm8250/HiFi.conf - create mode 100644 ucm2/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf + ucm2/Qualcomm/sm8250/HDMI.conf | 26 ++++++++++++ + ucm2/Qualcomm/sm8250/HiFi.conf | 46 ++++++++++++++++++++++ + .../Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf | 11 ++++++ + 3 files changed, 83 insertions(+) + create mode 100644 ucm2/Qualcomm/sm8250/HDMI.conf + create mode 100644 ucm2/Qualcomm/sm8250/HiFi.conf + create mode 100644 ucm2/Qualcomm/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf -diff --git a/ucm2/sm8250/HDMI.conf b/ucm2/sm8250/HDMI.conf +diff --git a/ucm2/Qualcomm/sm8250/HDMI.conf b/ucm2/Qualcomm/sm8250/HDMI.conf new file mode 100644 -index 000000000000..a9594fd94af2 +index 0000000..a9594fd --- /dev/null -+++ b/ucm2/sm8250/HDMI.conf ++++ b/ucm2/Qualcomm/sm8250/HDMI.conf @@ -0,0 +1,26 @@ +# Use case configuration for RB5 board. +# Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> @@ -49,12 +49,12 @@ index 000000000000..a9594fd94af2 + PlaybackPriority 200 + } +} -diff --git a/ucm2/sm8250/HiFi.conf b/ucm2/sm8250/HiFi.conf +diff --git a/ucm2/Qualcomm/sm8250/HiFi.conf b/ucm2/Qualcomm/sm8250/HiFi.conf new file mode 100644 -index 000000000000..484bb49057e7 +index 0000000..a310402 --- /dev/null -+++ b/ucm2/sm8250/HiFi.conf -@@ -0,0 +1,37 @@ ++++ b/ucm2/Qualcomm/sm8250/HiFi.conf +@@ -0,0 +1,46 @@ +# Use case configuration for Qualcomm RB5. +# Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> + @@ -62,11 +62,14 @@ index 000000000000..484bb49057e7 + + EnableSequence [ + cset "name='WSA_CODEC_DMA_RX_0 Audio Mixer MultiMedia2' 1" -+ <codecs/wsa881x/DefaultEnableSeq.conf> ++ cset "name='MultiMedia3 Mixer VA_CODEC_DMA_TX_0' 1" + ] + ++ Include.wsae.File "/codecs/wsa881x/DefaultEnableSeq.conf" ++ + DisableSequence [ + cset "name='WSA_CODEC_DMA_RX_0 Audio Mixer MultiMedia2' 0" ++ cset "name='MultiMedia3 Mixer VA_CODEC_DMA_TX_0' 0" + ] + + Value { @@ -77,38 +80,41 @@ index 000000000000..484bb49057e7 +SectionDevice."Speaker" { + Comment "Speaker playback" + -+ EnableSequence [ -+ <codecs/lpass/wsa-macro/SpeakerEnableSeq.conf> -+ <codecs/wsa881x/SpeakerEnableSeq.conf> -+ ] -+ -+ DisableSequence [ -+ <codecs/wsa881x/SpeakerDisableSeq.conf> -+ <codecs/lpass/wsa-macro/SpeakerDisableSeq.conf> -+ ] ++ Include.lpasswsae.File "/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf" ++ Include.wsae.File "/codecs/wsa881x/SpeakerEnableSeq.conf" ++ Include.wsad.File "/codecs/wsa881x/SpeakerDisableSeq.conf" ++ Include.lpasswsad.File "/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf" + + Value { + PlaybackPriority 100 + PlaybackPCM "hw:${CardId},1" + } +} -diff --git a/ucm2/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf b/ucm2/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf ++ ++SectionDevice."Mic" { ++ Comment "Mic" ++ Include.lpassvad.File "/codecs/lpass/va-macro/DMIC0EnableSeq.conf" ++ Include.lpassvad.File "/codecs/lpass/va-macro/DMIC0DisableSeq.conf" ++ ++ Value { ++ CapturePriority 100 ++ CapturePCM "hw:${CardId},2" ++ } ++} +diff --git a/ucm2/Qualcomm/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf b/ucm2/Qualcomm/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf new file mode 100644 -index 000000000000..be2aea7aab22 +index 0000000..2fbca31 --- /dev/null -+++ b/ucm2/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf ++++ b/ucm2/Qualcomm/sm8250/Qualcomm-RB5-WSA8815-Speakers-DMIC0.conf @@ -0,0 +1,11 @@ +Syntax 3 + +SectionUseCase."HiFi" { -+ File "/sm8250/HiFi.conf" ++ File "/Qualcomm/sm8250/HiFi.conf" + Comment "HiFi quality Music." +} + +SectionUseCase."HDMI" { -+ File "/sm8250/HDMI.conf" ++ File "/Qualcomm/sm8250/HDMI.conf" + Comment "HDMI output." +} --- -2.29.2 - diff --git a/recipes-multimedia/alsa/alsa-ucm-conf/0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch b/recipes-multimedia/alsa/alsa-ucm-conf/0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch new file mode 100644 index 0000000..49f02b0 --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf/0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch @@ -0,0 +1,28 @@ +From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> +Date: Fri, 29 Jan 2021 15:31:35 +0300 +Subject: ucm.conf: support KernelModule/CardLongName.conf paths + +Add support for 'ucm2/module/${KernelModule}/${CardLongName}.conf' +paths. + +Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> +Change-Id: Ib006691e4b384543f97897c03fe575f8278e66f5 +--- + ucm2/ucm.conf | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/ucm2/ucm.conf b/ucm2/ucm.conf +index 9e78df1..a9613a2 100644 +--- a/ucm2/ucm.conf ++++ b/ucm2/ucm.conf +@@ -53,6 +53,10 @@ If.driver { + False { + Define.KernelModulePath "class/sound/card${CardNumber}/device/driver/module" + Define.KernelModule "$${sys:$KernelModulePath}" ++ UseCasePath.modulelongname { ++ Directory "module/${var:KernelModule}" ++ File "${CardLongName}.conf" ++ } + UseCasePath.module { + Directory "module" + File "${var:KernelModule}.conf" diff --git a/recipes-multimedia/alsa/alsa-ucm-conf/0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch b/recipes-multimedia/alsa/alsa-ucm-conf/0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch new file mode 100644 index 0000000..6d46996 --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf/0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch @@ -0,0 +1,21 @@ +From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> +Date: Fri, 29 Jan 2021 15:32:06 +0300 +Subject: module: add new symlink for Qualcomm/sdm845 driver + +Add module/snd_soc_sdm845 -> Qualcomm/sdm845 link. + +Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> +Change-Id: I5325033f47ee131499ed406ec56284bbf2f58b8d +--- + ucm2/module/snd_soc_sdm845 | 1 + + 1 file changed, 1 insertion(+) + create mode 120000 ucm2/module/snd_soc_sdm845 + +diff --git a/ucm2/module/snd_soc_sdm845 b/ucm2/module/snd_soc_sdm845 +new file mode 120000 +index 0000000..6800b66 +--- /dev/null ++++ b/ucm2/module/snd_soc_sdm845 +@@ -0,0 +1 @@ ++../Qualcomm/sdm845 +\ No newline at end of file diff --git a/recipes-multimedia/alsa/alsa-ucm-conf/0007-ucm2-module-add-snd_soc_sm8250-symlink.patch b/recipes-multimedia/alsa/alsa-ucm-conf/0007-ucm2-module-add-snd_soc_sm8250-symlink.patch new file mode 100644 index 0000000..30d61c4 --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf/0007-ucm2-module-add-snd_soc_sm8250-symlink.patch @@ -0,0 +1,19 @@ +From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> +Date: Fri, 29 Jan 2021 15:41:39 +0300 +Subject: ucm2/module: add snd_soc_sm8250 symlink + +Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> +Change-Id: I9818a19ef812d715d65345ea3733f635d5505c2e +--- + ucm2/module/snd_soc_sm8250 | 1 + + 1 file changed, 1 insertion(+) + create mode 120000 ucm2/module/snd_soc_sm8250 + +diff --git a/ucm2/module/snd_soc_sm8250 b/ucm2/module/snd_soc_sm8250 +new file mode 120000 +index 0000000..faf64f1 +--- /dev/null ++++ b/ucm2/module/snd_soc_sm8250 +@@ -0,0 +1 @@ ++../Qualcomm/sm8250 +\ No newline at end of file diff --git a/recipes-multimedia/alsa/alsa-ucm-conf_%.bbappend b/recipes-multimedia/alsa/alsa-ucm-conf_%.bbappend index 58b32f2..d2b6180 100644 --- a/recipes-multimedia/alsa/alsa-ucm-conf_%.bbappend +++ b/recipes-multimedia/alsa/alsa-ucm-conf_%.bbappend @@ -3,4 +3,7 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:" SRC_URI_append_sm8250 = "\ file://0001-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch \ file://0002-ucm2-add-support-to-for-Qualcomm-RB5-Platform.patch \ + file://0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch \ + file://0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch \ + file://0007-ucm2-module-add-snd_soc_sm8250-symlink.patch \ " diff --git a/recipes-support/fastrpc/fastrpc_git.bb b/recipes-support/fastrpc/fastrpc_git.bb index 3aa67a7..875bea5 100644 --- a/recipes-support/fastrpc/fastrpc_git.bb +++ b/recipes-support/fastrpc/fastrpc_git.bb @@ -5,7 +5,7 @@ SECTION = "devel" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://src/fastrpc_apps_user.c;beginline=1;endline=29;md5=f94f3a7beba14ae2f59f817e9634f891" -SRCREV = "388d868b3146fa7ccbeb6aa8c71485ebbbf5e1b9" +SRCREV = "bc36c705c9b057ca880a423021d3c19f02edeadd" SRC_URI = "git://git.linaro.org/landing-teams/working/qualcomm/fastrpc.git;branch=automake;protocol=https" PV = "0.0+${SRCPV}" @@ -13,3 +13,14 @@ PV = "0.0+${SRCPV}" S = "${WORKDIR}/git" inherit autotools + +FILES_${PN} += " \ + ${libdir}/libadsp_default_listener.so \ + ${libdir}/libcdsp_default_listener.so \ +" + +FILES_${PN}-dev_remove = "${FILES_SOLIBSDEV}" +FILES_${PN}-dev += " \ + ${libdir}/libadsprpc.so \ + ${libdir}/libcdsprpc.so \ +" diff --git a/recipes-support/qrtr/qrtr_git.bb b/recipes-support/qrtr/qrtr_git.bb index 9daf6ba..def23be 100644 --- a/recipes-support/qrtr/qrtr_git.bb +++ b/recipes-support/qrtr/qrtr_git.bb @@ -7,10 +7,10 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=15329706fbfcb5fc5edcc1bc7c139da5" inherit systemd -SRCREV = "983b223423f3ec36f231455b6a93bc2a10921794" +SRCREV = "9dc7a88548c27983e06465d3fbba2ba27d4bc050" SRC_URI = "git://github.com/andersson/${BPN}.git;branch=master;protocol=https" -PV = "0.0+${SRCPV}" +PV = "0.3+${SRCPV}" S = "${WORKDIR}/git" diff --git a/recipes-support/rmtfs/rmtfs_git.bb b/recipes-support/rmtfs/rmtfs_git.bb index 08169fc..249e21e 100644 --- a/recipes-support/rmtfs/rmtfs_git.bb +++ b/recipes-support/rmtfs/rmtfs_git.bb @@ -11,7 +11,7 @@ SRCREV = "1cc12d3dc1f251f6d3151970621a06fdd013a1d0" SRC_URI = "git://github.com/andersson/${BPN}.git;branch=master;protocol=https" DEPENDS = "qmic-native qrtr udev" -PV = "0.0+${SRCPV}" +PV = "0.2+${SRCPV}" S = "${WORKDIR}/git" diff --git a/recipes-test/images/initramfs-test-image.bb b/recipes-test/images/initramfs-test-image.bb index d7b49ac..fd03d70 100644 --- a/recipes-test/images/initramfs-test-image.bb +++ b/recipes-test/images/initramfs-test-image.bb @@ -14,6 +14,7 @@ PACKAGE_INSTALL = " \ e2fsprogs-tune2fs \ ethtool \ gptfdisk \ + iw \ lava-test-shell \ packagegroup-core-boot \ pciutils \ |