Phytec中国的wiki
support@phytec.cn
热线:0755-61802110-803
说明
在最新的PD19中,对于AM57x的核心板,我们修改了识别核心板的方式。
项目 | PD19 | 之前版本 |
---|---|---|
根据eeprom来确定核心板型号 | 会 | 不会 |
uboot启动时加载设备树方案 | 根据eeprom中的信息来加载 | 按照烧写的uboot镜像中的配置来加载 |
uboot, 设备树 | 通用 | 每款核心板特定 |
项目 | 老的核心板(eeprom未配置) | 新的核心板(eeprom已配置) |
---|---|---|
PD19 | 需要按照下面的教程来更新eeprom | 不需要,出厂已配好 |
PD19之前的版本 | 使用machine对应的image | 使用machine对应的image |
配置核心板的EEPROM
如果核心板的eeprom未配置过,运行AM57X PD19的镜像,uboot显示的信息为:
uboot log
Model: PHYTEC phyCORE-AM5716 with 1GiB DDR3 (1 bank), Commercial Temp PHYTEC: unknown board name. Defaulting to am57xx_phycore_kit,a MINIMAL AM5716 configuration.
kernel中的设备树也是根据未配置的eeprom内容选用am5716的设备树。
kernel log
[ 0.000000] OF: fdt: Machine model: PHYTEC phyCORE-AM5716 with 1GiB DDR3 (1 bank), Commercial Temp
这是因为从PD19版本开始,uboot是读eeprom中的值来得到核心板的配置,而老的核心板默认出厂时并没有写入对应板子的参数值。
在PD19的系统中,我们有个EEPROM的烧写工具,具体使用方法需要先参考这个文档说明:
Using the PHYTEC EEPROM Flashtool
在写入eeprom之前, 需要先得到核心板的PART NUMBER, 然后可以使用这个工具的display参数可以查找该核心板的硬件参数
root@am57xx-phycore-kit:~# export PATH=/usr/bin/phytec-eeprom-flashtool:$PATH root@am57xx-phycore-kit:~# phytec_eeprom_flashtool.py display PCM-057-41300111I.A1 3 PCM-057-41300111I.A1 EEPROM contents and configuration [display]: API version 0 Mod version 0 SOM PCB revision 3 KSP style 0 KSP number 0 Bits set 46 MAC address 74:da:ea:08:45:b0 Verbose kit options: DDR 2GB DDR3 RAM (2 Banks) ECC 256MB 8-bit ECC RAM (Bank 1) eMMC/NAND 8GB eMMC SPI No SPI NOR Flash Controller TI AM5728 Controller EEPROM 4KB EEPROM Ethernet 10/100/1000 ethernet PHY RTC Real-Time Clock Temp Industrial -40C to +85C
然后往eeprom写入核心板的参数:
root@am57xx-phycore-kit:~# phytec_eeprom_flashtool.py write PCM-057-41300111I.A1 3 dict_to_struct, kit_opt_str: 41300111IA1 EEPROM flash successful!
重启之后就能看到bootloader中的硬件配置已经更改为PCM-057-41300111I.A1的配置了:
Model: PHYTEC phyCORE-AM5728 with 2GiB DDR3 (2 banks), Industrial Temp Board: phyCORE-AM57x kit [ 0.000000] OF: fdt: Machine model: PHYTEC phyCORE-AM5728 with 2GiB (banks) DDR3, Industrial Temp
不使用EEPROM来进行配置
可以在u-boot中使用以下指令关闭eeprom配置设备树功能
setenv override_board 1 setenv board_name undefined setenv fdtfile <devicetree.dtb> saveenv boot
其中<devicetree.dtb>要配置为要载入的默认设备树,如默认的 am57xx-phycore-kit.dtb。
Overview
Content Tools
Activity
Tasks