Hi @KevinFFF,
Quick update:
- SPI is working now. The root cause was pin direction: I had SCK configured as input. Once I set SCK/MOSI/CS as outputs and MISO as input in the pinmux, transfers started working at least on the logic analyzer. I had assumed the driver would auto-set directions when the SPI function is selected (as on other platforms), but that doesn’t seem to be the case here.
Remaining issue – extlinux overlay not applied:
I’m trying to disable cam_i2cmux at boot (it grabs GPIO331). I’m pointing to my DTB and adding an overlay, but it’s not taking effect.
/boot/extlinux/extlinux.conf:
TIMEOUT 30
DEFAULT primary
MENU TITLE L4T boot options
LABEL primary
MENU LABEL primary kernel
LINUX /boot/Image
INITRD /boot/initrd
FDT /boot/dtb/kernel_tegra234-p3767-0003-p3768-0000-a0_custom_rec.dtb
OVERLAYS /boot/overlays/cam_i2cmux-disable.dtbo
APPEND ${cbootargs} extdtb=TEST_P3767_A0 testflag=hello
LABEL JetsonIO
MENU LABEL Custom Header Config: <HDR40 User Custom [2024-06-17-224303]>
LINUX /boot/Image
FDT /boot/kernel_tegra234-p3767-0003-p3768-0000-a0-user-custom.dtb
INITRD /boot/initrd
APPEND ${cbootargs} extdtb=TEST_P3767_A0 testflag=hello
/boot/overlays/cam_i2cmux-disable.dtbo decompiled:
**** fdtdump is a low-level debugging tool, not meant for general use.
**** If you want to decompile a dtb, you probably want
**** dtc -I dtb -O dts <filename>
/dts-v1/;
// magic: 0xd00dfeed
// totalsize: 0xda (218)
// off_dt_struct: 0x38
// off_dt_strings: 0xbc
// off_mem_rsvmap: 0x28
// version: 17
// last_comp_version: 16
// boot_cpuid_phys: 0x0
// size_dt_strings: 0x1e
// size_dt_struct: 0x84
/ {
compatible = "nvidia,tegra234";
fragment@0 {
target-path = "/cam_i2cmux";
__overlay__ {
status = "disabled";
};
};
};
But after reboot the node /proc/device-tree/cam_i2cmux is still present and active.
Questions:
- Is
OVERLAYSsupported by UEFI on R35.3.1? If yes, where can I see logs confirming it parsed/applied the.dtbo? - Any required naming/header specifics for Orin overlays beyond
/plugin/andcompatible = "nvidia,tegra234"? - If
OVERLAYSisn’t honored on R35.3.1, what’s the recommended way to disablecam_i2cmux? - How to disable “special” ports??. The spreadsheet only generates pinmux/gpio/padvoltage
.dtsi. It doesn’t touch camera/I²C muxes (e.g.cam_i2cmux/i2c-mux-gpio).
Thanks for your support!