1 Reply Latest reply on Nov 2, 2020 9:49 AM by drozwood90

    Picozed + FMC2 booting Petalinux 2020.1 from QSPI/eMMC

    mesamike

      Are there any instructions anywhere for booting Petalinux 2020.1 on a picozed from QSPI and kernel in on-board eMMC?

      I've followed various older instructions for building an appropriate BOOT.BIN file and writing that to the QSPI Flash and copying the image.ub file to the onboard eMMC, but I still can't get petalinux to boot up.

      When I power up with the switches set to boot from QSPI, the FPGA code apparently gets loaded OK, ,since the blue "FPGA DOne" LED comes on, but the next stages of booting fail.
      First, U-Boot detects the QSPI flash, but then gives an error about "bad CRC;

       

      U-Boot 2020.01 (Oct 30 2020 - 12:46:02 +0000)

       

      CPU:   Zynq 7z020

      Silicon: v3.1

      DRAM:  ECC disabled 1 GiB

      Flash: 0 Bytes

      NAND:  0 MiB

      MMC:   mmc@e0100000: 0, mmc@e0101000: 1

      Loading Environment from SPI Flash... SF: Detected n25q128a13 with page size 256 Bytes, erase size 4 KiB, total 16 MiB

      *** Warning - bad CRC, using default environment

       

      Continuing on, it gives several 'Wrong image format for for "source" command' errors.

      In:     serial@e0001000
      Out:   serial@e0001000

      Err:   serial@e0001000

      Net:

      ZYNQ GEM: e000b000, mdio bus e000b000, phyaddr 0, interface rgmii-id

       

      Warning: ethernet@e000b000 using MAC address from DT

      eth0: ethernet@e000b000

      Hit any key to stop autoboot:  0

      SF: Detected n25q128a13 with page size 256 Bytes, erase size 4 KiB, total 16 MiB

      device 0 offset 0xfc0000, size 0x40000

      SF: 262144 bytes @ 0xfc0000 Read: OK

      ## Executing script at 03000000

      Wrong image format for "source" command

      SCRIPT FAILED: continuing...

      ## Executing script at 03000000

      Wrong image format for "source" command

      SCRIPT FAILED: continuing...

      MMC: no card present

      switch to partitions #0, OK

      mmc1(part 0) is current device

      Scanning mmc 1:1...

      SF: Detected n25q128a13 with page size 256 Bytes, erase size 4 KiB, total 16 MiB

      device 0 offset 0xfc0000, size 0x40000

      SF: 262144 bytes @ 0xfc0000 Read: OK

      ## Executing script at 03000000

      Wrong image format for "source" command

      SCRIPT FAILED: continuing...

      no devices available

      SCRIPT FAILED: continuing...

      ## Executing script at 03000000

      Wrong image format for "source" command

      SCRIPT FAILED: continuing...



      Still it continues, now trying to read an image via TFTP. Eventually it gives up, leaving me at the bootloader prompt:

      Starting USB...

      Bus usb@e0002000: USB EHCI 1.00

      scanning bus usb@e0002000 for devices... 1 USB Device(s) found

             scanning usb for storage devices... 0 Storage Device(s) found

       

      Device 0: unknown device

       

      Device 1: unknown device

      BOOTP broadcast 1

      BOOTP broadcast 2

      BOOTP broadcast 3

      DHCP client bound to address 192.168.2.100 (1149 ms)

      *** ERROR: `serverip' not set

      Cannot autoload with TFTPGET

      missing environment variable: pxeuuid

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/01-00-0a-35-00-1e-53

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0A80264

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0A8026

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0A802

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0A80

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0A8

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0A

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C0

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/C

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/default-arm-zynq-zynq

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/default-arm-zynq

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/default-arm

      *** ERROR: `serverip' not set

      missing environment variable: bootfile

      Retrieving file: pxelinux.cfg/default

      *** ERROR: `serverip' not set

      Config file not found

      BOOTP broadcast 1

      DHCP client bound to address 192.168.2.100 (480 ms)

      *** ERROR: `serverip' not set

      Cannot autoload with TFTPGET

      BOOTP broadcast 1

      BOOTP broadcast 2

      DHCP client bound to address 192.168.2.100 (609 ms)

      *** ERROR: `serverip' not set

      Cannot autoload with TFTPGET

      Zynq>

       

       

      It's unclear to me what else I need to do to get my picozed+FMC2 to boot from QSPI and find the kernel image on the onboard eMMC.

        • Re: Picozed + FMC2 booting Petalinux 2020.1 from QSPI/eMMC
          drozwood90

          Hi there,

           

          We have not finished with the 2020.1 branch at this time. We are still working on the specific boot modes for various products.  This release you will see a large addition to the boot mode code.  Expect tags this week. 

          Thank you for posting these details though, I will loop this by the team today.  If it is something they are aware of, we will get you a response.  If not, then please hold up with the 2020.1 branch as it is still in flux (changes expected today/tomorrow, tagging afterwards).  This release has changes specifically in the boot mode area, so it is possible we have seen this and already fixed it.

           

          --Dan

          3 of 3 people found this helpful