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.

[参考译文] AM5718:McSPI2配置

Guru**** 2540720 points
Other Parts Discussed in Thread: AM5718

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/861850/am5718-mcspi2-configuration

器件型号:AM5718

我使用的是 AM5718 IDK EVM 和 ti-processor-sdk-linux-am57xx-evm-05.03.00.07。 我已启用 McSPI2并已成功完成 McSPI 传输 。


我有一个小问题。

我修改了 am57xx-idk-common.dts、如下所示以启用 McSPI2:

--------------

mcspi2{(&M)
状态="正常";
TI、pidd-d0-out-d1-in;

mydev@0{
兼容="Rohm、dh2228fv";
SPI-max-frequency =<1000000>;
reg =<0>;//芯片选择0
SPI-cpol;
};
};

----------------------------
在本例中创建了/dev/spidev1.0、我无法打开它。


如果我同时启用 McSPI1和 MCSPI2、则会创建/dev/spidev1.0和/dev/spidev2.0、如下所示:

----------------------------------------
mcspi1{(&M)
状态="正常";
TI、pidd-d0-out-d1-in;

mydev@0{
兼容="Rohm、dh2228fv";
SPI-max-frequency =<1000000>;
reg =<0>;//芯片选择0
SPI-cpol;
};
};
mcspi2{(&M)
状态="正常";
TI、pidd-d0-out-d1-in;

mydev@0{
兼容="Rohm、dh2228fv";
SPI-max-frequency =<1000000>;
reg =<0>;//芯片选择0
SPI-cpol;
};
};

----------------------------------

在本例中、我能够访问/dev/spidev2.0并成功执行 McSPI 传输。

我只想使用 McSPI2。 您能告诉我如何在 DTS 中添加单个节点 mcspi2并启用/dev/spidev2.0吗?

Anupama

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

    Anupama、您好!

    [引用用户="Anupama Sreekumar"]

    我修改了 am57xx-idk-common.dts、如下所示以启用 McSPI2:

    --------------

    mcspi2{(&M)
    状态="正常";
    TI、pidd-d0-out-d1-in;

    mydev@0{
    兼容="Rohm、dh2228fv";
    SPI-max-frequency =<1000000>;
    reg =<0>;//芯片选择0
    SPI-cpol;
    };
    };

    ----------------------------
    在本例中创建了/dev/spidev1.0、我无法打开它。

    [/报价]

    您能否尝试以下更新、是否有任何改进?

    mcspi2{(&M)
    状态="正常";
    TI、pidd-d0-out-d1-in;

     - mydev@0{
    + mydev@2{

    兼容="Rohm、dh2228fv";
    SPI-max-frequency =<1000000>;
    reg =<0>;//芯片选择0
    SPI-cpol;
    };
    };

     

    另请查看以下 e2e 帖子:

    https://e2e.ti.com/support/processors/f/791/p/825139/3054265#3054265

    此致、
    帕维尔

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

    您好、Pavel、

            我根据您的建议仅在 DTS 中添加了一个 mcspi2节点(+ mydev@2)。 现在创建了/dev/spidev1.0。 我可以打开它并进行数据传输。 /dev/spidev1.0似乎对应于我的 mcspi2节点。

    我之前的观察是错误的。 如果我添加 mcspi2节点(使用 mydev@0)、   则会创建/dev/spidev1.0。   我可以打开它并进行数据传输。 这 也对应于我的 mcspi2节点。

    但是、如果我添加&mcspi1和 mcspi2、 则 会创建/dev/spidev1.0和/dev/spidev2.0。

    我完成了您的回复中提到的主题。 我无法在中找到 B 的关系  

    "dev/spidevB.C - B 是总线(即 mcspi2)、C 是芯片选择(即 CS0)-/dev/spidev2.0

    此致、

    Anupama

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

    Anupama、

    spidevB 从0开始。

    AM5718 McSPI 从1开始。

    因此、spidev1对应于 McSPI2。

    另请查看以下 AM335x BBB 示例、其中我们从 McSPI0开始:

    elinux.org/BeagleBone_Black_Enable_SPIDEV

    此致、
    帕维尔

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

    感谢 Pavel

    Anupama