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!

AR# 53180

Zynq - Configuration - Determining the Address of Linux Files During Configuration

Description

When using U-Boot to boot Linux, the address ranges used for 14.2 no longer work for 14.3.

Solution

When booting Linux on Zynq, each file is given a certain address to be associated within the memory space. 

However, these address spaces may be different depending on the boot mode and version of the Linux/U-Boot build used.

To determine the exact address for a given version and boot mode, users must refer to the Xilinx GIT Repository.

u-boot-xarm.git -> specify build tag -> tree -> include -> configs -> zynq_common.h

For example, below is an excerpt from zynq_common.h of the Xilinx 14.3 build of U-Boot

35 /* Default environment */
36 #define CONFIG_EXTRA_ENV_SETTINGS \
37     "ethaddr=00:0a:35:00:01:22\0" \
38     "kernel_image=uImage\0" \
39     "ramdisk_image=uramdisk.image.gz\0" \
40     "devicetree_image=devicetree.dtb\0" \
41     "kernel_size=0x140000\0" \
42     "ramdisk_size=0x200000\0" \
43     "nand_kernel_size=0x400000\0" \
44     "nand_ramdisk_size=0x400000\0" \
45     "fdt_high=0x20000000\0" \
46     "initrd_high=0x20000000\0" \
47     "norboot=echo Copying Linux from NOR flash to RAM...;" \
48         "cp 0xE2100000 0x3000000 ${kernel_size};" \
49         "cp 0xE2600000 0x2A00000 0x20000;" \
50         "echo Copying ramdisk...;" \
51         "cp 0xE3000000 0x2000000 ${ramdisk_size};" \
52         "bootm 0x3000000 0x2000000 0x2A00000\0" \
53     "qspiboot=echo Copying Linux from QSPI flash to RAM...;" \
54         "cp 0xFC100000 0x3000000 ${kernel_size};" \
55         "cp 0xFC600000 0x2A00000 0x20000;" \
56         "echo Copying ramdisk...;" \
57         "cp 0xFC800000 0x2000000 ${ramdisk_size};" \
58         "bootm 0x3000000 0x2000000 0x2A00000\0" \
59     "sdboot=echo Copying Linux from SD to RAM...;" \
60         "mmcinfo;" \
61         "fatload mmc 0 0x3000000 ${kernel_image};" \
62         "fatload mmc 0 0x2A00000 ${devicetree_image};" \
63         "fatload mmc 0 0x2000000 ${ramdisk_image};" \
64         "bootm 0x3000000 0x2000000 0x2A00000\0" \
65     "nandboot=echo Copying Linux from NAND flash to RAM...;" \
66         "nand read 0x3000000 0x200000 ${nand_kernel_size};" \
67         "nand read 0x2A00000 0x700000 0x20000;" \
68         "echo Copying ramdisk...;" \
69         "nand read 0x2000000 0x900000 ${nand_ramdisk_size};" \
70         "bootm 0x3000000 0x2000000 0x2A00000\0" \
71     "jtagboot=echo TFTPing Linux to RAM...;" \
72         "tftp 0x3000000 ${kernel_image};" \
73         "tftp 0x2A00000 ${devicetree_image};" \
74         "tftp 0x2000000 ${ramdisk_image};" \
75         "bootm 0x3000000 0x2000000 0x2A00000\0"



Linked Answer Records

Master Answer Records

Answer Number Answer Title Version Found Version Resolved
52538 Zynq-7000 AP SoC - Boot and Configuration N/A N/A
AR# 53180
Date Created 11/29/2012
Last Updated 10/14/2014
Status Active
Type General Article
Devices
  • Zynq-7000
Tools
  • EDK
  • ISE
  • PlanAhead
  • ISE Design Suite