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.

[参考译文] SK-AM64B:u-boot 2024/2025和 I2C 存在问题

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1504909/sk-am64b-problem-with-u-boot-2024-2025-and-i2c

器件型号:SK-AM64B

工具/软件:

您好:
我们在 I2C 方面遇到了一个奇怪的问题、首先是我们的定制电路板(使用我们的定制版本)、然后是使用默认映像时的 SK-AM64B 板。 该问题在所有已测试的 U-Boot 版本2024.04和2025.01中出现、但2023.04中不存在。

观察到的行为如下:

U-Boot 2023.04-ti-g836606420854 (May 09 2024 - 05:42:45 +0000)

SoC:   AM64X SR2.0 HS-FS
Model: Texas Instruments AM642 SK
Board: AM64B-SKEVM rev A
DRAM:  2 GiB
Core:  90 devices, 33 uclasses, devicetree: separate
NAND:  0 MiB
MMC:   mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
Net:   eth0: ethernet@8000000port@1, eth1: ethernet@8000000port@2
Hit any key to stop autoboot:  0
=>
=> i2c probe
Valid chip addresses: 30 51
=> i2c bus
Bus 0:  i2c@20000000  (active 0)
   30: pmic@30, offset len 1, flags 0
   51: generic_51, offset len 1, flags 0
Bus 1:  i2c@20010000
   70: gpio@70, offset len 1, flags 0
=>

但使用 u-boot 2025.01时:

U-Boot 2025.01-00406-gcd91d7360181 (Mar 25 2025 - 16:14:37 +0000)

SoC:   AM64X SR2.0 HS-FS
Model: Texas Instruments AM642 SK
Board: AM64B-SKEVM rev A
DRAM:  2 GiB
Core:  95 devices, 33 uclasses, devicetree: separate
MMC:   mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
Failed to probe prueth driver
Net:   eth0: ethernet@8000000port@1, eth1: ethernet@8000000port@2
Hit any key to stop autoboot:  0
=> i2c probe
ti_sci system-controller@44043000: Message not acknowledged
ti-sci-pm-domains power-controller: ti_sci_power_domain_on: get_device(102) failed (-19)
Default I2C bus 0 not found
=> i2c bus
Bus 0:  i2c@20000000
Bus 1:  i2c@20010000  (active 1)
   70: gpio@70, offset len 1, flags 0
=>

我知道默认映像最初使用 EVM 板器件树、在电路板检测完成后、会切换到 SK 板器件树。
我们看到定制电路板上出现了类似的问题。 该问题似乎与在进行电路板检测之前使用哪个默认器件树有关。 我们有两个电路板版本:R0和 R1。
如果我们将 r0器件树设置为默认值、则 I2C0在 r0电路板上工作、但在 R1电路板上失败。 相反、如果我们将 R1器件树设置为默认值、则 I2C0在 R1电路板上工作、但在 r0电路板上失败。