Ezynq: Difference between revisions

From ElphelWiki
Jump to navigation Jump to search
Oleg (talk | contribs)
Created page with "==Decription== [https://sourceforge.net/p/elphel/ezynq Ezynq] project is started to create a bootloader for systems based on the Xilinx Zynq SoC without the inconvenience of the ..."
 
Oleg (talk | contribs)
mNo edit summary
Line 10: Line 10:
==Install meta-toolchain (Ubuntu 13.04)==
==Install meta-toolchain (Ubuntu 13.04)==
*
*
<font size='2'>
  sudo apt-get install texinfo chrpath
  sudo apt-get install texinfo chrpath
  git clone -b dylan git://git.yoctoproject.org/poky
  git clone -b dylan git://git.yoctoproject.org/poky
Line 15: Line 16:
  . ./oe-init-build-env
  . ./oe-init-build-env
  bitbake meta-toolchain
  bitbake meta-toolchain
</font>


* Run installation script in ''build/tmp/deploy/''
* Run installation script in ''build/tmp/deploy/''


==Install ezynq (Ubuntu 13.04)==
==Install ezynq (Ubuntu 13.04)==
<font size='2'>
  git clone git://git.code.sf.net/p/elphel/ezynq ezynq
  git clone git://git.code.sf.net/p/elphel/ezynq ezynq
  cd ezynq
  cd ezynq
  ./install_uboot.sh
  ./install_uboot.sh
</font>


==Generate bootable BOOT.BIN==
==Generate bootable BOOT.BIN==
* Edit ''initenv'' according to the built meta-toolchain
* Edit ''initenv'' according to the built meta-toolchain
*
*
<font size='2'>
  cd u-boot-xlnx
  cd u-boot-xlnx
  ./makeuboot
  ./makeuboot
</font>


* The generated files are:
* The generated files are:
Line 43: Line 49:
  include/configs/ezynq/zed_ezynq.h
  include/configs/ezynq/zed_ezynq.h
*
*
  ./makeuboot
  <font size='2'>./makeuboot</font>


<font color="red">'''Warning:''' Only '''192KB''' of zynq's on-chip memory are available at boot.</font>
<font color="red">'''IMPORTANT:''' Only '''192KB''' of zynq's series on-chip memory are available at boot.</font>


==Known issues==
==Known issues==

Revision as of 18:49, 4 October 2013

Decription

Ezynq project is started to create a bootloader for systems based on the Xilinx Zynq SoC without the inconvenience of the non-free tools and/or files. The goal is not just to "free" the code, but to provide users with the higher degree of flexibi- lity in fine-tuning of the configuration parameters.

Supported boards

Install meta-toolchain (Ubuntu 13.04)

sudo apt-get install texinfo chrpath
git clone -b dylan git://git.yoctoproject.org/poky
cd poky
. ./oe-init-build-env
bitbake meta-toolchain

  • Run installation script in build/tmp/deploy/

Install ezynq (Ubuntu 13.04)

git clone git://git.code.sf.net/p/elphel/ezynq ezynq
cd ezynq
./install_uboot.sh

Generate bootable BOOT.BIN

  • Edit initenv according to the built meta-toolchain

cd u-boot-xlnx
./makeuboot

  • The generated files are:
    • boot.bin - the bootloader image
    • u-boot.html - configuration settings overview
    • u-boot.map - the bootloader's memory map
    • u-boot - ELF file

Develop (add boards support)

  • Add a new board record to the list in the boards.cfg (or leave as is if the item already exists).
  • Create a configuration file for the new board - use include/configs/zynq_microzed.h as a reference
  • Edit according to the board configuration the following files:
include/configs/ezynq/ezynq_MT41K256M16RE125.h
include/configs/ezynq/ezynq_XC7Z010_1CLG400.h
include/configs/ezynq/zed_ezynq.h
./makeuboot

IMPORTANT: Only 192KB of zynq's series on-chip memory are available at boot.

Known issues

  • USB does not work yet.
  • Ethernet is not tested (on the board we have it does not work with provided images, so we suspect a hardware problem.
  • Bitstream loading is not tested, current code does not enable level shifters - it may be more appropriate to do just before loading of the bitstream.