Skip to content
jankcorn edited this page Jun 4, 2013 · 50 revisions
  1. toolchain
    https://sourcery.mentor.com/GNUToolchain/release858
    wget https://sourcery.mentor.com/GNUToolchain/package4571/public/arm-none-linux-gnueabi/arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2  
    tar xjf arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2  
  1. kernel
    git clone git@github.com:cambridgehackers/device_xilinx_kernel.git  
    cd device_xilinx_kernel/  
    git checkout remotes/origin/december -b december  
  1. compile
    cd s/git/device_xilinx_kernel/  
    git status  
    make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- xilinx_zynq_portal_defconfig  
    make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-   
    ./scripts/dtc/dtc -I dts -O dtb -o foo.dtb arch/arm/boot/dts/zynq-zc702-bridge.dts  
  1. load
    cp arch/arm/boot/zImage foo.dtb ~
  2. Making new ramdisk8M.image.gz (kernel requires that it be zero-padded to exactly 256kb)
    find . | cpio -H newc -o | gzip -9 -n | dd of=../imagefile.image.gz bs=256k iflag=fullblock conv=sync   
  1. To examine ramdisk8M.image.gz
    gzip -cd ../imagefile.image.gz | cpio -imd   
  1. To create split bitfile for loading from linux
    bootgen -image hdmidisplay.bif -split bin -o i boot.bin
    gzip hdmidisplay.bit.bin
  • Or
    promgen -w -b -p bin -o hdmidisplay.bit.bin -u 0 implementation/hdmidisplay.bit -data_width 32
  1. To load bitfile for FPGA from linux
    mknod /dev/xdevcfg c 259 0
    cat /sys/devices/amba.0/f8007000.devcfg/prog_done
    cat hdmidisplay.bit.bin >/dev/xdevcfg
    cat /sys/devices/amba.0/f8007000.devcfg/prog_done
* or 
    gzip -cd hdmidisplay.bit.bin.gz >/dev/xdevcfg
  1. Debugging clocks
    mount -t debugfs none /sys/kernel/debug/
    ls -l /sys/kernel/debug/clk/PS_CLK/IOPLL/FPGA1_CLK

  2. u-boot build

   git clone git://git.xilinx.com/u-boot-xlnx.git
   cd u-boot-xlnx
   make CROSS_COMPILE=arm-none-linux-gnueabi- zynq_zc70x_config
   make -j CROSS_COMPILE=arm-none-linux-gnueabi- 

Clone this wiki locally