Hi all,
I have a ZedBoard and I'd like to recompile u-boot and kernel from sources. These are the steps that I follow:
1. create a new PlanAhead project (RTL project) selecting ZedBoard
2. in the "Sources View" select "Design Sources" and then Add Sources
a. select Add or Create Embedded Sources
b. select Create Sub-Design (name = system)
3. In XPS create a base system using the Wizard
a. select AXI system
b. select ZedBoard
c. BTNs_5Bits LEDs_8Bits and SWs_8Bits included in Processing System7
4. Close XPS tool
5. In PlanAhead create top HDL
6. Select Generate Bitstream in "Program and Debug" section of Flow Navigator
@@ I got these warnings: @@
[Constraints 18-5] Cannot loc instance 'processing_system7_0_PS_PORB_IBUF' at site B5, Site location is not valid [C:/Xilinx/Projects/ZedBoard/ZedBoard.srcs/sources_1/edk/system/implementation/system_processing_system7_0_wrapper.ncf:157]
[Constraints 18-5] Cannot loc instance 'processing_system7_0_PS_SRSTB_IBUF' at site C9, Site location is not valid [C:/Xilinx/Projects/ZedBoard/ZedBoard.srcs/sources_1/edk/system/implementation/system_processing_system7_0_wrapper.ncf:158]
[Constraints 18-5] Cannot loc instance 'processing_system7_0_PS_CLK_IBUF' at site F7, Site location is not valid [C:/Xilinx/Projects/ZedBoard/ZedBoard.srcs/sources_1/edk/system/implementation/system_processing_system7_0_wrapper.ncf:159]
7. Select Export -> Hardware to SDK and starts SDK tool
8. Create a new Zynq FSBL project and related SDK (zed_fsbl_0 project name)
9. Compile FSBL project
10. Compile u-boot cloning the GIT repository
$ make CROSS_COMPILE=arm-xilinx-linux-gnueabi- zynq_zc70x_config
$ make CROSS_COMPILE=arm-xilinx-linux-gnueabi-
11. Generate the new BOOT.BIN file using:
zed_fsbl_0.elf (binary)
system.bit (bitstream)
u-boot.elf (binary)
12. Copy the BOOT.BIN file into the SD card of the board
On boot I got this error:
Uncompressing Linux... done, booting the kernel.
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Linux version 3.3.0-digilent-12.07-zed-beta (tinghui.wang@DIGILENT_LINUX) (gcc versi2
[ 0.000000] CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine: Xilinx Zynq Platform, model: Xilinx Zynq ZED
[ 0.000000] bootconsole [earlycon0] enabled
[ 0.000000] Memory policy: ECC disabled, Data cache writealloc
[ 0.000000] BUG: mapping for 0xf8f00000 at 0xfe00c000 out of vmalloc space
[ 0.000000] BUG: mapping for 0xe0000000 at 0xfe000000 out of vmalloc space
[ 0.000000] BUG: mapping for 0xffff1000 at 0xfe200000 out of vmalloc space
[ 0.000000] PERCPU: Embedded 7 pages/cpu @c1489000 s5696 r8192 d14784 u32768
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 125824
[ 0.000000] Kernel command line: console=ttyPS0,115200 root=/dev/ram rw initrd=0x800000,8M early0
[ 0.000000] PID hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 240MB 256MB = 496MB total
[ 0.000000] Memory: 489856k/489856k available, 34432k reserved, 0K highmem
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xfd000000 ( 456 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0xc0008000 - 0xc042f040 (4253 kB)
[ 0.000000] .init : 0xc0430000 - 0xc0456640 ( 154 kB)
[ 0.000000] .data : 0xc0458000 - 0xc0485dc0 ( 184 kB)
[ 0.000000] .bss : 0xc0485de4 - 0xc049d734 ( 95 kB)
[ 0.000000] Preemptible hierarchical RCU implementation.
[ 0.000000] Verbose stalled-CPUs detection is disabled.
[ 0.000000] NR_IRQS:128
[ 0.000000] xlnx,ps7-ttc-1.00.a #0 at 0xe0800000, irq=43
[ 0.000000] Console: colour dummy device 80x30
[ 0.000000] Calibrating delay loop... 1594.16 BogoMIPS (lpj=7970816)
[ 0.090000] pid_max: default: 32768 minimum: 301
[ 0.090000] Mount-cache hash table entries: 512
[ 0.090000] CPU: Testing write buffer coherency: ok
[ 0.090000] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.100000] smp_twd: clock not found: -2
[ 0.100000] Calibrating local timer... 399.36MHz.
[ 0.170000] hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
[ 0.170000] Setting up static identity map for 0x2f8d48 - 0x2f8d7c
[ 0.270000] CPU1: Booted secondary processor
[ 0.310000] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.310000] Brought up 2 CPUs
[ 0.310000] SMP: Total of 2 processors activated (3188.32 BogoMIPS).
[ 0.320000] devtmpfs: initialized
[ 0.320000] ------------[ cut here ]------------
[ 0.320000] WARNING: at arch/arm/mm/dma-mapping.c:198 consistent_init+0x70/0x104()
[ 0.330000] Modules linked in:
[ 0.330000] [<c0012920>] (unwind_backtrace+0x0/0xe0) from [<c001e924>] (warn_slowpath_common+0x4)
[ 0.340000] [<c001e924>] (warn_slowpath_common+0x4c/0x64) from [<c001e954>] (warn_slowpath_null+)
[ 0.350000] [<c001e954>] (warn_slowpath_null+0x18/0x1c) from [<c04345a8>] (consistent_init+0x70/)
[ 0.360000] [<c04345a8>] (consistent_init+0x70/0x104) from [<c000858c>] (do_one_initcall+0x90/0x)
[ 0.360000] [<c000858c>] (do_one_initcall+0x90/0x160) from [<c043085c>] (kernel_init+0x84/0x128)
[ 0.370000] [<c043085c>] (kernel_init+0x84/0x128) from [<c000dfcc>] (kernel_thread_exit+0x0/0x8)
[ 0.380000] ---[ end trace 1b75b31a2719ed1c ]---
[ 0.380000] ------------[ cut here ]------------
[ 0.390000] WARNING: at arch/arm/mm/dma-mapping.c:198 consistent_init+0x70/0x104()
[ 0.390000] Modules linked in:
[ 0.390000] [<c0012920>] (unwind_backtrace+0x0/0xe0) from [<c001e924>] (warn_slowpath_common+0x4)
[ 0.400000] [<c001e924>] (warn_slowpath_common+0x4c/0x64) from [<c001e954>] (warn_slowpath_null+)
[ 0.410000] [<c001e954>] (warn_slowpath_null+0x18/0x1c) from [<c04345a8>] (consistent_init+0x70/)
[ 0.420000] [<c04345a8>] (consistent_init+0x70/0x104) from [<c000858c>] (do_one_initcall+0x90/0x)
[ 0.430000] [<c000858c>] (do_one_initcall+0x90/0x160) from [<c043085c>] (kernel_init+0x84/0x128)
[ 0.430000] [<c043085c>] (kernel_init+0x84/0x128) from [<c000dfcc>] (kernel_thread_exit+0x0/0x8)
[ 0.440000] ---[ end trace 1b75b31a2719ed1d ]---
[ 0.440000] NET: Registered protocol family 16
[ 0.460000] L310 cache controller enabled
[ 0.460000] l2x0: 8 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x72360000, Cache size: 524288 B
[ 0.460000] registering platform device 'pl330' id 0
[ 0.470000] registering platform device 'arm-pmu' id 0
[ 0.470000]
[ 0.470000] ###############################################
[ 0.480000] # #
[ 0.480000] # Board ZED Init #
[ 0.480000] # #
[ 0.490000] ###############################################
[ 0.490000]
[ 0.500000] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
[ 0.500000] hw-breakpoint: maximum watchpoint size is 4 bytes.
[ 0.530000] xslcr xslcr.0: at 0xF8000000 mapped to 0xE0808000
[ 0.540000] bio: create slab <bio-0> at 0
[ 0.540000] gpiochip_add: registered GPIOs 0 to 245 on device: xgpiops
[ 0.540000] xgpiops e000a000.gpio: gpio at 0xe000a000 mapped to 0xe080a000
[ 0.550000] Unhandled fault: imprecise external abort (0x406) at 0x00000000
[ 0.550000] Internal error: : 406 [#1] PREEMPT SMP
[ 0.550000] Modules linked in:
[ 0.550000] CPU: 0 Tainted: G W (3.3.0-digilent-12.07-zed-beta #2)
[ 0.550000] PC is at __rcu_read_unlock+0x0/0x4c
[ 0.550000] LR is at release_task+0x38/0x438
[ 0.550000] pc : [<c005bd60>] lr : [<c00206e4>] psr: 60000013
[ 0.550000] sp : d80f7f90 ip : d80f6010 fp : 00000000
[ 0.550000] r10: 00000001 r9 : d80f7fbc r8 : d811293c
[ 0.550000] r7 : d811293c r6 : c0466364 r5 : c0466368 r4 : d8112800
[ 0.550000] r3 : d8112800 r2 : 00000001 r1 : 00000011 r0 : 00000000
[ 0.550000] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 0.550000] Control: 18c5387d Table: 0000404a DAC: 00000015
[ 0.550000] Process kworker/u:0 (pid: 336, stack limit = 0xd80f62f0)
[ 0.550000] Stack: (0xd80f7f90 to 0xd80f8000)
[ 0.550000] 7f80: d8112800 00000001 d8112800 00000001
[ 0.550000] 7fa0: 00000000 d811293c d811293c d80f7fbc 00000001 c0021f98 00000000 d80f7fbc
[ 0.550000] 7fc0: d80f7fbc d8112984 d8348540 d8348554 fffffffe 00000013 00000000 00000000
[ 0.550000] 7fe0: 00000000 c002ffa4 d8348540 c002fe8c c000dfcc c000dfcc c0101009 69452425
[ 0.550000] [<c005bd60>] (__rcu_read_unlock+0x0/0x4c) from [<00000001>] (0x1)
[ 0.550000] Code: e121f007 e8bd85f8 03ff0100 c04673c0 (e92d4010)
[ 0.560000] ---[ end trace 1b75b31a2719ed1e ]---
[ 0.560000] Unhandled fault: imprecise external abort (0x406) at 0x00000000
[ 0.560000] Fixing recursive fault but reboot is needed!
[ 0.560000] Internal error: : 406 [#2] PREEMPT SMP
[ 0.560000] Modules linked in:
[ 0.560000] CPU: 0 Tainted: G D W (3.3.0-digilent-12.07-zed-beta #2)
[ 0.560000] PC is at kernel_thread_helper+0x0/0x10
[ 0.560000] LR is at kernel_thread_helper+0x0/0x10
[ 0.560000] pc : [<c000dfbc>] lr : [<c000dfbc>] psr: 00000093
[ 0.560000] sp : d843bff8 ip : 00000000 fp : 00000000
[ 0.560000] r10: 00000000 r9 : 00000000 r8 : 00000000
[ 0.560000] r7 : 00000013 r6 : c000dfcc r5 : c002fe8c r4 : d8348380
[ 0.560000] r3 : 00000000 r2 : 00000000 r1 : 00000000 r0 : 00000000
[ 0.560000] Flags: nzcv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 0.560000] Control: 18c5387d Table: 0000404a DAC: 00000015
[ 0.560000] Process kworker/u:0 (pid: 339, stack limit = 0xd843a2f0)
[ 0.560000] Stack: (0xd843bff8 to 0xd843c000)
[ 0.560000] bfe0: 03bb0014 50803f60
[ 0.560000] Code: 11a00150 12000001 e12fff1e c02fa19c (e121f007)
[ 0.570000] ---[ end trace 1b75b31a2719ed1f ]---
[ 0.570000] SCSI subsystem initialized
[ 0.580000] usbcore: registered new interface driver usbfs
[ 0.580000] usbcore: registered new interface driver hub
[ 0.590000] usbcore: registered new device driver usb
[ 0.590000] Advanced Linux Sound Architecture Driver Version 1.0.24.
[ 0.600000] Switching to clocksource xttcpss_timer1
[ 0.610000] NET: Registered protocol family 2
[ 0.610000] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.610000] TCP established hash table entries: 16384 (order: 5, 131072 bytes)
[ 0.620000] TCP bind hash table entries: 16384 (order: 5, 196608 bytes)
[ 0.620000] TCP: Hash tables configured (established 16384 bind 16384)
[ 0.630000] TCP reno registered
[ 0.630000] UDP hash table entries: 256 (order: 1, 8192 bytes)
[ 0.640000] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
[ 0.640000] NET: Registered protocol family 1
[ 0.650000] Trying to unpack rootfs image as initramfs...
[ 0.650000] rootfs image is not initramfs (no cpio magic); looks like an initrd
[ 0.680000] Freeing initrd memory: 8192K
[ 0.690000] xscugtimer xscugtimer.0: ioremap fe00c200 to e0810200 with size 400
[ 0.690000] pl330 dev 0 probe success
[ 0.700000] msgmni has been set to 972
[ 0.700000] io scheduler noop registered
[ 0.700000] io scheduler deadline registered
[ 0.700000] io scheduler cfq registered (default)
[ 0.710000] e00 0.710000] console [ttyPS0] enabled, bootconsole disabled
[ 0.710000] console [ttyPS0] enabled, bootconsole disabled
[ 0.720000] xdevcfg f8007000.devcfg: ioremap f8007000 to e0814000 with size 1000
[ 0.730000] [drm] Initialized drm 1.1.0 20060810
[ 0.740000] brd: module loaded
[ 0.750000] loop: module loaded
[ 0.750000] xqspips e000d000.qspi: at 0xE000D000 mapped to 0xE0816000, irq=51
[ 0.760000] GEM: BASEADDRESS hw: e000b000 virt: e0818000
[ 0.760000] XEMACPS mii bus: probed
[ 0.770000] eth0, pdev->id -1, baseaddr 0xe000b000, irq 54
[ 0.770000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[ 0.780000] usb_hcd_xusbps_probe: No OTG assigned!
[ 0.780000] usb_hcd_xusbps_probe: OTG now assigned!
[ 0.780000] xusbps-ehci xusbps-ehci.0: Xilinx PS USB EHCI Host Controller
[ 0.790000] xusbps-ehci xusbps-ehci.0: new USB bus registered, assigned bus number 1
[ 0.830000] xusbps-ehci xusbps-ehci.0: irq 53, io mem 0x00000000
[ 0.850000] xusbps-ehci xusbps-ehci.0: USB 2.0 started, EHCI 1.00
[ 0.850000] hub 1-0:1.0: USB hub found
[ 0.850000] hub 1-0:1.0: 1 port detected
[ 0.860000] Initializing USB Mass Storage driver...
[ 0.860000] usbcore: registered new interface driver usb-storage
[ 0.870000] USB Mass Storage support registered.
[ 0.870000] Xilinx PS USB Device Controller driver (Apr 01, 2011)
[ 0.880000] mousedev: PS/2 mouse device common for all mice
[ 0.880000] Unhandled fault: imprecise external abort (0x406) at 0x00000000
[ 0.890000] Internal error: : 406 [#3] PREEMPT SMP
[ 0.890000] Modules linked in:
[ 0.890000] CPU: 1 Tainted: G D W (3.3.0-digilent-12.07-zed-beta #2)
[ 0.900000] PC is at xiic_clear_rx_fifo+0x1c/0x2c
[ 0.900000] LR is at xiic_reinit+0x98/0x124
[ 0.910000] pc : [<c0208200>] lr : [<c02082a8>] psr: 60000013
[ 0.910000] sp : d804fee8 ip : e0820000 fp : 00000058
[ 0.920000] r10: 00000000 r9 : d8071818 r8 : d80b2808
[ 0.920000] r7 : 00000000 r6 : d806c840 r5 : c0460454 r4 : d8071800
[ 0.930000] r3 : e0820000 r2 : 00000000 r1 : 00000001 r0 : d8071800
[ 0.930000] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 0.940000] Control: 18c5387d Table: 0000404a DAC: 00000015
[ 0.940000] Process swapper/0 (pid: 1, stack limit = 0xd804e2f0)
[ 0.950000] Stack: (0xd804fee8 to 0xd8050000)
[ 0.950000] fee0: 00000000 d8071800 d80b2800 c02f1ca0 00000000 c0479cbc
[ 0.960000] ff00: 00000000 d80b2808 c04997f4 c0479cbc c0479cbc 00000000 00000000 00000000
[ 0.960000] ff20: 00000000 c0194988 c0194974 c0193a90 00000000 d80b2808 d80b283c c0479cbc
[ 0.970000] ff40: 00000000 c0193bac c0479cbc c0193b4c 00000000 c0192660 d803c820 d80afa78
[ 0.980000] ff60: c0479cbc d8406740 c046f1f8 c01933ac c03d74e1 00000001 00000000 c0479cbc
[ 0.980000] ff80: c0443de4 00000000 00000013 00000000 00000000 c0194084 d804ffb8 c0443de4
[ 0.990000] ffa0: 00000000 00000013 00000000 00000000 00000000 c000858c c0466524 00000000
[ 1.000000] ffc0: c0466524 c013e910 c04545fc c0454900 c04545fc c000dfcc 00000013 00000000
[ 1.000000] ffe0: 00000000 c043085c 00000000 00000000 c04307d8 c000dfcc c0905009 69452425
[ 1.010000] [<c0208200>] (xiic_clear_rx_fifo+0x1c/0x2c) from [<c02082a8>] (xiic_reinit+0x98/0x12)
[ 1.020000] [<c02082a8>] (xiic_reinit+0x98/0x124) from [<c02f1ca0>] (xiic_i2c_probe+0x100/0x230)
[ 1.030000] [<c02f1ca0>] (xiic_i2c_probe+0x100/0x230) from [<c0194988>] (platform_drv_probe+0x14)
[ 1.030000] [<c0194988>] (platform_drv_probe+0x14/0x18) from [<c0193a90>] (driver_probe_device+0)
[ 1.040000] [<c0193a90>] (driver_probe_device+0xc8/0x184) from [<c0193bac>] (__driver_attach+0x6)
[ 1.050000] [<c0193bac>] (__driver_attach+0x60/0x84) from [<c0192660>] (bus_for_each_dev+0x48/0x)
[ 1.060000] [<c0192660>] (bus_for_each_dev+0x48/0x74) from [<c01933ac>] (bus_add_driver+0x98/0x2)
[ 1.060000] [<c01933ac>] (bus_add_driver+0x98/0x214) from [<c0194084>] (driver_register+0xa0/0x1)
[ 1.070000] [<c0194084>] (driver_register+0xa0/0x134) from [<c000858c>] (do_one_initcall+0x90/0x)
[ 1.080000] [<c000858c>] (do_one_initcall+0x90/0x160) from [<c043085c>] (kernel_init+0x84/0x128)
[ 1.090000] [<c043085c>] (kernel_init+0x84/0x128) from [<c000dfcc>] (kernel_thread_exit+0x0/0x8)
[ 1.090000] Code: f57ff04f e590c000 e59c2104 f57ff04f (e6ef1072)
[ 1.100000] ---[ end trace 1b75b31a2719ed20 ]---
I think that I miss some steps ... can anyone help me?
Do I need to recompile also the kernel and other elements?
Best Regards,
Alessandro.