器件型号: TDA4AEN-Q1
我们的软件开发人员无法找到在 SDK 中查找用于串行器/解串器配置的 PLL 时钟多路复用器控制的位置。
(02d8fc9f-a86a-4916-8763-7eb8d78b8cde)
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.
器件型号: TDA4AEN-Q1
我们的软件开发人员无法找到在 SDK 中查找用于串行器/解串器配置的 PLL 时钟多路复用器控制的位置。
(02d8fc9f-a86a-4916-8763-7eb8d78b8cde)
感谢 Sudheer 你的迅速答复!
工作内容包括:
但 0x0f00e000 处的 CMN 寄存器仍然无法写入! 全部返回 0x0。
此陈述是否正确?
“当 PHY 保持复位状态时、某些串行器/解串器需要对寄存器进行编程。“
顺便说一下、我要尝试在 U-boot 中实现 SGMII-以太网。
感谢您的建议。
谢谢、
工作配置
J722S SR1.0 FS 定制板
具有非 TI PHY 的 SGMII 配置
3.串行器/解串器电源域 279 成功启用
4.可以写入 wiz 包装器寄存器 (0xf000400)
5.所有时钟、复位、phy_en_refclk 配置正确
问题
串行器/解串器 PHY 内核寄存器 (0xF00e000-0xF010000) 是只读的
-所有寄存器写入回读时返回 0x0
-在 R5 SPL、A53 SPL 和 A53 U-Boot 中测试 — 结果相同
- CMN/TX/RX 寄存器编程失败
-初始化挂起等待 CMN 就绪
是否有 J722S 串行器/解串器 PHY 内核的防火墙 ID、因此我们可以使用以下命令配置权限:
TI_sci_handle ->opps.fwl_ops ->set_fwl_region()?
谢谢、
=> MD 0x00104080 1
00104080:00000001…
=> MD 0x0f00040c 1
0f00040c: 50000000 .
=> MD 0x0f00e000 1
0f00e000:000c0000…
=> MD 0x0f000120 8.
0f000120:00000000 00000000 00000000 ............
0f000130:00000000 00000000 00000000 ............
=>
=>
感谢 Sudheer 为您的答复!
我觉得有一些误解。 我所说的“工作配置“是指那些似乎有效的调用(复位,上电,寄存器读取/写入等)、并且返回的值是正确的。 我还没有工作方案。 根据我的测试、似乎大多数实现似乎都能正常工作、而针对 CMN、PCS、PMA 的寄存器写入被阻止。 是否有任何防火墙阻止这些寄存器? 或者我在复位生效/失效方面的寄存器写入顺序不正确?
由于默认 SDK 没有 SGMII、因此我对器件树进行了修改、并且我们的 PCB 还具有来自另一个具有 SGMII 的供应商的 E-phy。
感谢您的及时支持、因为此问题完全阻碍了进度。
非常感谢、
Chang
你好 Sudheer,
事实证明、u-boot 下的 SGMII 实现中缺少 PLL 使能和电源覆盖。 现在 PLL 已正确启用、但电源覆盖读数 为 0x8600、PLL 电源就绪为 0。 有什么建议吗?
[1]电源覆盖寄存器:
CMN_CDIAG_CDB_PWRI_OVRD (0x0041)= 0x8600
意外:获得 0x8600(预计为 0x8200)
CMN_CDIAG_XCVRC_PWRI_OVRD (0x0047)= 0x8600
意外:获得 0x8600(预计为 0x8200)
[2] PLL 使能寄存器:
PHY_PMA_PLL_RAW_CTRL (0x0003)= 0x0003
位[0](PLL0 启用):1
位[1](PLL1 启用):1
✓正确:两个 PLL 均启用(位[1:0]= 0b11)
[3] PLL 状态寄存器(硬件状态):
PHY_PMA_CMN_CTRL2 (0x0001)= 0x000c
位[0](PLL0 电源就绪):0
位[1](PLL1 电源就绪):0
位[2](启用 PLL0):1
位[3](PLL1 启用):1.
部分:仅设置了一些 PLL 位 (0xc)
→PLL 已启用但未通电 — 是否缺少电源覆盖?
您好、
寄存器访问没有阻塞。
仅供参考、 我们尚未 测试如何 通过 u-boot 启用 CPSW3G。
请参阅下面的常见问题解答、其中列出了从 Linux 内核启用 SGMII 所 需的更改、类似于 U-Boot 所需的更改。
【常见问题解答】TDA4AEN-Q1:如何使用原生 Linux 驱动程序在 CPSW3G 上启用 SGMII 支持?
此外、检查 Linux 上的串行器/解串器配置、并使用与 u-boot 中相似的配置。
此致、
Sudheer
您好、
[报价 userid=“652702" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1579762/tda4aen-q1-setup-of-1g-serdes-for-ethernet/6121141由于子时钟 ID 中的错误、WIZ 时钟会生成多个时钟、并为串行器/解串器分配了错误的时钟
很遗憾、我不能共享更新的补丁。
[/报价]您是 说器件树中有一些时钟 ID 发生了变化吗?
我可以看到 Linux 和 U-Boot 都 具有 相同的串行器/解串器配置。
此致、
Sudheer