jetPack4.6 &&4.5 jetson-io.py can not work

I want to use 40-headers pins. the steps is

  1. sudo /opt/nvidia/jetson-io/jetson-io.py

  2. Configure Jetson 40pin Header

  3. Configure header pins manually

  4. enter char * in spi1, spi3 or i2s5. Any of them will do

  5. save pin changes

  6. save an reboot to reconfigure pins

  7. reboot

  8. sudo modprobe spidev

Q, There is no spidev1.0 or spidev3.0. It only have spidev0.0 and spidev2.0. also no i2s

I check extlinux/extlinux.conf, it seems ok.
FDT path is /boot/kernel_tergra194-p3668-all-p3509-0000-user-custom.dtb

dmesg |grep dtb. it is no output.

dmesg |grep dts. print
DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-4.9/arch/arm64/boot/dts/…/…/…/…/…/…/hardware/nvidia/platform/t19x/jakku/kernel-dts/tergra194-p3668-all-p3509-0000.dts

jetPack4.5 have the same problem.

I open jetson-io.py again. It display ok.

hello jdsb,

it’s tegra-spidev according to device tree sources.
could you please try modify the string as spidev for testing?
for example,

	spi@3210000{ /* SPI1 in 40 pin conn */
		status = "okay";
		spi@0 { /* chip select 0 */
			compatible = "tegra-spidev";
...

thank you to reply.
I use dtc tools to check the dts which recomple from dtb.
It display a lot of warnning.

There is something different.
I enable spi1 spi3 i2s.

but

  1. dts only have spi1’s address.

  2. spi1 have not spi@0 and spi@1, so I copy them from spi0.

It does not work.
屏幕截图 2021-10-18 171442

hello jdsb,

are you able to execute the loopback test for confirmation.
please also refer to Topic 177675 for the NX SPI pin configuration.
thanks

The SPI1 is map to spidev0.x and SPI3 map to spidev2.x
SPI1 is HW name start from 1 and spidev0 is software name start from 0,
So
SPI1 = spi0 = spidev0.x = “spi@3210000”
SPI3 = spi2 = spidev2.x = “spi@3230000”

no,I test spidev0 and spidev2,There are no any signal output.

I upboard the uart debug message.
It tells me
OEM authentication of kernel-dtb header failed
Failed to validate kernel-dtb binary from rootfs

spi1.txt (26.6 KB)

[0014.770] I> rootfs path: /sd/boot/kernel_tegra194-p3668-all-p3509-0000-user-custom.dtb
[0014.806] I> Loading kernel-dtb sig file from rootfs …
[0014.807] I> rootfs path: /sd/boot/kernel_tegra194-p3668-all-p3509-0000-user-custom.dtb.sig
[0014.824] I> ext2_walk:142: ‘kernel_tegra194-p3668-all-p3509-0000-user-custom.dtb.sig’ lookup failed
[0014.824] I> ext4_open_file:666: ‘/boot/kernel_tegra194-p3668-all-p3509-0000-user-custom.dtb.sig’ lookup failed
[0014.825] E> file /sd/boot/kernel_tegra194-p3668-all-p3509-0000-user-custom.dtb.sig open failed!!
[0014.826] W> Failed to load kernel-dtb sig file (err=202113041)
[0014.832] I> Validate kernel-dtb …
[0014.836] I> T19x: Authenticate kernel-dtb (bin_type: 38), max size 0x400000
[0014.842] E> Stage2Signature validation failed with SHA2!!
[0014.848] C> OEM authentication of kernel-dtb header failed!
[0014.853] W> Failed to validate kernel-dtb binary from rootfs (err=1077936152, fail=1)
[0014.861] W> Security fuse not burned, ignore validation failure

Using jetson-io to enable SPI have verified working without problem.
Please using jetson-io and try the loopback test to confirm it.

Reference to below topic.

Thank you! You are right.
Now header-SPI1(spidev0.0 &0.1) is work ok!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.