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.

[参考译文] AM625:EVK (PROC114E3)的 OSPI 闪存用作 QSPI 不工作

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1206334/am625-ospi-flash-memory-of-the-evk-proc114e3-as-a-qspi-not-working

器件型号:AM625

您好!


我们已经尝试测试了 EVK 的 OSPI 闪存( PROC114E3 )作为 QSPI、通过执行建议的硬件和软件修改、但我们无法将存储器检测为 QSPI、它可以很好地用作 OSPI。

我们已遵循以下链接中提及的有关软件的建议、但该软件不起作用。

3.2.2.10. OSPI/QSPI–Processor SDK AM62x 文档

提示0 (&O){
       闪存@0{
               兼容="Spansion、s28hs512t"、"JEDEC、SPI-NOR";
               寄存器=<0x0>;
               SPI-TX-BUS-width =<1>;
               SPI-Rx-bus-width =<4>;
               SPI-max-frequency =<25000000>;
               CDN、tshsl-ns =<60>;
               CDN、tsd2d-ns =<60>;
               cdns,tchsh-ns =<60>;
               CDN、tslch-ns =<60>;
               CDN、读取延迟=<4>;
               CDN、phy-mode;

 

               分区{
                       兼容="固定分区";
                       #address-Cells =<1>;
                       #size-cells =<1>;

 

                       分区@0{
                               label ="ospi.tiboot3";
                               寄存器=<0x0 0x80000>;
                       };

 

                       分区@80000{
                               label ="ospi.tispl";
                               寄存器=<0x80000 0x200000>;
                       };

 

                       分区@280000 {
                               label ="ospi.u-boot";
                               REG =<0x280000 0x400000>;
                       };

 

                       分区@680000 {
                               label ="ospi.env";
                               REG =<0x680000 0x40000>;
                       };

                       分区@6c0000 {
                               label ="ospi.env.backup";
                               REG =<0x6c0000 0x40000>;
                       };

 

                       分区@800000{
                               label ="ospi.rootfs";
                               寄存器=<0x800000 0x37c0000>;
                       };

 

                       分区@3fc0000 {
                               label ="ospi.phypatern";
                               REG =<0x3fc0000 0x40000>;
                       };
               };
       };
};

错误:

[   1.133941] SPI spi0.0:设置:忽略不受支持的模式位200
[   1.140344] SPI-NOR spi0.0:无法识别的 JEDEC id 字节:FF ff ff ff FF

请提出您宝贵的想法和解决问题的方法。

谢谢。

金坛克

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

    尊敬的  Chintan:

    让我找到其中一个开发板、看看需要如何配置它。 我们很快就会回复您。

    此致、Andreas

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

    您可以通过进行以下更改在我们的 AM62-SK EVM 上演示4线 QSPI 模式:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    a0797059@dasso:~/git/linux (HEAD detached at 08.06.00.006)
    $ git diff
    diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
    index bd5463076e92..a2e484278dd8 100644
    --- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts
    +++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
    @@ -125,8 +125,8 @@ &ospi0 {
    spi_nor_flash: flash@0 {
    compatible = "jedec,spi-nor";
    reg = <0x0>;
    - spi-tx-bus-width = <8>;
    - spi-rx-bus-width = <8>;
    + spi-tx-bus-width = <1>;
    + spi-rx-bus-width = <4>;
    spi-max-frequency = <25000000>;
    cdns,tshsl-ns = <60>;
    cdns,tsd2d-ns = <60>;
    diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
    index 95ca9e6482ba..2689f6a36dfe 100644
    --- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
    +++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    然后使用该 DTB 文件引导、您在内核日志中获得以下条目、指示 OSPI 器件探针运行良好:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    root@am62xx-evm:~# dmesg | grep spi
    [ 1.221081] spi-nor spi0.0: s28hs512t (65536 Kbytes)
    [ 1.226115] 7 fixed-partitions partitions found on MTD device fc40000.spi.0
    [ 1.233068] Creating 7 MTD partitions on "fc40000.spi.0":
    [ 1.238462] 0x000000000000-0x000000080000 : "ospi.tiboot3"
    [ 1.245188] 0x000000080000-0x000000280000 : "ospi.tispl"
    [ 1.251529] 0x000000280000-0x000000680000 : "ospi.u-boot"
    [ 1.257966] 0x000000680000-0x0000006c0000 : "ospi.env"
    [ 1.264098] 0x0000006c0000-0x000000700000 : "ospi.env.backup"
    [ 1.270876] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
    [ 1.277300] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    然后、作为一个附加实验、当我删除与芯片选择相关的 pinmux 条目
    AM62X_IOPAD (0x02c、PIN_OUTPUT、0)/*(F23) OSPI0_CSn0 */
    我基本上得到与您报告的错误相同的错误:

    Fullscreen
    1
    2
    3
    root@am62xx-evm:~# dmesg | grep spi
    [ 1.220831] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
    [ 1.227774] spi-nor: probe of spi0.0 failed with error -2
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    此致、Andreas

x 出现错误。请重试或与管理员联系。