Tx2 spi can't be enabled

spidev_test.c (6.6 KB)
extracted_proc.dts.txt (391.3 KB)
I enable SPIDEV kernel config option, spidev device node were created
Not clock and data were send or recv on the bus, please help!
Thanks very much!

Have a reference to below link to set the pin by modified the cfg file.

Thank you for reply!
I try Jetpack4.2.3 an Jetpack3.3.2, spi still doesn’t work.
According https://elinux.org/Jetson/TX2_SPI, I modify the pinctrl cfg file, and verify them:
root@tegra-ubuntu:/home/nvidia/Downloads# cat /sys/kernel/debug/tegra_pinctrl_reg |grep -E “0x02430038|0x02430040|0x02430048|0x02430050”
Bank: 0 Reg: 0x02430038 Val: 0x00000401 -> gpio_cam4_pn3
Bank: 0 Reg: 0x02430040 Val: 0x00000455 -> gpio_cam5_pn4
Bank: 0 Reg: 0x02430048 Val: 0x00000401 -> gpio_cam6_pn5
Bank: 0 Reg: 0x02430050 Val: 0x00000409 -> gpio_cam7_pn6

Did you follow below to test the SPI function? Any kernel error message.


Yes, device spidev3.0 works.
But I can’t enable spidev3.1, which tegra x2 SPI1_CS1 pin name can’t be found in pinmux_template.xlsm
Could you show me the register and value of E13 in tegra186-mb1-bct-pinmux-quill-p3310-1000-c03.cfg?
I can modify manually.

Should be below REG

pinmux.0x0243d010 = 0x00000000; # GPIO spi1_cs0_pz6
pinmux.0x0243d050 = 0x00000000; # GPIO spi1_cs1_pz7

Sorry, for the previous comment. That is for the SPI1.
Looks like you are used SPI4 that the spi_cs1 didn’t pin out to the header.

I had use a gpio in place of cs1, config it as cs-gpio and it works.