Hello, when using the third-party carrier board, I needed to enable SPI1. So I modified the device tree.
spi@c260000 {
iommus = <0x03 0x04>;
#address-cells = <0x01>;
dma-coherent;
clock-names = "spi\0pll_p\0osc";
nvidia,clk-parents = "pll_p\0osc";
resets = <0x02 0x5c>;
interrupts = <0x00 0x25 0x04>;
clocks = <0x02 0x88 0x02 0x5e 0x02 0x5b>;
#size-cells = <0x00>;
spi-max-frequency = <0x3dfd240>;
dma-names = "rx\0tx";
compatible = "nvidia,tegra186-spi";
status = "okay";
reg = <0x00 0xc260000 0x00 0x10000>;
phandle = <0x38f>;
dmas = <0x05 0x10 0x05 0x10>;
reset-names = "spi";
spi@0 {
compatible = "tegra-spidev";
reg = <0x00>;
spi-max-frequency = <0x2faf080>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,tx-clk-tap-delay = <0x00>;
nvidia,rx-clk-tap-delay = <0x10>;
};
};
prod-settings {
#prod-cells = <0x04>;
prod {
prod = <0x00 0x194 0x80000000 0x00>;
};
};
};
In the /dev directory, it can be seen that SPI1 has been enabled successfully and spi@0 has been added successfully.
![]()
Then I ran the “spidev_test” program. It could be seen that spi0 passed the test, but spi1 did not receive any data.
How to troubleshoot the problem




