From a2ba7d472cbf2fd4919ea9c55be8c2e375fbe44b Mon Sep 17 00:00:00 2001 From: Matt Madison Date: Fri, 4 Dec 2015 16:10:51 -0800 Subject: [PATCH] Add NVIDIA firmware recipe. Update machine configuration to have it included in the image, and fix several of the machine settings. --- conf/machine/jetson-tx1.conf | 12 +++++- .../tegra-binaries/tegra-binaries_23.1.1.bb | 37 +++++++++++++++++++ 2 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 recipes-bsp/tegra-binaries/tegra-binaries_23.1.1.bb diff --git a/conf/machine/jetson-tx1.conf b/conf/machine/jetson-tx1.conf index 90bf0398..220a8422 100644 --- a/conf/machine/jetson-tx1.conf +++ b/conf/machine/jetson-tx1.conf @@ -8,19 +8,27 @@ DEFAULTTUNE = "aarch64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "armv7ahf-neon-vfpv4" +# XXX - override until OE-Core problem is resolved +ARMPKGSFX_FPU_virtclass-multilib-lib32 = "-vfp-neon-vfpv4" +# XXX PREFERRED_PROVIDER_virtual/kernel ?= "linux-tegra" PREFERRED_PROVIDER_u-boot ?= "u-boot-tegra" PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-tegra" -KERNEL_IMAGETYPE = "zImage" +KERNEL_IMAGETYPE = "Image" KERNEL_DEVICETREE = "tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb" MACHINE_FEATURES = "alsa bluetooth ext2 ext3 vfat usbhost pci wifi rtc" -MACHINE_EXTRA_RRECOMMENDS += "kernel-devicetree" +MACHINE_ESSENTIAL_EXTRA_RDEPENDS = "tegra-binaries" +MACHINE_EXTRA_RRECOMMENDS += "kernel-devicetree tegra-binaries-brcm" UBOOT_MACHINE = "p2371-2180_defconfig" +SERIAL_CONSOLE = "115200 ttyS0" + SDCARD_ROOTFS ?= "${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.ext3" GCCVERSION = "4.9%" + +OLDEST_KERNEL_aarch64 = "3.10" diff --git a/recipes-bsp/tegra-binaries/tegra-binaries_23.1.1.bb b/recipes-bsp/tegra-binaries/tegra-binaries_23.1.1.bb new file mode 100644 index 00000000..c0cf711f --- /dev/null +++ b/recipes-bsp/tegra-binaries/tegra-binaries_23.1.1.bb @@ -0,0 +1,37 @@ +SUMMARY = "NVIDIA firmware and drivers" +DESCRIPTION = "NVIDIA L4T proprietary binary-only firmware and drivers" +SECTION = "base" +LICENSE = "Proprietary" +LIC_FILES_CHKSUM = "file://nv_tegra/LICENSE;md5=60ad17cc726658e8cf73578bea47b85f \ + file://nv_tegra/LICENSE.brcm_patchram_plus;md5=38fb07f0dacf4830bc57f40a0fb7532e" + +SRC_URI = "http://developer.download.nvidia.com/embedded/L4T/r23_Release_v1.0/Tegra210_Linux_R${PV}_armhf.tbz2" +SRC_URI[md5sum] = "4773c4aff47f464f0a6eb2a8342b05e7" +SRC_URI[sha256sum] = "aacb0b1e9571df43621a6fd32101f8f52f9387ecb84e96930fb5682a68676c15" + +COMPATIBLE_MACHINE = "(jetson-tx1)" +PACKAGE_ARCH = "${MACHINE_ARCH}" + +B = "${WORKDIR}/build" +S = "${WORKDIR}/Linux_for_Tegra" + +do_configure() { + tar -C ${B} -x -f ${S}/nv_tegra/nvidia_drivers.tbz2 lib/firmware usr/sbin +} + +do_compile[noexec] = "1" + +do_install() { + install -d ${D}/lib + cp -R -f ${B}/lib/firmware ${D}/lib/ + install -d ${D}${sbindir} + install -m 0755 ${B}/usr/sbin/brcm_patchram_plus ${D}${sbindir} +} + +PACKAGES = "${PN}-brcm ${PN}-brcm-patchram ${PN}" +FILES_${PN}-brcm = "/lib/firmware/brcm /lib/firmware/bcm4354.hcd" +FILES_${PN}-brcm-patchram = "${sbindir}/brcm_patchram_plus" +FILES_${PN} = "/lib/firmware/tegra21x*" + +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_PACKAGE_DEBUG_SPLIT = "1"