UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Observer rembo
Observer
1,771 Views
Registered: ‎12-08-2017

Petalinux project template, bsp , u-boot -image creation and booting issue

Intention: To boot Linux on the board with the Zynq FPGA:

FPGA: Zynq XC7014S-1CLG484I,

PS-PL Works at 1.8V LVCMOS levels

DDR: 256 MB DDR3L MT41K128M16JT-125 ECC is disabled

QSPI: MT25QU01GBBB8ESF 256Mb/32MB Dual x2

SD0: MicroSD Card slot is used. (Speed-Fast, Pull-Up-Disabled) 50 MHz SD Clock. (SD MIO Settings are accurate).

UART1: 115200 Baud

TTC0: Enabled

Standard Zynq7 block design.

Vivado hardware project is created from the block design and the bit stream and the .hdf is created.

Vivado is running on a Windows 7 64-bit OS. Project.SDK Folder of the project is transferred to a system with Linux Ubuntu 16.04 with 4GB RAM.

new petalinux project is created, (referring UG1144) Page: 19

$ petalinux-create --type project --template <CPU_TYPE> --name
<PROJECT_NAME>

 

1.What should be the template if the FPGA is XC7Z014S-1CLG484I, it is not Zedboard or ZC702 so what template should be chosen (because the this FPGA has only single core processor, RAM is different, SD is MicroSD, QSPI is different)?

2. How to create or obtain BSP for XC7Z014S-1CLG484I (for linux platform any templates are available)?

3. What should be the Set CONFIG_SUBSYSTEM_MACHINE_NAME XC7Z014S-1CLG484I. 

4. What procedure has to be followed to generate bsp, u-boot for this XC7Z014S-1CLG484I. 

 

I have tried creating the boot image but it is not booting from MicroSD Card. (No SD clock signals are generated)(SD_CMD pull up is removed).

 

Thanks.

 

 

 

 

 

 

0 Kudos
9 Replies
Contributor
Contributor
1,743 Views
Registered: ‎04-04-2018

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

Create the project for the processor family (zynq, zynqmp, etc.) then configure with your hdf. Try something like:

 

$ petalinux-create --type project --name foo --template zynq

$ cd foo

$ petalinux-config --get-hw-description=<path to hdf>

 

Regards,

--Scott

 

Moderator
Moderator
1,717 Views
Registered: ‎09-12-2007

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

Have you tested your board in standalone (ie export to SDK from Vivado, and make sure that you can pass the memory tests, ect?).

Create the FSBL, and SD boot image, and make sure you can boot from SD card.

 

If you have validated that your HW works as expected, then you can use petalinux to create the image. However, you would need to create a patch for your custom board for uboot:

  • configs/<custom-board>defconfig
  • arch/arm/dts/<custom-board>.dts
  • include/configs/<CONFIG_SYS_CONFIG_NAME>.h

Then in the petalinux-config -> u-boot config, choose your defconfig. You could use the default one created by petalinux. However, this will not be specific to your board.

Observer rembo
Observer
1,701 Views
Registered: ‎12-08-2017

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

Dear  @smcnutt

Thanks for the reply.

Followed the same steps, the way you have suggested.

It is booting through JTAG.

A small bug is there with MicroSD card booting probably it may be the hardware issue.

 

Dear @stephenm 

Apologies, i will revert back to you in detail in a while.

 

0 Kudos
Moderator
Moderator
1,688 Views
Registered: ‎09-12-2007

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

Have you access to ethernet in your linux? you can use the TFTP to boot your linux using netboot from uboot

You would need to update the DT to add the PHY node to your GEM node.

 

Then download a ftp server (like pumpkin), and in uboot setup your TFTP:

server.PNG

 

Then set up the tftp settings in uboot (make sure you can ping first):

host.PNG

0 Kudos
Observer rembo
Observer
1,679 Views
Registered: ‎12-08-2017

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

Quoted "If you have validated that your HW works as expected, then you can use petalinux to create the image. However, you would need to create a patch for your custom board for uboot:

configs/<custom-board>defconfig
arch/arm/dts/<custom-board>.dts
include/configs/<CONFIG_SYS_CONFIG_NAME>.h "

Kindly specify the complete path (exact path of 1. configs/<custom-board>defconfig , 2. arch/arm/dts/<custom-board>.dts ,3. include/configs/<CONFIG_SYS_CONFIG_NAME>.h,) where the above three patches have to be replaced, there are many configs, arch, include folders inside a given petalinux project source directory which is causing confusion.

0 Kudos
Observer rembo
Observer
1,676 Views
Registered: ‎12-08-2017

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

@stephenm

No i'm not booting linux from ethernet right now. Only JTAG and MicroSD is possible now.
Have you access to ethernet in your linux? you can use the TFTP to boot your linux using netboot from uboot

You would need to update the DT to add the PHY node to your GEM node.

0 Kudos
Moderator
Moderator
1,670 Views
Registered: ‎09-12-2007

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

These are the path in your uboot. You would need to create these files manually based on your custom HW. You can use ones that exists that closely match your board, and rename and modifiy these to match your own HW.

 

So, you would need to clone the u-boot from github, and checkout the relevant branch (eg git checkout Xilinx-v2017.4)

Add in your custom board files. Once you are happy here, then you would build the uboot and test in hardware.

 

Once everything works, you could create a u-boot patch (git diff xilinx-v2017.4) and then add this to your uboot recipe in your petalinux project. Then in petalinux-config -> uboot settings, choose your custom defconfig.

 

Some references on how to clone and build the uboot:

http://www.wiki.xilinx.com/ZCU102+Image+creation+in+OSL+flow

 

How to patch petalinux Yocto:

http://www.wiki.xilinx.com/PetaLinux+Yocto+Tips

 

 

 

 

Observer rembo
Observer
1,599 Views
Registered: ‎12-08-2017

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

@stephenm @smcnutt During this process, Petalinux images are created without bsp, but with hdf. Is there any difference in the images if it is built from bsp. Is BSP mandatory for linux image creation?

 

Thanks.

 

0 Kudos
Moderator
Moderator
1,579 Views
Registered: ‎09-12-2007

Re: Petalinux project template, bsp , u-boot -image creation and booting issue

A bsp for a particular board will have the devicetree overlays (for the i2c, and phy nodes for example), kernel settings, uboot settings for that particular board. The HDF will only contain chip level info. This will be used for uboot settings, and kernel settings and the devicetree tree.

So if you are using the HDF to create the Linux image, then you would need to add the nodes for external devices to the chip manually. To do this, you would add these to the system-user.dtsi in the devicetree recipe. You can see the petalinux project built from bsp for reference here