250 Commits

Author SHA1 Message Date
Kurt Kiefer
80724733a2 image_types_tegra: add support for virtual/dtb provider
This change adds support (adapted from kernel-fitimage handling) for
out-of-tree device tree binary generation. It looks for a provider
of virtual/dtb, and if this exists, enables the copying of device
tree binaries generated by this recipe.

Signed-off-by: Kurt Kiefer <kurt.kiefer@arthrex.com>
2022-09-18 05:33:54 -07:00
Matt Madison
5d634a134d classes: update L4T debian package name/version construction
to simplify JetPack revision updates that change *some* of the
nvidia-l4t-* packages to use an updated time/date stamp, but leave
some with the older time/date stamp.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-08 09:40:16 -07:00
Kurt Kiefer
88dbea1385 TNSPEC_MACHINE: fix a couple missing subsitutions
Refs d4f946d4c82556c9ca4e421f051adb337346fcd9

Signed-off-by: Kurt Kiefer <kurt.kiefer@arthrex.com>
2022-09-05 13:54:07 -07:00
Matt Madison
f12b72cb0e classes: rename image_types_esp.bbclass to image_types_tegra_esp.bbclass
The 'esp' name was a bit too generic, so renaming should  avoid possible
conflicts with other layers.

Also fix a minor typo in the log output in the mkespfs function.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
59808261e5 image_types_tegra.bbclass: update for L4T rootfs_AB flash layouts
To enable use of the stock L4T _rootfs_AB.xml layouts, we have to
add replacements for LNXFILE_b, APP_b, and APPUUID_b in the layout
configuration.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Kurt Kiefer
d64c61fd10 Introduce TNSPEC_MACHINE variable to common machine configuration
This variable is used everywhere the TNSPEC is calculated, instead
of MACHINE. It can be used to set a different machine name for
compatibility with BUP packaging or NVIDIA's bootload tools.

One example of this is NVIDIA's nvbootctrl tool part of the initial
Jetpack 5 release that matches the devkit machine name against the
COMPATIBLE_SPEC string. A custom TNSPEC_MACHINE name can be used
here to satisfy this match (e.g. 'mymachine-jetson-agx-xavier-devkit')
but the actual MACHINE variable can remain as simply 'mymachine'.

Signed-off-by: Kurt Kiefer <kurt.kiefer@arthrex.com>
2022-09-05 13:54:07 -07:00
Matt Madison
54f5ae9ea5 image_types_tegra.bbclass: add mb1_b hack for t194 devices
The L4T flash.sh script makes a copy of the mb1 firmware and
modifies the flash layout to use that for the second MB1FILE
entry for t194 devices. Comments in the script indicate that
this is necessary, so do the same here.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
0bccd50bf9 image_types_tegra.bbclass: cleanup/fixes from BUP generation testing
* use EMMC_BCT/EMMC_BCT_OVERRIDE variables for the sdram config
  file(s) instead of ${MACHINE}.cfg/${MACHINE}-override.cfg
* add missing mb2 firmware for Orin

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Atharva Nandanwar
f0ea3a5000 container-csv.bbclass: remove the class from layer
- Removing dynamically generated container csv files for nvidia
container passthrough mechanism, as NVIDIA has moved to base l4t.csv
which includes all the container passthrough references

Signed-off-by: Atharva Nandanwar <anandanwar@sighthound.com>
2022-09-05 13:54:07 -07:00
Matt Madison
c122624609 image_types_tegra.bbclass: updates for tools/config file changes
* Now using tegra-flashtools-native
* T234 systems use same naming for the EMMC_BCT file as T194
* Start fixing up BUP payload generation for T234 (not done yet)

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
e02b97ee1f image_types_cboot.bbclass: add t234 support
and update the flashtools dependency.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
cd0d6f11fb image_types_tegra.bbclass: drop virtual/bootlogo dependency
Boot logos are built into UEFI now, so there is no separate
BMP partition for them.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
8f051e5b72 image_types_cboot.bbclass: add kernel args to mkbootimg invocation
This was added earlier in the kernel recipe, for handling
bundled initrds; make the corresponding change here for
the non-bundled case.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
4f3e19f490 meta: move KERNEL_ARGS handling to kernel recipe
With UEFI, the kernel args are extracted from the boot image,
rather than being processed from the device tree, so remove
all the device tree mangling we were doing and instead add
the args to the boot image creation step in the kernel
recipe.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
58f6e7863c image_types_tegra.bbclass: extend OVERLAY_DTB_FILE to tegra194 targets
The DTB overlayss are now provided by the kernel and UEFI recipes and
put in ${IMAGE_DEPLOY_DIR}, so copy them from there.

