Following the instructions that are in building the kernel, it does not work. I have to set CROSS_COMPILE and some other stuff to get a build.
Now go to build dtbs it points to my build box for src and obj trees
fred@eng-ai1:~/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source$ sudo make dtbs
================================================================================
make nvidia-dtbs ...
================================================================================
TEGRA_TOP=/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source \
srctree=/lib/modules/6.8.0-49-generic/build \
objtree=/lib/modules/6.8.0-49-generic/build \
oottree=/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree \
HOSTCC=gcc \
make -f /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/scripts/Makefile.build \
obj=/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts \
dtbs
make[1]: Entering directory '/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source'
# DTC /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/tegra234-p3737-0000+p3701-0004.dtb
mkdir -p /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/ ; gcc -E -Wp,-MMD,/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.d.pre.tmp -nostdinc -I/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/tegra/nv-public -I/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/include/kernel -I/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/include/nvidia-oot -I/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/include/platforms -I/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public -I/lib/modules/6.8.0-49-generic/build/scripts/dtc/include-prefixes -DLINUX_VERSION=600 -DTEGRA_HOST1X_DT_VERSION=2 -undef -D__DTS__ -x assembler-with-cpp -o /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.dts.tmp /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts/../..//hardware/nvidia/t23x/nv-public/staging/tegra234-p3737-0000+p3701-0004.dts ; /lib/modules/6.8.0-49-generic/build/scripts/dtc/dtc -o /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/tegra234-p3737-0000+p3701-0004.dtb -b 0 -i/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts/../..//hardware/nvidia/t23x/nv-public/staging/ -i/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/tegra/nv-public -i/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/include/kernel -i/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/include/nvidia-oot -i/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public/include/platforms -i/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/hardware/nvidia/t23x/nv-public -i/lib/modules/6.8.0-49-generic/build/scripts/dtc/include-prefixes -Wno-interrupt_provider -Wno-unit_address_vs_reg -Wno-unit_address_format -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-simple_bus_reg -Wno-unique_unit_address -@ -@ -@ -@ -Wno-interrupt_provider -Wno-unit_address_vs_reg -Wno-unit_address_format -Wno-avoid_unnecessary_addr_size -Wno-alias_paths -Wno-graph_child_address -Wno-simple_bus_reg -Wno-unique_unit_address -d /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.d.dtc.tmp /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.dts.tmp ; cat /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.d.pre.tmp /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.d.dtc.tmp > /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/.tegra234-p3737-0000+p3701-0004.dtb.d
/bin/sh: 1: /lib/modules/6.8.0-49-generic/build/scripts/dtc/dtc: not found
make[1]: *** [/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts/Makefile:118: /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts//hardware/nvidia/t23x/nv-public/staging/tegra234-p3737-0000+p3701-0004.dtb] Error 127
make[1]: Leaving directory '/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source'
make: *** [Makefile:173: nvidia-dtbs] Error 2
I have to repoint those 2 and explicitly define path to DTC.
What is up with all of this?
Also, why are the instructions that explicitly state how to actually create a meaningful overlay omitted. Is this intentional, the trivial example using dtc only works when you don’t need to include files (needs cpp), hence 100% USELESS when using the pinmux spreadsheet.
I have placed the 2 files in the exact locations as stated in the instructions. make dtbs, So where are they, don’t see them…
After repointing:
egra/source/kernel-devicetree/generic-dts/dtbs/ ; \
fi
if [ -d /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts/hardware/ ] ; then \
rm -rf /home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source/kernel-devicetree/generic-dts/hardware/ ; \
fi
make[1]: Leaving directory '/home/fred/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source'
================================================================================
DTBs compiled successfully.
================================================================================
fred@eng-ai1:~/yocto/nvidia-overlay-tree-orin-nano/Linux_for_Tegra/source$
I placed the pinmux files in the exact location as stated in the instructions, nothing.
Can any one point me to the instructions that work, this is getting a little old. I am fumbling around in multiple sections of the manual to find this and that and it is not working and key parts are intentionally missing.