Post Go back to editing

Booting Petalinux 2021.2 along with Ethernet , SPI and Serial Interface

Category: Software
Product Number: VPX3-ZU1B-C2M-CC
Software Version: Petalinux 2021.2

Hello There,

I am trying to boot petalinux 2021.2 on my CoTS hardware " VPX3-ZU1B-C2M-CC" from PanaTeQ to interface FMC-SDR400D from Sundance DSP.

My aim is to configure and control FMC using SPI and commnicate CoTS hrdware remotely through ethernet interface.

Using my .xsa i am able to build petalinux and also able to write boot image in flash "s25fl512s-1.8v-qspi-x8-dual"

I have added SPI information in system-user.dtsi also but don't know how to add ethernet information in system-user.dtsi. (for reference i have attached both system-top.dts and system-user.dtsi)

while i boot the CoTS hardware i have got "ZynqMP>" cansole (attached), not command prompt hence not able to see weather spidev is enable or not.

why i am not able to boot the hardware up to terminal , is there any flash address error or something else

please help me out what i missing.

while partationig the flash following partation i have done.

1. BOOT.bin size : 1F00000   (Offset start from 0X0 )

2. bootenv    size : 100000     (Offset start from 0X1F00000 )

3. Image       size : 2000000   (Offset start from 0X2000000 )

4. bootscr     size  : 180000    (Offset start from 0X4000000 )

5. rootfs        size :  4000000  (Offset start from 0X4180000 )

below is system-top.dts

/*
 * CAUTION: This file is automatically generated by Xilinx.
 * Version:  
 * Today is: Tue Oct 22 11:04:51 2024
 */


/dts-v1/;
#include "zynqmp.dtsi"
#include "zynqmp-clk-ccf.dtsi"
#include "pl.dtsi"
#include "pcw.dtsi"
/ {
	chosen {
		bootargs = "earlycon";
		stdout-path = "serial0:115200n8";
	};
	aliases {
		ethernet0 = &gem1;
		ethernet1 = &gem3;
		i2c0 = &i2c0;
		i2c1 = &i2c1;
		serial0 = &uart0;
		serial1 = &uart1;
		spi0 = &qspi;
		spi1 = &spi0;
	};
	memory {
		device_type = "memory";
		reg = <0x0 0x0 0x0 0x7ff00000>, <0x00000008 0x00000000 0x0 0x80000000>;
	};
};
#include "system-user.dtsi"

below is system-user.dtsi

/include/ "system-conf.dtsi"
/ {
};
&spi0 {
	status ="okay";
	spidev@0{
			reg	=	<0>;
			compatible = "rohm,dh2228fv";
			spi-max-frequency	=	<25000000>;
	};
};

below is bootloader information

Xilinx Zynq MP First Stage Boot Loader
Release 2021.2   Oct 13 2021  -  07:15:53
NOTICE:  BL31: v2.4(release):xlnx_rebase_v2.4_2021.1_update1-23-g9188496b9
NOTICE:  BL31: Built : 07:41:24, Oct 13 2021


U-Boot 2021.01 (Oct 12 2021 - 09:28:42 +0000)

CPU:   ZynqMP
Silicon: v3
Board: Xilinx ZynqMP
DRAM:  4 GiB
PMUFW:  v1.1
EL Level:       EL2
Chip ID:        zu15eg
NAND:  0 MiB
MMC:   mmc@ff160000: 0
Loading Environment from SPIFlash... SF: Detected s25fl512s with page size 512 Bytes, erase size 512 KiB, total 128 MiB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Bootmode: QSPI_MODE
Reset reason:   EXTERNAL
Net:
ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth1: addr -1
No ethernet found.

Hit any key to stop autoboot:  0
SF: Detected s25fl512s with page size 512 Bytes, erase size 512 KiB, total 128 MiB
device 0 offset 0x3e80000, size 0x80000
SF: 524288 bytes @ 0x3e80000 Read: OK
QSPI: Trying to boot script at 20000000
## Executing script at 20000000
Wrong image format for "source" command
QSPI: SCRIPT FAILED: continuing...
JTAG: Trying to boot script at 20000000
## Executing script at 20000000
Wrong image format for "source" command
JTAG: SCRIPT FAILED: continuing...
switch to partitions #0, OK
mmc0(part 0) is current device
** No partition table - mmc 0 **
MMC Device 1 not found
no mmc device at slot 1
SF: Detected s25fl512s with page size 512 Bytes, erase size 512 KiB, total 128 MiB
device 0 offset 0x3e80000, size 0x80000
SF: 524288 bytes @ 0x3e80000 Read: OK
QSPI: Trying to boot script at 20000000
## Executing script at 20000000
Wrong image format for "source" command
QSPI: SCRIPT FAILED: continuing...


no devices available
NAND: SCRIPT FAILED: continuing...
starting USB...
No working controllers found
USB is stopped. Please issue 'usb start' first.
starting USB...
No working controllers found
USB is stopped. Please issue 'usb start' first.
scanning bus for devices...
SATA link 0 timeout.
SATA link 1 timeout.
AHCI 0001.0301 32 slots 2 ports 6 Gbps 0x3 impl SATA mode
flags: 64bit ncq pm clo only pmp fbss pio slum part ccc apst

Device 0: unknown device
starting USB...
No working controllers found

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: pxeuuid

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000000

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000000

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000000

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00000

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0000

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/000

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/00

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/0

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-zynqmp-zynqmp

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-zynqmp

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
Config file not found
starting USB...
No working controllers found

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
No ethernet found.

ZYNQ GEM: ff0c0000, mdio bus ff0c0000, phyaddr -1, interface rgmii-id
Could not get PHY for eth0: addr -1
ZynqMP>