Also fix the flashvars handling for tegra234 platforms during BUP
generation.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
a29f0cb517 meta: drop references to cbootoption and slot_metadata files
as they were specific to cboot and are no longer used.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
5007b58763 meta: update L4T R34.1.1 -> R35.1.0
Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
aa59c77bf4 meta: update L4T recipes from 34.1.0 to 34.1.1
Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Roberto
6db36ca723 images_types_tegra: Add full support for tegra234 package
Signed-off-by: Roberto <roberto.gutierrez@ridgerun.com>
2022-09-05 13:54:07 -07:00
Roberto
11df4086ad images_types_tegra: Update flash.xml variables for tegra234
Signed-off-by: Roberto <roberto.gutierrez@ridgerun.com>
2022-09-05 13:54:07 -07:00
Matt Madison
3cc2bffb4c image_types_tegra: drop more t186/t210 references, update dependencies
and copy in the ESP image for BUP generation.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
41bf28279d image_types_cboot: drop t186 references
Not that the conversion type name is still 'cboot' for now,
even though we're not using cboot any more.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
36e83e8b2d classes: update flashtools references
Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
8a91fb1ff5 meta: rename cboot-extlinux to l4t-launcher-extlinux
Also rename the bbclass and update it to mention the UEFI application.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
f487a01fc3 classes: add image_types_esp.bbclass
for creating an EFI system partition in the right format.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
fb089f6012 image_types_tegra: update for R34.1.0
* Drop t210, t186 support
* Replace cboot with UEFI
* Replace trusty with OPTEE
* Other miscellaneous updates

Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
00d03cd685 l4t_bsp.bbclass: update BSP version to 34.1.0
Signed-off-by: Matt Madison <matt@madison.systems>
2022-09-05 13:54:07 -07:00
Matt Madison
4f6a159fb0 meta: update all R32.7.1 recipes to R32.7.2
Signed-off-by: Matt Madison <matt@madison.systems>
2022-05-22 07:54:15 -07:00
Matt Madison
fb72b88cf7 image_types_tegra.bbclass: fix typo, add inherit
Fix a typo which I missed when reviewing the INITRAMFS_LINK_NAME
change, and add an explicit inherit of kernel-artifact-names rather
than relying on the indirect inherit of that class through some
of the other image classes, so that variable is always defined.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-05-15 11:02:23 -07:00
Kevin Vanden Berge
934bbc090f image_types_tegra: use initramfs link name for tegra_kernel_image
This change leverages the INITRAMFS_LINK_NAME to 'dynamically' build
the image name returned from tegra_kernel_image method during tegra_flash
building.

This helps avoid build failures if a custom INITRAMFS_LINK_NAME is used
to generate a bundled kernel and ramdisk image.

By default, INITRAMFS_LINK_NAME expands to

INITRAMFS_LINK_NAME ?= "initramfs-${KERNEL_ARTIFACT_LINK_NAME}"

which would yield:
KERNEL_ARTIFACT_LINK_NAME ?= "${MACHINE}"

resulting in no change to default behavior.

Signed-off-by: Kevin Vanden Berge <kvandenberge@gmail.com>
2022-05-15 10:44:37 -07:00
Matt Madison
6c89e4b71b meta: update l4t_bsp.bbclass and machine configs for L4T R32.7.1
Signed-off-by: Matt Madison <matt@madison.systems>
2022-03-17 11:09:22 -07:00
Matt Madison
329c3af945 classes: add tegra_opengl_required.bbclass
for use in bbappends where we need to add a check on
opengl in DISTRO_FEATURES for just tegra platforms.

Signed-off-by: Matt Madison <matt@madison.systems>
2022-01-07 07:05:59 -08:00
Matt Madison
d401aee1eb cuda.bbclass: inherit cuda-gcc, update CMake support
* Use CXX_FOR_CUDA to determine the compiler to pass to nvcc
* Add support for setting CMAKE_CUDA_ARCHITECTURES based on
  the CUDA_ARCHITECTURES variable

