This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
resources:eval:user-guides:ad-fmcomms2-ebz:software:linux:zynq_2015r2 [11 Jan 2018 10:01] – modify title to something more generic Alexandru Ardelean | resources:eval:user-guides:ad-fmcomms2-ebz:software:linux:zynq_2015r2 [11 Jan 2018 10:17] (current) – create symlink to generic new linux-build zynq page Alexandru Ardelean | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Building the Zynq Linux kernel and devicetrees from source ====== | + | {{page>: |
- | + | ||
- | ===== On the development host ===== | + | |
- | + | ||
- | <code> | + | |
- | git clone https:// | + | |
- | </ | + | |
- | + | ||
- | or do a git pull in the existing repository. | + | |
- | + | ||
- | ==== Checkout the Release branch ==== | + | |
- | + | ||
- | <note tip> | + | |
- | If not otherwise required always use the latest release! | + | |
- | </ | + | |
- | + | ||
- | ^ Release names and Branches ^ | + | |
- | | 2014_R2 | | + | |
- | | 2015_R2 | | + | |
- | | 2016_R1 | | + | |
- | | 2016_R2 | | + | |
- | | 2017_R1 | | + | |
- | + | ||
- | < | + | |
- | dave@hal9000: | + | |
- | Branch 2015_R2 set up to track remote branch 2015_R2 from origin. | + | |
- | Switched to a new branch ' | + | |
- | </ | + | |
- | ==== Add arm-xilinx-linux-gnueabi-gcc to PATH ==== | + | |
- | + | ||
- | ^ Release names and Branches ^ Required Vivado/SDK versions ^ | + | |
- | | 2014_R2 | Vivado 2014.2 | | + | |
- | | 2015_R2 | Vivado 2015.2 | | + | |
- | | 2016_R1 | Vivado 2015.4.2 | | + | |
- | | 2016_R2 | Vivado 2016.2 | | + | |
- | | 2017_R1 | Vivado 2016.4 | | + | |
- | + | ||
- | Vivado 2015.2 SDK may be installed into a different directory | + | |
- | + | ||
- | < | + | |
- | dave@hal9000: | + | |
- | </ | + | |
- | ==== Setup cross compile environment variables ==== | + | |
- | < | + | |
- | dave@hal9000: | + | |
- | + | ||
- | dave@hal9000: | + | |
- | </ | + | |
- | ==== Configure the kernel ==== | + | |
- | < | + | |
- | dave@hal9000: | + | |
- | # | + | |
- | # configuration written to .config | + | |
- | # | + | |
- | dave@hal9000: | + | |
- | </ | + | |
- | ==== Build the kernel ==== | + | |
- | + | ||
- | < | + | |
- | dave@hal9000: | + | |
- | scripts/ | + | |
- | CHK | + | |
- | CHK | + | |
- | UPD | + | |
- | CHK | + | |
- | + | ||
- | [ -- snip --] | + | |
- | + | ||
- | AS arch/ | + | |
- | AS arch/ | + | |
- | LD arch/ | + | |
- | OBJCOPY arch/ | + | |
- | Kernel: arch/ | + | |
- | UIMAGE | + | |
- | Image Name: | + | |
- | Created: | + | |
- | Image Type: ARM Linux Kernel Image (uncompressed) | + | |
- | Data Size: 3195872 Bytes = 3120.97 kB = 3.05 MB | + | |
- | Load Address: 00008000 | + | |
- | Entry Point: | + | |
- | dave@hal9000: | + | |
- | </ | + | |
- | ==== Build the devicetree FCMOMMS2/ | + | |
- | + | ||
- | === Build the one that fits your FPGA carrier and FMC card === | + | |
- | + | ||
- | | zynq-zc702-adv7511-ad9361-fmcomms2-3.dts | [[xilinx> | + | |
- | | zynq-zc702-adv7511-ad9361-fmcomms5.dts | [[xilinx> | + | |
- | | zynq-zc702-adv7511-ad9364-fmcomms4.dts | [[xilinx> | + | |
- | | zynq-zc706-adv7511-ad9361-fmcomms2-3.dts | [[xilinx> | + | |
- | | zynq-zc706-adv7511-ad9361-fmcomms2-3-pr.dts | [[xilinx> | + | |
- | | zynq-zc706-adv7511-ad9361-fmcomms5.dts | [[xilinx> | + | |
- | | zynq-zc706-adv7511-ad9364-fmcomms4.dts | [[xilinx> | + | |
- | | zynq-zc706-adv7511-ad9434-fmc-500ebz.dts | [[xilinx> | + | |
- | | zynq-zed-adv7511-ad9361-fmcomms2-3.dts | [[http:// | + | |
- | | zynq-zed-adv7511-ad9364-fmcomms4.dts | [[http:// | + | |
- | | zynq-zed-adv7511-ad9467-fmc-250ebz.dts | [[http:// | + | |
- | | zynq-mini-itx-adv7511-ad9361-fmcomms2-3.dts | [[http:// | + | |
- | | zynq-mini-itx-adv7511-ad9361-fmcomms2-3-pr.dts | [[http:// | + | |
- | | zynq-mini-itx-adv7511-ad9364-fmcomms4.dts | [[http:// | + | |
- | + | ||
- | + | ||
- | + | ||
- | < | + | |
- | dave@hal9000: | + | |
- | DTC | + | |
- | dave@hal9000:~/ | + | |
- | </ | + | |
- | + | ||
- | ==== Copy the generated files to your SD Card ==== | + | |
- | + | ||
- | < | + | |
- | dave@hal9000:~/ | + | |
- | dave@hal9000: | + | |
- | </ | + | |
- | + | ||
- | ===== On the target platform ===== | + | |
- | + | ||
- | ==== Modifying devicetrees ==== | + | |
- | + | ||
- | 1. Make sure the boot partition is mounted. On new images, this can be done by right-clicking the boot icon on the desktop and selecting the "Mount Volume" | + | |
- | + | ||
- | 2. Convert the compiled devicetree related to the target back into an editable format. | + | |
- | + | ||
- | < | + | |
- | dave@hal9000:/ | + | |
- | </ | + | |
- | + | ||
- | 3. Modify the devicetree.dts file as required. | + | |
- | + | ||
- | 4. Recompile the devicetree file. Note that this will overwrite the original dtb file, copy or rename the original file if you want to keep it before running this step. | + | |
- | + | ||
- | < | + | |
- | dave@hal9000:/ | + | |
- | </ | + |