How to improve SPI speed at TX1

Dear,

SPI of TX1 is enabled and gathering data from FLIR Repton 3.5 module.
Here, Lepton requires under 125us to read 1 packet for normal operation.
Jetson TX1, however, spends 250~350us to do.

It seems like that TX1 waits some time about 200us between TX and RX or interrupts.
Would you advise how to improve SPI Speed here?

Thanks,

Could you try add below to your DT to try.
spi@xxxxx{

  •   nvidia,polling-mode;
    
  •   nvidia,disable-runtime-pm;
      status = "okay";
    
    };

Shane,

Thanks for your advice. but it did not improve this situation.

If I add something,

  • after JetPack upgrading from 28.2.1 to 28.3, speed slightly improved.
    (250~350us to 170~220us)
    for this job, tegra_spi_clear_status(in spi-tegra114.c) function has small modification as follows;
/* Read back status register to confirm interrrupt is cleared */
	val = tegra_spi_readl(tspi, SPI_TRANS_STATUS);

But Repton should receive data within 125us to accomplish 1 packet, this time is too long.
tegra_spi_status_pollfunction may read SPI_TRANS_STATUS to figure out SPI_RDY is set or not.
This bit/register,IMO, seems to need time to be set.

How to improve it?

Thanks

Does boost to performance mode help on this. (sudo ./jetson_clocks.sh)

Thanks Shane,

Boost helped here!