硬件:jeston agx orin 64GB开发套件;自定义载板
软件:jetpack6.0
当前修改:
1.Orin_Jetson_Series_Pinmux_Config_Template_2.0.xlsm按载板所需硬件接口配置,生成的内容替换到tegra234-mb1-bct-gpio-p3701-0000-a04.dtsi和tegra234-mb1-bct-pinmux-p3701-0000-a04.dtsi;
2.修改tegra234-mb2-bct-common.dtsi的cvb_eeprom_read_size = <0>;
3.将未修改的源码编译生成的image和tegra234-p3737-0000+p3701-0005-nv.dtb进行替换
问题现象:上电后,串口打印卡在Busy Spin
serial-com35_42_19_14_42_50.log (26.1 KB)
tegra234-mb1-bct-gpio-p3701-0000-a04.txt (2.9 KB)
tegra234-mb1-bct-pinmux-p3701-0000-a04.txt (65.8 KB)
Hi liujs-hhyc,
E> I2C: Timeout while polling for bus clear. Last value 0x00000000.
E> I2C: Failed to clear bus for instance 0.
E> I2C: Failed to clear bus for instance 0.
E> I2C_DEV: Failed to initialize instance 0.
E> eeprom: Can't get handle to eeprom device @160
C> Task 0x0 failed (err: 0x1414032a)
E> Top caller module: EEPROM, error module: EEPROM, reason: 0x2a, aux_info: 0x03
I> Busy Spin
From the log your shared, it seems EEPROM can not be recognized.
Please share the full flash log for further check.
抱歉 我的ubuntu已经被关闭过了,该通过什么命令获取上一次的flash log
If you used initrd flash, the log may be stored in <Linux_for_Tegra>/initrdlog/flash_xxxxx.log .
If you miss the flash log, please perform the flash again and share the log.
Are you developing a custom carrier board designed by you?
flash_log.txt (538.9 KB)
是的,正在开发定制载板
这里的管脚是否需要使用,我们的硬件工程师将这里选择不使用,但是我看开发套件的参考手册,这组i2c和eeprom有关
老师 能看看吗
That error log indicates the EEPROM on the CVM (module) cannot be read. We don’t need your custom board must have a eeprom, but you cannot make a hardware that cannot read eeprom on the CVM.
最后一句,我没明白你的意思,针对目前这种情况,应该用什么方式去解决这个问题
如果你軟體部份都沒有改的話 這就是純粹你們的板子讀不到module上的eeprom. 純粹的硬體問題
就是你提到的i2c的部份
可是我们的自定义载板没有器件去访问核心板的eeprom,我们的载板只有外设接口,没有任何可以运行程序的器件;
载板读module上的eeprom.这个操作是必须的吗
對 這就是你現在碰到問題的原因.
讀module eeprom這件事情是必須的. 這個叫cvm eerpom.
但板子上有沒有自己多做一個eeprom這件事情是optional的 這個叫cvb eeprom.
所有Jetson都一樣.
1.要让核心板正常启起来,就必须要载板程序去访问cvm eeprom?
2.这个载板程序需要实现什么功能,才能让核心板正常运行,有没有什么参考文档
3.如果跳过访问cvm这个步骤 比如"cvm_eeprom_read_size = <0>;",会不会对后续核心板的使用有影响
-
燒錄的時候一定會去看cvm EEPROM的內容決定現在是哪顆module.
-
請問你是要問硬體還是問軟體方面? 在我看來這部份就是硬體一開始設計就有問題所致
-
會. 請不要這樣做
之前的烧写log是错的
现在这个log才是
flash_log5.txt (19.5 KB)
报错Error: Return value 4
Command tegradevflash_v2 --oem platformdetails eeprom cvm /home/hhyc/workspace/jeston/36.3/hhyc/Linux_for_Tegra/bootloader/cvm.bin --chip 0x23 0
Reading board information failed.
这个需要怎么处理
麻煩讀一下你所謂的報錯上面幾行的字…
[ 15.0223 ] 000000001414032a: E> NV3P_SERVER: Could not read eeprom for module cvm.
看了的,就是不知道怎么解决,是需要硬件解决还是软件解决,有没有解决的方向
你這裡講的這句話. 是指說你的硬體工程師把pinmux關了. 還是說他連這部份的硬體都沒做出來.
如果是前者 或許開回來就可以了. 這是軟體可以解. 如果是硬體都沒做 那你軟體怎麼改都沒用
請問可以理解嗎
我是他们的硬件工程师,我们现在用的官方开发套件的核心板+自己设计的载板,官方开发套件的载板设计中I2C1(K5、L8管脚)接了一个eeprom,我们的载板上没有接eeprom,对于这个I2C1,我们自己设计的载板是否可以直接悬空不挂载EEPROM设备?
CVM跟CVB eerpom是共用同一個i2c bus但是一個bus address在0x50. 另外一個在0x56.
你得至少確保CVM EEPROM還是能被讀到