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.

[参考译文] AM6442:AM64x:获取错误"ti-sci-clk 44043000.system-controller:clock-controller:在引导期间、dev=62、clk=3、ret=–19&quot 时 Recalc-rate 失败

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1583343/am6442-am64x-getting-error-ti-sci-clk-44043000-system-controller-clock-controller-recalc-rate-failed-for-dev-62-clk-3-ret--19-during-boot

器件型号: AM6442

你好。

我是一个搜索和销毁 Misson 清理 dmesg 在启动时。

我们看到的消息是“ti-sci-clk 44043000.system-controller:clock-controller:recalc-rate failed for dev=62、clk=3、ret=–19"。“。

通过一些搜索、可以发现我认为器件树文件中存在的错误: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-am64-main.dtsi#n1404

此处此处的文档 表明器件 ID #62 为 AM64X_DEV_EQEP2、不是 AM64X_DEV_PRU_ICSSG0(器件 ID #81)

将 dtsi 线路更改为“Clocks =<&K3_CLKS 81 0>;“(镜像 AM64X_DEV_PRU_ICSSG1 — 器件 ID #82 的设置)会使错误消失。

Bryan

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

    您好 Bryan、

    感谢您的举报。 这看起来像一个错误。 请给我一天左右的时间、确认我们要将 ICSSG 器件 ID 用于 MDIO 时钟、而不是其他用途。 如果星期四没有回复、请 ping 通该线程。

    此致、

    Nick

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

    你好、Nick。

    感谢您的更新。 还有新消息吗?

    我很好奇为什么“&k3_CLKS 81 0“在末尾有一个零而不是 21、那么我又不是真的确定它是如何使用的。

    根据时钟文档、器件树中不会出现“DEV_PRU_ICSSG0_PR1_MDIO_MDCLK_O"。“。

    Bryan

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

    您好 Bryan、

    我不清楚有关 MDIO 时钟信号如何引脚的文档:

    我在 AM64x 时钟树工具中看不到信号路径、也没有在 TRM 中看到任何明显的时钟映射。 我将尝试与 Linux 开发团队聊天、以便从他们这边获取更多信息。 信息可能是明天来的、也可能是下周中下旬我下班后回来的。

    有关进入 PRU 内核的时钟(以及如何更改)的讨论、请参阅此常见问题解答:
    【常见问题解答】PRU_ICSSG:如何在 Linux 中查看和设置 PRU 内核频率?

    此致、

    Nick

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

    您好 Bryan、

    您使用的是哪个 SDK 版本? 我没有观察到 Linux SDK 11.0 未修改启动时的输出:

    root@am64xx-evm:~# uname -a
    Linux am64xx-evm 6.12.17-g968baaea3a83 #1 SMP PREEMPT_RT Thu Apr 17 13:29:56 CDT 2025 aarch64 GNU/Linux
    
    root@am64xx-evm:~# dmesg | grep 44043000
    [    1.216966] ti-sci 44043000.system-controller: ABI: 4.0 (firmware rev 0x000b '11.0.7--v11.00.07 (Fancy Rat)')
    
    // link up on ICSSG port
    root@am64xx-evm:~# dmesg | grep pru
    [   12.028765] remoteproc remoteproc5: 3000a000.txpru is available
    [   12.032450] remoteproc remoteproc6: 3000c000.txpru is available
    [   12.068392] remoteproc remoteproc7: 3008a000.txpru is available
    [   12.082006] remoteproc remoteproc8: 3008c000.txpru is available
    [   12.671273] remoteproc remoteproc9: 30034000.pru is available
    [   12.707230] remoteproc remoteproc11: 30038000.pru is available
    [   12.716045] remoteproc remoteproc13: 300b4000.pru is available
    [   12.742118] remoteproc remoteproc15: 300b8000.pru is available
    [   12.851016] icssg-prueth icssg1-eth: TI PRU ethernet driver initialized: single EMAC mode
    [   14.081312] remoteproc remoteproc13: powering up 300b4000.pru
    [   14.103202] remoteproc remoteproc13: Booting fw image ti-pruss/am65x-sr2-pru0-prueth-fw.elf, size 39636
    [   14.103283] remoteproc remoteproc13: remote processor 300b4000.pru is now up
    [   14.104912] remoteproc remoteproc14: Booting fw image ti-pruss/am65x-sr2-rtu0-prueth-fw.elf, size 30444
    [   14.105020] remoteproc remoteproc7: powering up 3008a000.txpru
    [   14.116711] remoteproc remoteproc7: Booting fw image ti-pruss/am65x-sr2-txpru0-prueth-fw.elf, size 39188
    [   14.116781] remoteproc remoteproc7: remote processor 3008a000.txpru is now up
    [   14.116830] remoteproc remoteproc15: powering up 300b8000.pru
    [   14.125489] remoteproc remoteproc15: Booting fw image ti-pruss/am65x-sr2-pru1-prueth-fw.elf, size 39796
    [   14.125668] remoteproc remoteproc15: remote processor 300b8000.pru is now up
    [   14.131493] remoteproc remoteproc16: Booting fw image ti-pruss/am65x-sr2-rtu1-prueth-fw.elf, size 29680
    [   14.133194] remoteproc remoteproc8: powering up 3008c000.txpru
    [   14.135945] remoteproc remoteproc8: Booting fw image ti-pruss/am65x-sr2-txpru1-prueth-fw.elf, size 37676
    [   14.136108] remoteproc remoteproc8: remote processor 3008c000.txpru is now up
    [   17.254045] icssg-prueth icssg1-eth eth2: Link is Up - 1Gbps/Full - flow control off
    
    root@am64xx-evm:~# dmesg | grep recalc
    root@am64xx-evm:~# dmesg | grep mdio
    [    1.728202] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.761607] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.765055] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
    [   11.616822] davinci_mdio 300b2400.mdio: Configuring MDIO in manual mode
    [   11.649681] davinci_mdio 300b2400.mdio: davinci mdio revision 1.7, bus freq 1000000
    [   11.929040] davinci_mdio 300b2400.mdio: phy[15]: device 300b2400.mdio:0f, driver TI DP83869
    [   12.840019] TI DP83869 300b2400.mdio:0f: attached PHY driver (mii_bus:phy_addr=300b2400.mdio:0f, irq=POLL)
    [   13.011449] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
    [   13.063324] am65-cpsw-nuss 8000000.ethernet eth1: PHY [mdio_mux-0.1:03] driver [TI DP83869] (irq=POLL)
    

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

    你好、Nick。

    已商定对于 ICSSG MDIO 的时钟源没有太多信息。 AM65x 使用“vclk"输入“输入(顺便说一句,错误来自哪里 — DEV ID 62、时钟 ID 3 位于 AM65x 器件树中,并根据文档进行更正)。

    我不是直接使用 SDK(试图使所有 Yocto 工程都保持相同的工作流程)、而是在 SDK 11 上有效地使用了标记 11.02.03(我想这就是它的样子)。

    Bryan

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

    Nick。

    此处的输出也与您上面给出的命令相匹配。

    Bryan

    root@dev-machine:~# uname -a
    Linux dev-machine 6.12.49-ti-g9b2678be3a92-dirty #1 SMP PREEMPT Wed Oct 29 18:36:53 UTC 2025 aarch64 GNU/Linux
    root@dev-machine:~# 
    root@dev-machine:~# dmesg | grep 44043000
    [    0.256036] ti-sci 44043000.system-controller: ABI: 4.0 (firmware rev 0x000b '11.2.0--v11.02.00 (Fancy Rat)')
    [    0.375515] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=62, clk=3, ret=-19
    [    2.329905] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=62, clk=3, ret=-19
    root@dev-machine:~# 
    root@dev-machine:~# 
    root@dev-machine:~# dmesg | grep pru
    [    3.609341] remoteproc remoteproc0: 3000a000.txpru is available
    [    3.624527] remoteproc remoteproc1: 3000c000.txpru is available
    [    3.651807] remoteproc remoteproc2: 3008a000.txpru is available
    [    3.674512] remoteproc remoteproc3: 3008c000.txpru is available
    [    5.363853] remoteproc remoteproc4: 30034000.pru is available
    [    5.412060] remoteproc remoteproc6: 30038000.pru is available
    [    5.436192] remoteproc remoteproc8: 300b8000.pru is available
    [    5.474752] icssg-prueth icssg0-ethernet: TI PRU ethernet driver initialized: single EMAC mode
    [    5.490770] remoteproc remoteproc10: 300b4000.pru is available
    [    5.810332] icssg-prueth icssg0-ethernet J5: renamed from eth0
    [    5.927996] remoteproc remoteproc4: powering up 30034000.pru
    [    5.960239] remoteproc remoteproc4: Booting fw image ti-pruss/am64x-sr2-pru0-prueth-fw.elf, size 39724
    [    5.975617] remoteproc remoteproc4: remote processor 30034000.pru is now up
    [    5.990894] remoteproc remoteproc5: Booting fw image ti-pruss/am64x-sr2-rtu0-prueth-fw.elf, size 32052
    [    6.007532] remoteproc remoteproc0: powering up 3000a000.txpru
    [    6.019897] remoteproc remoteproc0: Booting fw image ti-pruss/am64x-sr2-txpru0-prueth-fw.elf, size 39272
    [    6.029563] remoteproc remoteproc0: remote processor 3000a000.txpru is now up
    [    6.043275] remoteproc remoteproc6: powering up 30038000.pru
    [    6.050451] remoteproc remoteproc6: Booting fw image ti-pruss/am64x-sr2-pru1-prueth-fw.elf, size 39884
    [    6.065489] remoteproc remoteproc6: remote processor 30038000.pru is now up
    [    6.079541] remoteproc remoteproc7: Booting fw image ti-pruss/am64x-sr2-rtu1-prueth-fw.elf, size 31284
    [    6.095916] remoteproc remoteproc1: powering up 3000c000.txpru
    [    6.103205] remoteproc remoteproc1: Booting fw image ti-pruss/am64x-sr2-txpru1-prueth-fw.elf, size 37760
    [    6.112860] remoteproc remoteproc1: remote processor 3000c000.txpru is now up
    [    9.184218] icssg-prueth icssg0-ethernet J5: Link is Up - 1Gbps/Full - flow control off
    root@dev-machine:~# 
    root@dev-machine:~# 
    root@dev-machine:~# dmesg | grep recalc
    [    0.375515] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=62, clk=3, ret=-19
    root@dev-machine:~# 
    root@dev-machine:~# 
    root@dev-machine:~# dmesg | grep mdio  
    [    2.032837] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    2.074688] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    2.087202] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
    [    2.095328] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver TI DP83867
    [    3.334456] davinci_mdio 30032400.mdio: Configuring MDIO in manual mode
    [    3.381493] davinci_mdio 30032400.mdio: davinci mdio revision 1.7, bus freq 1000000
    [    3.446967] davinci_mdio 30032400.mdio: phy[4]: device 30032400.mdio:04, driver TI DP83867
    [    4.114154] am65-cpsw-nuss 8000000.ethernet J2: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
    [    4.314471] am65-cpsw-nuss 8000000.ethernet J1: PHY [8000f00.mdio:01] driver [TI DP83867] (irq=POLL)
    [    5.464147] TI DP83867 30032400.mdio:04: attached PHY driver (mii_bus:phy_addr=30032400.mdio:04, irq=POLL)
    root@dev-machine:~# 

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

    你好、Nick。

    是否有任何更新?

    TIA

    Bryan