Signed-off-by: Matt Madison <matt@madison.systems>
2021-12-16 10:04:11 -08:00
Matt Madison
f9881e05d4 classes: add cuda-gcc.bbclass
for redirecting the gcc toolchain used by nvcc (and,
if necessary, directly compiled CC/C++ code) for
compatibility with CUDA.  This class can be inherited
by recipes that need to compile CUDA-compatible code
but do not need the CUDA toolkit dependencies.

The class sets variables CC_FOR_CUDA and CXX_FOR_CUDA.
Recipes needing to use this version of the compiler
must set CC and/or CXX to point to these variables.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-12-16 10:04:11 -08:00
Matt Madison
5e88bf03a6 l4t_bsp.bbclass: add variables for BSP debian packages
to support moving recipes to using the nvidia-l4t-* packages
as sources for BSP content.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-11-16 14:38:57 -08:00
Matt Madison
33fd88b221 cuda.bbclass: update runtime dependency for tegra-libraries split
Signed-off-by: Matt Madison <matt@madison.systems>
2021-10-18 13:16:21 -07:00
Kurt Kiefer
61d2940006 l4t_deb_pkgfeed.bbclass: fix for new override syntax
Fixed a missing update for the new override syntax. This fixes
an issue with l4t .deb packages using zstd compression not extracting
properly.

Signed-off-by: Kurt Kiefer <kurt.kiefer@arthrex.com>
2021-08-12 10:35:28 -07:00
Matt Madison
155aba4176 l4t_deb_pkgfeed.bbclass: update x86_64 URIs
The feed URIs were changed for JetPack 4.6/L4T 32.6.1,
and the apt source entry for native packages has changed:

https://repo.download.nvidia.com/jetson/x86_64/bionic r32.6 main

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-10 08:34:50 -07:00
Matt Madison
754a18d12c meta: pull in rapid-boot binaries for t210 platforms
which were added in L4T R32.6.1.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-10 08:34:50 -07:00
Matt Madison
8ee854d9a3 meta: add support for dram-ecc on t194 platforms
evidently used by the Xavier industrial module.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-10 08:34:50 -07:00
Matt Madison
229af4bfe4 image_types_tegra: move rollback_parser.py during BUP generation
The rollback parser script needs to be in a specific location;
this is done for tegraflash generation, but was missing from the
BUP generation scriptlet.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-10 08:34:50 -07:00
Matt Madison
7fce29e693 image_types_tegra.bbclass: add SMDFILE tag rewrite for R32.6.1
New tag in the flash layout XML files needs handling for
R32.6.1.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-10 07:55:40 -07:00
Matt Madison
f23478dbd2 l4t_bsp.bbclass: update for R32.6.1
Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-10 07:54:25 -07:00
Matt Madison
971dfeb591 meta: overrides conversion cleanup
Fixups for some changes made by the conversion script:
* some occurrences of '::' and ':}'
* '_arm64.deb' -> ':arm64.deb' changes in our SRC_URIs
* some '_'-> ':' conversions in other locations that shouldn't
  have been made

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-05 13:24:40 -07:00
Matt Madison
640d7bd42b meta: update with latest convert-overrides run
Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-05 11:36:14 -07:00
Matt Madison
b9507ceb23 meta: convert to new override syntax
* Ran convert-overrides.py to generate the initial changes
* Manual cleanup afterwards (which was a lot, due to our
  extensive use of overrides).

Signed-off-by: Matt Madison <matt@madison.systems>
2021-08-03 08:27:55 -07:00
Matt Madison
77550030b3 meta: update to L4T R32.5.2
Recipes that fetch from the L4T deb package feed
are still 32.5.1, but recipes that use the L4T
BSP tarball are updated.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-07-15 09:07:43 -07:00
Matt Madison
684f2a3ece image_types_tegra.bbclass: make cbo.dtb optional
to align with what stock L4T does for t194 platforms.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-06-09 04:58:47 -07:00
Matt Madison
361d1f3b4b classes: add cboot-extlinux-config.bbclass
Adapted from the bbclass in OE-Core for u-boot, with modifications
for cboot's idiosyncratic and rather crash-prone interpretation of
the extlinux.conf file format.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-06-09 04:58:47 -07:00
Matt Madison
fcb71c38d7 image_types_tegra.bbclass: rewrite FBNAME in t186 flash config
to 'fusebypass'. It isn't actually used, so despite the fact
that the rewrite  has been around in flash.sh for several L4T
releases, I never noticed.

Signed-off-by: Matt Madison <matt@madison.systems>
2021-05-03 08:30:08 -07:00