Ultra96V2에서 Petalinux를 시작할 때 한 일

사전 개발 환경



PC: Ubuntu 16.04.6 LTS

여기에서 Petalinux 도구 설치 프로그램을 다운로드하고,
htps : // 그럼.ぃぃ x. 코 m / 쏙 rt / 드 w 응아 d / 어서 x. html / 혼텐 t / ぃ ぃ x / 쟤 / ㅇ ㅉ 아 d v / 에 m 밧데 d로 し んー と ls. HTML

이 명령으로 설치
sudo apt-get install -y gcc git make net-tools libncurses5-dev tftpd zlib1g-dev   libssl-dev flex bison libselinux1 gnupg wget diffstat chrpath socat xterm autoconf   libtool tar unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev   libglib2.0-dev zlib1g:i386 screen pax gzip
./petalinux-v2019.2-final-installer.run
source ./settings.sh
petalinux-util --webtalk off

~/.bashrc에 다음을 추가하십시오.
source ./settings.sh

했던 일



Xilinx Vitis IDE 2019.02판에 관한 정보가 부족해서, 했던 일을 정리해 보았다.

우선 Project 만들기
Ultra96v2의 경우 template에 zynqMP를 지정합니다. name는 아무거나 좋고, 일 directory가 할 수 있다.
$ petalinux-create --type project --template zynqMP --name SimplePS
INFO: Create project: SimplePS
INFO: New project successfully created in /home/xxx/work/SimplePS

petalinux-create로 만든 프로젝트의 폴더로 이동
cd SimplePS

다음으로 vivado에서 만든 .xsa 파일이 포함 된 HW Project의 각 폴더를 복사하여
--get-hw-description으로 지정한다.
$ petalinux-config --get-hw-description=./HLS_sample
INFO: Getting hardware description...
INFO: Rename design_1_wrapper.xsa to system.xsa
[INFO] generating Kconfig for project
[INFO] menuconfig project

petalinux-config를 실행하면 다음 화면이 시작됩니다.


UART 설정 변경



Subsystem AUTO Hardware Settings를 선택하여 그 안의 Serial Settings로 들어갑니다.


UART의 출력 포트를 psu_uart_0에서 psu_uart_1로 변경합니다.


rootfs filesystem에 ext4 추가



이미지 패키징 구성에서,


EXT(SD/eMMC/QSPI/SATA/USB)를 선택.
루트 파일 시스템 유형을 선택하고,



루트 파일 시스템 형식을 선택하고,

ext4를 추가합니다.


기계 이름 변경



device tree에서 ultra96의 것이 선택되도록 machine name을 변경한다.
DTG Settings를 선택하고,

MACHINE NAME을 avnet-ultra96-rev1로 변경합니다.


설정 후 build 시작
$ petalinux-build
[INFO] building project
[INFO] sourcing bitbake
[INFO] generating user layers
[INFO] generating workspace directory
INFO: bitbake petalinux-user-image
Loading cache: 100% |#################################################################################################| Time: 0:00:01
Loaded 3979 entries from dependency cache.
Parsing recipes: 100% |###############################################################################################| Time: 0:00:05
Parsing of 2893 .bb files complete (2884 cached, 9 parsed). 3980 targets, 155 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Initialising tasks: 100% |############################################################################################| Time: 0:00:04
Checking sstate mirror object availability: 100% |####################################################################| Time: 0:00:01
Sstate summary: Wanted 121 Found 19 Missed 204 Current 799 (15% match, 88% complete)
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Tasks Summary: Attempted 3303 tasks of which 3295 didn't need to be rerun and all succeeded.
INFO: Copying Images from deploy to images
NOTE: Failed to copy built images to tftp dir: /tftpboot
[INFO] successfully built project

build 완료 후 petalinux-pacage 실행
$ petalinux-package --boot --force --fsbl images/linux/zynqmp_fsbl.elf --fpga ./HLS_sample/design_1_
wrapper.bit --u-boot
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/zynqmp_fsbl.elf"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/pmufw.elf"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/HLS_sample/design_1_wrapper.bit"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/bl31.elf"
INFO: File in BOOT BIN: "/home/xxx/work/SimplePS/images/linux/u-boot.elf"
INFO: Generating zynqmp binary package BOOT.BIN...


****** Xilinx Bootgen v2019.2
  **** Build date : Oct 23 2019-22:59:42
    ** Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.

INFO: Binary is ready.
WARNING: Unable to access the TFTPBOOT folder /tftpboot!!!
WARNING: Skip file copy to TFTPBOOT folder!!!

완료 후, images/linux/이하에,
BOOT.BIN
image.ub
rootfs.ext4
가 만들어졌기 때문에 이들을 SD 카드에 복사.

BOOT.BIN과 image.ub는 vfat으로 포맷 된 SD 카드의 Partition에 복사됩니다.
rootfs.ext4는 SD 카드의 다른 Partition에 dd 명령으로 씁니다.

좋은 웹페이지 즐겨찾기