2022年10月20日 星期四

Nvidia AGX Orin


目前是使用R35.1
Quick Guide
$ wget https://developer.nvidia.com/embedded/l4t/r35_release_v1.0/release/jetson_linux_r35.1.0_aarch64.tbz2
$ wget https://developer.nvidia.com/embedded/l4t/r35_release_v1.0/release/tegra_linux_sample-root-filesystem_r35.1.0_aarch64.tbz2
$ tar -xf jetson_linux_r35.1.0_aarch64.tbz2
$ cd Linux_for_Tegra/rootfs/
$ cp your_path/tegra_linux_sample-root-filesystem_r35.1.0_aarch64.tbz2 ./
$ sudo tar xpf tegra_linux_sample-root-filesystem_r35.1.0_aarch64.tbz2
( sudo must be used. Otherwise, get an error message from apply_binaries.sh)

cd ..
sudo ./apply_binaries.sh


Build Kernel:
  • Download kernel source code from git:
    cd Linux_for_Tegra/
    ./source_sync.sh (此檔在r36.3的位置換了..., 在 source底下)
    When prompted enter a ‘tag’ name, as provided in the release notes.
    
    tag name:
    (Open another terminal after running source_sync.sh)
    $ cd Linux_for_Tegra/sources/kernel/kernel-4.9
    $ git tag -l tegra-l4t*
    
    jetson-r34.1_dp
    jetson_34.1.1
    jetson_35.1
    
    $ cd sources/
    
  • Toolchain: Download as required
    list
    
    download, gcc 9.3.0
    
  • drivers/video/Kconfig:27: can’t open file “drivers/video/tegra/Kconfig”
    modify source_sync.sh
    
     SOURCE_INFO="
     k:kernel/kernel-5.10:nv-tegra.nvidia.com/linux-5.10.git:
    -k:kernel/nvidia/drivers/net/ethernet/nvidia/nvethernet/nvethernetrm:nv-tegra.nvidia.com/kernel/nvethernetrm.git:
     k:kernel/nvgpu:nv-tegra.nvidia.com/linux-nvgpu.git:
     k:kernel/nvidia:nv-tegra.nvidia.com/linux-nvidia.git:
    +k:kernel/nvidia/drivers/net/ethernet/nvidia/nvethernet/nvethernetrm:nv-tegra.nvidia.com/kernel/nvethernetrm.git:
     k:hardware/nvidia/platform/tegra/common:nv-tegra.nvidia.com/device/hardware/nvidia/platform/tegra/common.git:
     k:hardware/nvidia/soc/t19x:nv-tegra.nvidia.com/device/hardware/nvidia/soc/t19x.git:
     k:hardware/nvidia/platform/t19x/common:nv-tegra.nvidia.com/device/hardware/nvidia/platform/t19x/common.git:
     
    $ ./source_sync.sh
    $ cd Linux_for_Tegra/sources/kernel/nvidia
    $ cp -r drivers/video/tegra/  ../../kernel/kernel-5.10/drivers/video 
    
    
  • Build the kernel image with the following build.sh:
      #!/bin/bash
    
      pwd=$(dirname $(readlink -f $0))
      TEGRA_KERNEL_OUT=out
      export CROSS_COMPILE=/opt/gcc/aarch64--glibc--9.3/bin/aarch64-linux-
      export LOCALVERSION=-tegra1
    
      if [ -z "$TEGRA_KERNEL_OUT" ]; then
          mkdir -p $TEGRA_KERNEL_OUT
          fi
    
      make ARCH=arm64 O=$TEGRA_KERNEL_OUT tegra_defconfig
    
      make ARCH=arm64 O=$TEGRA_KERNEL_OUT -j8
    
    
  • 燒到板子...
    $ cp out/arch/arm64/boot/Image Linux_for_Tegra/kernel/
    $ sudo ./apply_binaries.sh
    
    Press RCM, 接上電
    lsusb:
        Bus 003 Device 013: ID 0955:7023 NVIDIA Corp. APX
    
    $ sudo ./flash.sh jetson-agx-orin-devkit mmcblk0p1
    
    ref: Here

沒有留言:

張貼留言