I am using UZ3EG IOCC board. For some reason, I'm not using petalinux tool to build the binaries. So building image independently.
My SDCARD image:
BOOT.bin
kernel_image=Image
devicetree_image=devicetree.dtb
ramdisk_image=uRamdisk.image.gz
bootargs
console=ttyPS0,115200 rw earlycon clk_ignore_unused root=/dev/ram0 earlyprintk uio_pdrv_genirq.of_id=xlnx,generic-uio cma=512M cpuidle.off=1
uEnv.txt
# uramdisk filesystem
uz3eg_sdboot=echo Copying Linux from SD to RAM... && fatload mmc 0:1 0x2A00000 ${kernel_image} && fatload mmc 0:1 0x2000000 ${devicetree_image} && fatload mmc 0:1 0x6000000 ${ramdisk_image} && booti 0x2A00000 0x6000000 0x2000000
Xilinx Zynq MP First Stage Boot Loader
Release 2018.3 Mar 21 2021 - 07:31:44
PMU Firmware 2018.3 Mar 21 2021 07:32:08
PMU_ROM Version: xpbr-v8.1.0-0
NOTICE: ATF running on XCZU3EG/silicon v4/RTL5.1 at 0xfffea000
NOTICE: BL31: Secure code at 0x0
NOTICE: BL31: Non secure code at 0x8000000
NOTICE: BL31: v1.5(release):xilinx-v2018.2-919-g08560c36
NOTICE: BL31: Built : 07:30:08, Mar 21 2021
PMUFW: v1.1
U-Boot 2018.01-dirty (Apr 06 2021 - 07:35:05 +0530) Xilinx ZynqMP ZCU102 rev1.0
I2C: ready
DRAM: 2 GiB
EL Level: EL2
Chip ID: zu3eg
MMC: sdhci@ff170000: 0 (SD)
*** Warning - bad CRC, using default environment
In: serial@ff000000
Out: serial@ff000000
Err: serial@ff000000
Bootmode: SD_MODE1
Net: ZYNQ GEM: ff0e0000, phyaddr c, interface rgmii-id
Error, wrong i2c adapter 1 max 1 possible
I2C EEPROM MAC address read failed
Warning: ethernet@ff0e0000 (eth0) using random MAC address - 06:85:d1:f0:d1:9f
eth0: ethernet@ff0e0000
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Device: sdhci@ff170000
Manufacturer ID: 58
OEM: 4444
Name: DDINC
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 14.9 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes
reading uEnv.txt
933 bytes read in 14 ms (64.5 KiB/s)
Loaded environment from uEnv.txt
Importing environment from SD ...
Running uenvcmd ...
Copying Linux from SD to RAM...
reading Image
14497800 bytes read in 991 ms (14 MiB/s)
reading devicetree.dtb
34792 bytes read in 20 ms (1.7 MiB/s)
reading uRamdisk.image.gz
168923073 bytes read in 11264 ms (14.3 MiB/s)
## Loading init Ramdisk from Legacy Image at 06000000 ...
Image Name:
Image Type: AArch64 Linux RAMDisk Image (gzip compressed)
Data Size: 168923009 Bytes = 161.1 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Loading Ramdisk to 33da5000, end 3debdf81 ... OK
Loading Device Tree to 000000000fff4000, end 000000000ffff7e7 ... OK
Starting kernel ...
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.14.0-xilinx-v2018.3 (mahadeva@mahadeva-OMEN-Laptop1
[ 0.000000] Boot CPU: AArch64 Processor [410fd034]
[ 0.000000] Machine model: Avnet UltraZed-3EG
[ 0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
[ 0.000000] bootconsole [cdns0] enabled
[ 0.000000] cma: Reserved 256 MiB at 0x0000000023c00000
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv1.1 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: MIGRATE_INFO_TYPE not supported.
[ 0.000000] random: fast init done
[ 0.000000] percpu: Embedded 20 pages/cpu @ffffffc83ff79000 s44312 r8192 d29410
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: enabling workaround for ARM erratum 845719
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 517120
[ 0.000000] Kernel command line: console=ttyPS0,115200 rw earlycon clk_ignore_1
[ 0.000000] PID hash table entries: 4096 (order: 3, 32768 bytes)
[ 0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
[ 0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
My kernel is hanging at memory init stage.