I’m trying debug the spi1 interface on our custom board. I am using the spidev_test as the first way of testing if loopback works (by shorting MISO and MOSI)-while doing this I am also monitoring the clock .
here is the result of SPI1 testing(use the spidev0.0);
as you can watch is that the loopback test failed. And what confuses me even more is that when I use an oscilloscope to measure the clock and MOSI signals, no waveforms are generated.
Sorry, due to the forum’s restrictions on new users, I will still use the QOP account to communicate with you.
I dtc the device-tree found that the pinmux just modify the only one pin (SPI1_CS1_PZ7),so we can watch it on pinmux-pins.So I try to add the point on my overlay dtbo like this:
It seems you configured something error in overlay dtsi.
I think jetson-io will do those works and generate /boot/jetson-io-hdr40-user-custom.dtbo after reboot.
You don’t need to modify them in device tree manually.
I have created my own DTBO to adapt to our custom requirements, so I need to add relevant content in our own overlay.and I will send you our custom dtsi,(leopard-overlay.txt and leopard-camera-modules-imx728-overlay),I can use the overlay before I add the “fragment-camera-pinmux@0” part.
I am not only dtc the jetson-io-hdr40-user-custom.dtbo but also ref the source code “tegra234-p3737-0000+p3701-0000-hdr40.dts” to check my changes.But still has the error.
Although I still don’t understand why directly setting the function of these pins to SPI in the pinmux configuration file didn’t take effect, I want to first try using the overlay method to configure them and see if it can resolve the issue.
I would suggest you run the following command and check if the overlay has been applied correctly in.
(i.e. if your customizations have been included in extracted_proc.dts).
Have you also verified if SPI loopback test working on the AGX Orin devkit to clarify if the issue is specific to your custom board or if your verification steps are correct?
and I think I know why the config-by-hardware.py take error log ;If I want to change the pinmux function I must use this “jetson-header-name = “Jetson 40pin Header”;“ in dts. How we can combine the pin config with csi config?
It seems you pinmux configuration for SPI not included in pinmux@2430000 {.
I will suggest you just flashing clean JP6.2(r36.4.3) and use Jetson-IO to enable SPI function.
You should be able to see them configured in pinmux@2430000 {.
Or do you have custom design of 40pins header on the custom carrier board?
If so, Jetson-IO tool may not work for your case.
yes,I have flashed the clean JP6.2(r36.4.3) and use Jetson-IO to enable SPI function.And it can work.but we have custom design of 40pins header on the custom carrier board.I have a question about PINMUX config file
we use the file “Orin-jetson_agx_orin-pinmux.dtsi” to config the custom board ,and check a lot pinmux function result like uart ,gpio .They all worked ,but only the spi1 dont work.
if I dont config the spi in pinmux@2430000{ ,it will use the pinmux.conf ?