This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于8127上SPI接口的通信问题



群内的各位同仁好!

    我使用的是8127 RDK3.8版本,在启用SPI接口时遇到了棘手的问题.

    因平台需要,我在kernel中启用了spi0~spi3,我在arch/arm/board-ti8148ipnc.c及devices.c中配置好,在kernel装载完毕后,在/dev/目录下也能看到

  /dev/spi2.0, /dev/spi3.0, /dev/spi4.0

具体我选择了spi3.0来做测试,我将spi3.0所指定的2个数据引脚短接(MISO<-->MOSI),使用kernel的Documentation/spi目录下的spidev_test.c编译好测试程序spidev-test

当我执行 ./spidev-test -D /dev/spi3.0时,

open device(/dev/spidev3.0)...
spi mode: 0
bits per word: 8
max speed: 500000 Hz (500 KHz)

程序就卡在这里, 后面就没有回应了,就是没收到数据回来.

关于spidev3.0的引脚复用我是如下设置的:

 TI814X_MUX(VOUT1_G_Y_YC2, OMAP_MUX_MODE5),    // SPI2_CS (0x4814 0B8C --> AF27,GP3[20])
 TI814X_MUX(VOUT1_R_CR3, OMAP_MUX_MODE5),    // SPI2_CLK(0x4814 0B90 --> AG28,GP3[21])
 TI814X_MUX(VOUT1_R_CR2, OMAP_MUX_MODE5),    // SPI2_D1(0x4814 0B94 --> AE27,GP3[22])
  TI814X_MUX(VOUT1_B_CB_C2, OMAP_MUX_MODE5),    // SPI2_D0(0x4814 0B98 --> AF28,GP3[30])

请多指教,谢谢!!

  • 你好,

    SPI1默认是在M3侧用于sensor的配置的,你能否确认相关代码是否有冲突?

  • 谢谢Chris Meng的回复.目前我测试的是/dev/spi3.0,即spi2,我把spi2的D1,D0两个引脚短接了,但运行Documentataion/spi/下的spidev_test测试程序还是收不到数据,挂起在那里...能告诉我一般是什么原因吗?

    /dev/spi2.0也测试了,能够执行过去但接收到的数据也不对,这个应该是有冲突,执行spidev_test -D /dev/spi2.0打印了如下的数据:

    open device(/dev/spidev2.0)...
    spi mode: 0
    bits per word: 8
    max speed: 500000 Hz (500 KHz)

    0xFF 0xFF 0xFF 0xFF 0xFF 0xFF

    ....

    而在spidev_test中发送的数据是:

        uint8_t tx[] = {
            0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
            0x40, 0x00, 0x00, 0x00, 0x00, 0x95,
            0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
            0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
            0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
            0xDE, 0xAD, 0xBE, 0xEF, 0xBA, 0xAD,
            0xF0, 0x0D,
        };

    我现在测试的是/dev/spi3.0,想找找为什么收不到数据的原因.

  • 你好,

    你有使能EDMA么?

    看看下面的讨论是否有帮助:

    https://e2e.ti.com/support/embedded/tirtos/f/355/p/142054/512680

    https://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/t/430923

  • 感谢Chris Meng的回复...你所发的链接有一个遇到的问题跟我目前所提的问题一样,只可惜最后并没有提到解决办法