개발자 블로그

uboot booting 문제1(해결) 본문

uBoot build, uImage, ramdisk(zynq)

uboot booting 문제1(해결)

youngsunny 2021. 7. 24. 02:26

 

xmd

connect arm hw

source ./ps7_init.tcl

ps7_init

dow u-boot.elf  (sadri 영상에서는 u-boot만 쳤는데 안된다.)

run

하면 picocom 창에 출력이 되는데 중간에 Model 보면 Xilinx ZC706 board 로되어있다. 

아마도 u-boot 만들때 잘못 만든거 같다. 

virtualubuntu16043@virtualubuntu16043-VirtualBox:~/compare$ sudo picocom --b 115200 --f n --p n /dev/ttyUSB1
picocom v1.7

port is        : /dev/ttyUSB1
flowcontrol    : none
baudrate is    : 115200
parity is      : none
databits are   : 8
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : no
nolock is      : no
send_cmd is    : sz -vv
receive_cmd is : rz -vv
imap is        : 
omap is        : 
emap is        : crcrlf,delbs,

Terminal ready


U-Boot 2021.01-00042-gd6ad7d2 (Jul 22 2021 - 18:25:41 +0900)

CPU:   Zynq 7z010
Silicon: v3.1
Model: Xilinx ZC706 board
DRAM:  ECC disabled 1 GiB
Flash: 0 Bytes
NAND:  0 MiB
MMC:   mmc@e0100000: 0
In:    serial@e0001000
Out:   serial@e0001000
Err:   serial@e0001000
Net:   
ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 7, interface rgmii-id
Could not get PHY for eth0: addr 7
No ethernet found.

 

u-boot 다시 만들고 하니깐 된다. 

u-boot 파일 다시 만들때

cd u-boot-xlnx/configs 들어가서 

vi xilinx_zynq_virt_defconfig 에서 

CONFIG_DEFAULT_DEVICE_TREE="zynq-zybo-zy" 바꾸고 하거나

(DEVICE_TREE=" 여기에 들어가는거" cd u-boot-xlnx/arch/arm/dts 들어가서 해당하는 보드 찾아다가 하면된다. 내꺼는 zynq-zybo-z7)

 

파일 make 할때 device tree 를 export 해주고 하면된다.  아마 내가 export를 안하고 한듯하다.

make distclean
make xilinx_zynq_virt_defconfig
export DEVICE_TREE="zynq-zybo-z7"
make

 

 

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841973/Build+U-Boot 

아래 사이트에 다 나와있음

 

Build U-Boot - Xilinx Wiki - Confluence

This how-to describes how to build the u-boot bootloader for your target platform. Building the U-Boot bootloader is a part of the Xilinx design flow described in Xilinx Open Source Linux. U-Boot depends upon an externally build device tree compiler (dtc)

xilinx-wiki.atlassian.net