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.

[参考译文] SPI 时钟固定并且不发生变化、并且 GPIO 片选 (CS) 信号未能变为高电平。

Guru**** 2536510 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1563068/the-spi-clock-is-fixed-and-does-not-change-and-the-gpio-chip-select-cs-signal-fails-to-go-high

器件型号:TDA4VH-Q1
Thread 中讨论的其他器件:TDA4VH

工具/软件:

你(们)好
 TDA4VH  ti-processor-sdk-linux-adas-j784s4-evm-09_02_00_05

我使用 4 个 GPIO 作为 CS、并已验证引脚多路复用设置是否正确。

  1. .../spidev_test -s 3000000 -D /dev/spidev2.1 -C -p “1233456789abcdefghigklmnopq" spiclk“ spiclk 保持在 120kHz


此致、  
6 月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Jun、

    McSPI 时钟对于它可以分频到的时钟有一些硬件限制。 您是否可以尝试将时钟更改为下表中的时钟速率之一?

    此致、

    Takuma

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Takuma

       mcspi->ref_clk_Hz 为 0。

    如何使其获得 50MHz 或其他非零值?

    static int OMAP2_mcspi_setup_transfer(结构 SPI_DEVICE *SPI
    结构 SPI_TRANSFER *t)
    结构 OMAP2_mcspi_cs <:cs =spi->controller_state;
    结构 OMAP2_mcspi *mcspi;
    u32 ref_clk_Hzl = 0、clkd = 0、div、extclk = 0Clkg = 0
    U8 word_len = spi->bits_per_word
    u32 speed_Hz = spi->max_speed_Hz
    // printk(“spi->max_speed_Hz %d\n“、speed_Hz);
    mcspi = spi_master_get_devdata (spi->master);

    if (t != NULL && t->bits_per_word)
    word_len = t->bits_per_word;

    cs->word_len = word_len

    IF (t && t->SPEED_Hz)
    speed_Hz = t->speed_Hz

    // printk(“SPEED_HZ %d、t->SPEED_HZ %d\n“、SPEED_Hz、t->SPEED_HZ);
    ref_clk_Hz = mcspi->ref_clk_Hz
    printk(“ref_clk_Hz %d\n“、ref_clk_Hz);
    ...
    }
    此致、  
    6 月
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Jun、

    可能与此 E2E 主题中出现的问题有关:  

     关于:AM68A:Linux 器件树 spi-max-frequency 

    是否可以尝试更新的 SDK 版本?

    此致、

    Takuma