This is step-by-step tutorial on how to build reference design for Analog Devices ADV7511 HDMI encoder used on ZedBoard with PetaLinux 2013.10. It will be mostly based on AD HDL reference design http://wiki.analog.com/resources/fpga/xilinx/kc705/adv7511 and AD Linux drivers wiki page http://wiki.analog.com/resources/tools-software/linux-drivers/platforms/zynq and Xilinx PetaLinux documentation http://www.wiki.xilinx.com/PetaLinux.
As of today, 25 May 2014, to create HDL design for ADV7511 from scratch, we have to use Vivado 2013.4, even though Vivado 2014.1 is already available. The reason is some changes in a Xilinx IP's (which I didn't had a chance to figure out yet) prevent HDL design from build/work properly.
- First step is to download HDL libraries and projects from AnalogDevices repositories on a github: https://github.com/analogdevicesinc/hdl. You can clone it or download a ZIP. I will download a ZIP and extract 'hdl-master' in my Projects/FPGA/ folder on Windows7 machine.
- Second step is to build a few Analog Devices IP required to create ZedBoard HDMI design. Run Xilinx Vivado 2013.4, open a TCL console, change directories and 'source' a .tcl scripts. For example, to build AXI_CLKGEN IP:
cd c:/Projects/FPGA/hdl-master/library/axi_clkgen
source ./axi_clkgen_ip.tclAfter script finish, close created project and build the next. For ZedBoard we have build the next IP's:
- hdl-master/library/axi_clkgen
- hdl-master/library/axi_hdmi_tx
- hdl-master/library/axi_i2s_adi
- hdl-master/library/axi_spdif_tx
- hdl-master/library/util_i2c_mixer
- After we done with all required IP's, we can build ADV7511 reference design for ZedBoard. In a Tcl Console change directory to ADV7511 and run 'system_project' script.
cd c:/Projects/FPGA/hdl-master/projects/adv7511/zed/
source ./system_project.tclScript will create block design, run synthesis and implementation, generate bitstream and even export software to SDK(without opening it). This was the case on my system - everything went smoothly. We are done with Vivado and can close it.
We have to create HDL in Vivado 2013.4, but later we can import created project into Vivado 2014.1 and update it to use latest Xilinx IP's.
- Let's build a FSBL. We need very typical Zynq first stage boot loader and I covered creation of it before, so now just a short description:
- Run XSDK.
- Create new 'Hardware Platform Specification' project (I named it 'ZedBoard-HDMI-HW') and specify HW created in a previous step.
- Create Application project (named 'ZedBoard-HDMI-FSBL') using our new 'Hardware Platform' and select to create new BSP for it. Don't forget to use 'Zynq FSBL' template. Build it if this not done automatically.
- Next step is to create PetaLinux BSP. This is also very typical PetaLinux BSP, just don't forget to change 'Configuration' to reflect ZedBoard configuration and name it 'ZedBoard-HDMI-petalinux_bsp'.
We are done with Xilinx SDK. You can close it.
- Next step is to create PetaLinux project and set 'hardware description'. I will call it 'ZedBoard-HDMI' Petalinux project:
petalinux-create -t project -n ZedBoard-HDMI
cd ~/Projects/ZedBoard-HDMI-petalinux_bsp/
petalinux-config --get-hw-description -p ../ZedBoard-HDMI/
cd ~/Projects/ZedBoard-HDMI/
rm -r hw-description - Now, as of today, ADV7511 Linux driver not in a mainstream kernel. So, we need to get Kernel from Analog Devices repository with appropriate patches. Current version is 3.14.0. Let's clone it, and checkout 'xcomm_zynq' branch.
cd ~/Projects/
git clone https://github.com/analogdevicesinc/linux.git analogdevices-kernel
cd analogdevices-kernel/
git checkout xcomm_zynq - Create necessary directories and copy 'xcomm_zynq' branch to our PetaLinux project directory.
cd ~/Projects/
mkdir ~/Projects/ZedBoard-HDMI/components
mkdir ~/Projects/ZedBoard-HDMI/components/linux-kernel
cp -a analogdevices-kernel ~/Projects/ZedBoard-HDMI/components/linux-kernel/ - Run 'petalinux-config' and change kernel to 'analogdevices-kernel' and system boot device to 'SD card'.
- Next we need to configure Linux kernel for PetaLinux and we need to enable all options required by ADV7511. AnalogDevices kernel support special configuration option 'zynq_xcomm_adv7511_defconfig', but we cannot run it with PetaLinux. So, we have to pre-configure kernel separately ('make ARCH=arm zynq_xcomm_adv7511_defconfig') and just copy resulted config into 'ZedBoard-HDMI/subsystems/linux/configs/kernel'. So, I did it and also copied it into PetaLinux Kernel configs directory '/opt/petalinux-v2013.10-final/etc/template/project/template-zynq/subsystems/linux/configs/kernel'. So, I can later reuse it. Also notice that kernel default config file have dot in the front and PetaLinux files don't.
Anyway, here is link to my resulted kernel config file: https://blog.idv-tech.com/wp-content/uploads/2014/05/config_hdmi_3_14.config - We also, have to modify 'devices tree' generated by PetaLinux for our project. AnalogDecices Linux kernel have template for ZedBoard which you can find in 'arch/arm/boot/dts/zynq-zed-adv7511.dts', so we basically have to copy missing devices from AD into our tree.
Link to my resulted DTS file for ZedBoard: https://blog.idv-tech.com/wp-content/uploads/2014/05/adv7511_dts.config. - We are basically done. At this point you my want to modify PetaLinux project, for example, include Qt5 library and test app to check frame buffer device later. I covered this topics in my previous post, so I wont repeat it here.
Build Petalinux project, create BOOT.BIN and copy it together with Linux image file 'image.ub' on SD card:
petalinux-build
petalinux-package --boot --fsbl ../ZedBoard-HDMI-FSBL/Release/ZedBoard-HDMI-FSBL.elf --fpga ../ZedBoard-HDMI-HW/system_top.bit --uboot --force -o images/linux/BOOT.BIN - Insert SD card into slot of ZedBoard and turn it on. During boot kernel should detect ADV7511(hdmi) and ADAU1761(sound) devices and create '/dev/fb0' device.So, below partial bootlog from my ZedBoard:
- This is basically it - once you have a framebuffer device you can start using it. So I ran my Qt5 test app and it worked. We obviously don't have any hardware acceleration with this HDL design, but we got basic FB device and HDMI output. Congratulations!
cd ZedBoard-HDMI
petalinux-config
... [drm] Initialized drm 1.1.0 20060810 /analogdevices-kernel/drivers/gpu/drm/adi_axi_hdmi/axi_hdmi_drv.c:axi_hdmi_platform_probe[176] platform 70e00000.axi_hdmi: Driver axi-hdmi requests probe deferral ... adv7511-hdmi-snd adv7511_hdmi_snd.2: adv7511 <-> 75c00000.axi-spdif-tx mapping ok ... zed-adau1761-snd zed_sound.3: adau-hifi <-> 77600000.axi-i2s mapping ok ... Console: switching to colour frame buffer device 180x56 axi-hdmi 70e00000.axi_hdmi: fb0: frame buffer device axi-hdmi 70e00000.axi_hdmi: registered panic notifier [drm] Initialized axi_hdmi_drm 1.0.0 20120930 on minor 0 /analogdevices-kernel/drivers/rtc/hctosys.c: unable to open rtc device (rtc0) ALSA device list: #0: HDMI monitor #1: ZED ADAU1761 Freeing unused kernel memory: 23356K (c062b000 - c1cfa000) INIT: version 2.88 booting Starting Bootlog daemon: bootlogd. ... _____ _ _ _ | ___ \ | | | | (_) | |_/ / ___ | |_ __ _ | | _ _ __ _ _ __ __ | __/ / _ \| __| / _` || | | || '_ \ | | | |\ \/ / | | | __/| |_ | (_| || |____| || | | || |_| | > < \_| \___| \__| \__,_|\_____/|_||_| |_| \__,_|/_/\_\ PetaLinux v2013.10 (Yocto 1.4) ZedBoard ttyPS0 ZedBoard login: root Password: login[923]: root login on `ttyPS0' root@ZedBoard:~# ls /dev/fb0 /dev/fb0 root@ZedBoard:~# uname -a Linux ZedBoard 3.14.0-g681a2d8-dirty #2 SMP PREEMPT Sun May 25 22:46:28 EDT 2014 armv7l GNU/Linux root@ZedBoard:~#
Hi d9
do you have any success with last vivado 14.1 ?
I try too...
I source tcl project script, update IP to 14.1 revision
design is now synthetisable and implementable.
adi linux 3.14 kernel boots, discovers adau1761, but speaker-test complains about no PCM....
do you have any clues about this issue ?
I tried to source the tcl script but get an error message that "Comonent '(none):user:axi_clkgen:1.0 (axi_clkgen_v1_0)': The vendor "(none)" is not a valid domain name.
Did you also get this issue?
No, I didn't experience any problem with Analog Devices IP.
Hello d9!
I have a question on ADV7511 Reference Design.
I've managed to boot Ubuntu as Analog Devices say in their tutorial using Vivado Reference Design on my Zedboard:
http://wiki.analog.com/resources/tools-software/linux-drivers/platforms/zynq
Could you tell me if there is any simple way to make example of interfacing SPI and I2C based on this design?
When you say: "We also, have to modify 'devices tree' generated by PetaLinux for our project ... we basically have to copy missing devices from AD into our tree", can you outline the procedure for doing this; I am not certain what is a considered a "device".
While following this guide, the bootloader get's stuck in the mode: "Starting Kernel" - I suspect it's because I'm not generating the device tree.
I suspect it's because I'm not generating the device tree correctly*
I included full dts file - see point 11.
I am trying to generate the modified device tree for the zc702 and was interested in the process that you used to diff the device trees (the file from ADI and the file generated by petalinux) for the zedboard so I could do the same for the zc702. Sorry for the trouble but I haven't been able to find documentation on how to do this anywhere else.
Just like you, I usually take DTS generated by Xilinx Petalinux project create utility and manually modify it. I add missing device nodes (for example, where is no way for this utility to know about your custom IP block) and I modify autogenerated devices if some properties for it wrong or missing, so my DTS will reflect actual design. You have all required information in Vivado 'hardware design', so no surprises here - just reflect it in DTS.
And I usually use reference design as-is and go thru available tutorials first and then I transfer pieces of it in my custom project. I found, I actually save a lot of time this way.
I build the analog kernel in petalinux2014.2 ,it worked .But the keyboard/mouse cann't work! Have you try the keyboard/mouse in USB-OTG port?
I don't have any problems with keyboard/mouse. Check if you have Xilinx USB enabled in both hardware and kernel.
Thanks very much! I changed the DTS file,the mouse is ok now.
Now I want to use the /dev/fb0 as the console ,and auto login in without input the password and username, then my embeded application can work automation. Have you try it like this?
hello.I'm using vivado2014.4 and ubuntu14.04-64 bit. I download the ad-linux kernel in zip at site https://github.com/analogdevicesinc/linux.
but errors occurred when "make uImage LOADADDR=0x00008000" referring to http://wiki.analog.com/resources/tools-software/linux-drivers/platforms/zynq. It tells "fs/inode.o as fs/built-in.o, no such file"
Errors still occurs when I chose "clone in desktop" and copy it to my virtual Ubuntu.
It does OK with Xilinx linux-kernel resources.
I wonder if there has any error with my method following the http://wiki.analog.com/resources/tools-software/linux-drivers/platforms/zynq or other errors.
Could you give me some advises, thank you.
Most likely changes in Kernel 3.18 and later causing this problems. Everybody getting all kind of problems with inode right now, VMWare tools for example. They should fix it pretty soon.
But for now, you can try to copy Analog Devices drivers to Xilinx kernel 3.17
thanks,i used kernel lower than 3.18 and it can compile uImage, but it still cannot boot linux. I haved download other linux-sources at https://github.com/analogdevicesinc/linux.I have tried linux-2014_R2,linux-2014_R1, but just cannot compile telling lack *.o. I tested linux-xcomm_zynq-2013-04-19.tar.gz,xcomm_zynq-3-8, they can compile to uImage, and I use the devicetree generated by SDK2014.4,it cannot boot; I use the dts,dtsi supplied in the sources, It cannot boot,too. I tested the xcomm_zynq-3-10 and get the uImage, but when booting with the devicetree generated by SDK2014.4 it boot but stop
at "Exception stack(0xc0573f70 to 0xc0573fb8)
3f60: c000e8fc 00000000 00000000 00000000
3f80: c0572000 00000000 c03afcd8 c0565830 c0ec87c0 413fc090 00000000 00000000
3fa0: c03ac98c c0573fb8 c000e8fc c000e900 60000013 ffffffff
[] (__irq_svc+0x44/0x78) from [] (arch_cpu_idle+0x28/0x30)
[] (arch_cpu_idle+0x28/0x30) from [] (cpu_startup_entry+0xb4/0x118)
[] (cpu_startup_entry+0xb4/0x118) from [] (start_kernel+0x2c0/0x314)
[] (start_kernel+0x2c0/0x314) from [] (0x8074)"
and I don't know why. The linux-sources not right? or devicetree not ok?
I used vivado 2014.4 make a self-made AXI-ip project and generate devicetree and boot with the u-boot,uImage compiled from xilinx git, it works well with the IP's linux driver. So my develop environment should be OK.
At which point it gives you this error message?
I tested the xcomm_zynq-3-10 and get the uImage; using the u-boot compiled by xilinx-2014.4 source; using SDK 2014.4 to get devicetree; when booting from SD card.it shows lot message, and finally stop. The last message is
".......(a lot above)
Exception stack(0xc0573f70 to 0xc0573fb8)
3f60: c000e8fc 00000000 00000000 00000000
3f80: c0572000 00000000 c03afcd8 c0565830 c0ec87c0 413fc090 00000000 00000000
3fa0: c03ac98c c0573fb8 c000e8fc c000e900 60000013 ffffffff
[] (__irq_svc+0x44/0x78) from [] (arch_cpu_idle+0x28/0x30)
[] (arch_cpu_idle+0x28/0x30) from [] (cpu_startup_entry+0xb4/0x118)
[] (cpu_startup_entry+0xb4/0x118) from [] (start_kernel+0x2c0/0x314)
[] (start_kernel+0x2c0/0x314) from [] (0x8074)"
(I don't know how to upload attachment here)
Oh, I get many warnings in my vivado project. May it be the reason?
Lots of warnings is typical for HDL tools, but not errors or timing violation. Open implemented design and go thru reports - you must have no errors.
Also, Linux kernel hangs at some point during boot - by figuring out what's got loaded last and at which point it hanged - may give you a clue. In a log you posted about I see no anything useful.
full boot info is:(build kernel from xcomm-3-10;using xsdk2014.4 make devicetee )
S[YX,27
OEM: 5048
Name: SD04G
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 3.7 GiB
Bus Width: 4-bit
reading uEnv.txt
** Unable to read file uEnv.txt **
Copying Linux from SD to RAM...
reading uImage
2918496 bytes read in 271 ms (10.3 MiB/s)
reading devicetree.dtb
10045 bytes read in 16 ms (612.3 KiB/s)
reading uramdisk.image.gz
5310018 bytes read in 466 ms (10.9 MiB/s)
## Booting kernel from Legacy Image at 02080000 ...
Image Name: Linux-3.10.0
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2918432 Bytes = 2.8 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 04000000 ...
Image Name:
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 5309954 Bytes = 5.1 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Loading Kernel Image ... OK
Loading Ramdisk to 1e814000, end 1ed24602 ... OK
Loading Device Tree to 1e80e000, end 1e81373c ... OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 3.10.0 (root@zq) (gcc version 4.7.2 (Sourcery CodeBench Lite 2012.09-104) ) #1 SMP PREEMPT Mon Mar 9 14:08:01 CST 2015
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: Xilinx Zynq Platform, model: xlnx,zynq-7000
bootconsole [earlycon0] enabled
cma: CMA: reserved 40 MiB at 1c000000
Memory policy: ECC disabled, Data cache writealloc
PERCPU: Embedded 8 pages/cpu @c0ecb000 s8640 r8192 d15936 u32768
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyPS0,115200 root=/dev/ram rw earlyprintk
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 512MB = 512MB total
Memory: 462408k/462408k available, 61880k reserved, 0K highmem
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.text : 0xc0008000 - 0xc054423c (5361 kB)
.init : 0xc0545000 - 0xc05701c0 ( 173 kB)
.data : 0xc0572000 - 0xc05aec40 ( 244 kB)
.bss : 0xc05aec40 - 0xc0abfc60 (5189 kB)
Preemptible hierarchical RCU implementation.
RCU lockdep checking is enabled.
Dump stacks of tasks blocking RCU-preempt GP.
RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
NR_IRQS:16 nr_irqs:16 16
slcr mapped to e0802000
Zynq clock init
sched_clock: 16 bits at 54kHz, resolution 18432ns, wraps every 1207ms
timer #0 at e0804000, irq=43
Console: colour dummy device 80x30
Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
... MAX_LOCKDEP_SUBCLASSES: 8
... MAX_LOCK_DEPTH: 48
... MAX_LOCKDEP_KEYS: 8191
... CLASSHASH_SIZE: 4096
... MAX_LOCKDEP_ENTRIES: 16384
... MAX_LOCKDEP_CHAINS: 32768
... CHAINHASH_SIZE: 16384
memory used by lock dependency info: 3695 kB
per task-struct memory footprint: 1152 bytes
Calibrating delay loop... 1332.01 BogoMIPS (lpj=6660096)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0xc03ae368 - 0xc03ae39c
L310 cache controller enabled
l2x0: 8 ways, CACHE_ID 0x410000c8, AUX_CTRL 0x72360000, Cache size: 524288 B
CPU1: Booted secondary processor
CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
Brought up 2 CPUs
SMP: Total of 2 processors activated (2664.03 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
regulator-dummy: no parameters
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 4 bytes.
bio: create slab at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Advanced Linux Sound Architecture Driver Initialized.
Switching to clocksource ttc_clocksource
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 3, 32768 bytes)
TCP bind hash table entries: 4096 (order: 5, 147456 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP: reno registered
UDP hash table entries: 256 (order: 2, 20480 bytes)
UDP-Lite hash table entries: 256 (order: 2, 20480 bytes)
NET: Registered protocol family 1
Trying to unpack rootfs image as initramfs...
rootfs image is not initramfs (no cpio magic); looks like an initrd
Freeing initrd memory: 5184K (de814000 - ded24000)
hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
msgmni has been set to 993
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
dma-pl330 f8003000.dmac: Loaded driver for PL330 DMAC-2364208
dma-pl330 f8003000.dmac: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
xuartps e0001000.serial: aper_clk clock not found.
xuartps: probe of e0001000.serial failed with error -2
[drm] Initialized drm 1.1.0 20060810
brd: module loaded
loop: module loaded
libphy: XEMACPS mii bus: probed
Unable to handle kernel NULL pointer dereference at virtual address 0000001c
pgd = c0004000
[0000001c] *pgd=00000000
Internal error: Oops: 5 [#1] PREEMPT SMP ARM
Modules linked in:
CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.10.0 #1
task: df86d1c0 ti: df86e000 task.ti: df86e000
PC is at of_get_next_available_child+0x18/0x5c
LR is at _raw_spin_lock_irqsave+0x58/0x64
pc : [] lr : [] psr: 60000193
sp : df86fe08 ip : 00000000 fp : dbc7c800
r10: df8c07dc r9 : dbc7ad80 r8 : 00000000
r7 : 00000000 r6 : dbc7a800 r5 : 00000000 r4 : 00000000
r3 : df86d1c0 r2 : 00000001 r1 : 00000007 r0 : 60000113
Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
Control: 18c5387d Table: 0000404a DAC: 00000015
Process swapper/0 (pid: 1, stack limit = 0xdf86e238)
Stack: (0xdf86fe08 to 0xdf870000)
fe00: dbc7c800 dbc7ad8c dbc7a800 c02b7570 dbc7ad8c dbc7a800
fe20: df8c1010 df8c1000 dbc7ad80 00000000 dbc7ad8c dbc7a800 df8c1010 df8c1000
fe40: dbc7ad80 df8c07dc dbc7c800 c0238f2c c010988c 00000000 c0545278 00000001
fe60: 00000000 c010988c ffffffff c00437f8 df863308 00000003 df8c2630 00000000
fe80: c05982c4 df8c1010 df8c1044 c05982c4 c01ede1c c0559a18 c0545278 00000000
fea0: 00000000 c01eec24 c01eec10 c01edcc8 00000000 df8c1010 df8c1044 c05982c4
fec0: c01ede1c c01ede8c 00000000 df86fed8 c05982c4 c01ec490 df8632a8 df8bca90
fee0: c05982c4 c05982c4 dbc75340 c058e540 00000000 c01ed470 c04cc212 df8add48
ff00: 00000000 c05982c4 c0565634 c056cdc0 c05aec40 c0559a18 00000000 c01ee16c
ff20: 00000000 00000006 c0565634 c056cdc0 c05aec40 c0559a18 00000000 c0008628
ff40: c0559a18 df86d1c0 c056d030 00000007 00000006 c0565634 c056cdc0 c05aec40
ff60: 00000087 c0545278 c0565640 c054591c 00000006 00000006 c0545278 00000000
ff80: 00000000 c0eccac0 00000000 c03a2794 00000000 00000000 00000000 00000000
ffa0: 00000000 c03a279c 00000000 c000ddc8 00000000 00000000 00000000 00000000
ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[] (of_get_next_available_child+0x18/0x5c) from [] (of_mdiobus_register+0x64/0x2c8)
[] (of_mdiobus_register+0x64/0x2c8) from [] (xemacps_probe+0x390/0x760)
[] (xemacps_probe+0x390/0x760) from [] (platform_drv_probe+0x14/0x18)
[] (platform_drv_probe+0x14/0x18) from [] (driver_probe_device+0xa0/0x1f4)
[] (driver_probe_device+0xa0/0x1f4) from [] (__driver_attach+0x70/0x94)
[] (__driver_attach+0x70/0x94) from [] (bus_for_each_dev+0x50/0x88)
[] (bus_for_each_dev+0x50/0x88) from [] (bus_add_driver+0xc8/0x21c)
[] (bus_add_driver+0xc8/0x21c) from [] (driver_register+0x9c/0x12c)
[] (driver_register+0x9c/0x12c) from [] (do_one_initcall+0x90/0x144)
[] (do_one_initcall+0x90/0x144) from [] (kernel_init_freeable+0xfc/0x1c4)
[] (kernel_init_freeable+0xfc/0x1c4) from [] (kernel_init+0x8/0xe4)
[] (kernel_init+0x8/0xe4) from [] (ret_from_fork+0x14/0x2c)
Code: e59f0048 e1a04001 eb03e610 e3540000 (0595401c)
---[ end trace 26d56494a3f9dccd ]---
note: swapper/0[1] exited with preempt_count 1
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
CPU0: stopping
CPU: 0 PID: 0 Comm: swapper/0 Tainted: G D 3.10.0 #1
[] (unwind_backtrace+0x0/0xe0) from [] (show_stack+0x10/0x14)
[] (show_stack+0x10/0x14) from [] (ipi_cpu_stop+0x3c/0x6c)
[] (ipi_cpu_stop+0x3c/0x6c) from [] (handle_IPI+0x5c/0x7c)
[] (handle_IPI+0x5c/0x7c) from [] (gic_handle_irq+0x58/0x60)
[] (gic_handle_irq+0x58/0x60) from [] (__irq_svc+0x44/0x78)
Exception stack(0xc0573f70 to 0xc0573fb8)
3f60: c000e8fc 00000000 00000000 00000000
3f80: c0572000 00000000 c03afcd8 c0565830 c0ec87c0 413fc090 00000000 00000000
3fa0: c03ac98c c0573fb8 c000e8fc c000e900 60000013 ffffffff
[] (__irq_svc+0x44/0x78) from [] (arch_cpu_idle+0x28/0x30)
[] (arch_cpu_idle+0x28/0x30) from [] (cpu_startup_entry+0xb4/0x118)
[] (cpu_startup_entry+0xb4/0x118) from [] (start_kernel+0x2c0/0x314)
[] (start_kernel+0x2c0/0x314) from [] (0x8074)
Well, from what I can see - you most likely have either hardware design issues and/or incorrect device tree.
1. When it try to init PS UART - it can't find aper_clk referenced in UART device tree node, which could be DTS error and/or missing clock description and/or missing clock in HDL design.
2. Later it try to init PS ETHERNET and failed at PHY probing, which again can be DTS and/or HDL design issue.
Are you using Analog Devices HDL reference design? If so, you better to use it's DTS. At least initially.
xuartps e0001000.serial: aper_clk clock not found.
xuartps: probe of e0001000.serial failed with error -2
libphy: XEMACPS mii bus: probed
Unable to handle kernel NULL pointer dereference at virtual address 0000001c
hello.Now I'm using:
1. hdl-hdl_2014_r2.zip, and build the HW with a few modification such as vivado&IP verison and comment #set_property -dict [list CONFIG.USE_BOARD_FLOW {true} CONFIG.IIC_BOARD_INTERFACE {IIC_MAIN}] $axi_iic_main.
2. And using 2014_R2 at https://github.com/analogdevicesinc/linux/tree/2014_R2,and build kernel with modification using files of xcomm-3-10:
make ARCH=arm zynq_xcomm_adv7511_defconfig
//drivers/media/usb/Kconfig:27: can't open file "drivers/media/usb/tlg2300/Kconfig"
make ARCH=arm -j5 UIMAGE_LOADADDR=0x8000 uImage
//In file included from drivers/usb/core/hub.c:21:0: include/linux/usbdevice_fs.h:31:37: fatal error: uapi/linux/usbdevice_fs.h: No such file or directory
//repalce drivers/usb/core/devio.c.
3. using devicetree generated of XSDK it can boot but don't show any info about hdmi.
4. using devicetree generated using 2014_r2 kernel's dts,dtsi fils.
It can boot, show HDMI info, but when I run Qt-hello program, it shows nothing, just hang there.
the info is :
5310244 bytes read in 462 ms (11 MiB/s)
## Booting kernel from Legacy Image at 02080000 ...
Image Name: Linux-3.17.0
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3223576 Bytes = 3.1 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 04000000 ...
Image Name:
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 5310180 Bytes = 5.1 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Loading Kernel Image ... OK
Loading Ramdisk to 1e814000, end 1ed246e4 ... OK
Loading Device Tree to 1e80e000, end 1e8139be ... OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 3.17.0 (zq@zq) (gcc version 4.7.2 (Sourcery CodeBench Lite 2012.09-104) ) #1 SMP PREEMPT Thu Mar 12 09:11:21 CST 2015
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: Xilinx Zynq ZED
bootconsole [earlycon0] enabled
cma: Reserved 128 MiB at 16800000
Memory policy: Data cache writealloc
PERCPU: Embedded 7 pages/cpu @dfb9c000 s8128 r8192 d12352 u32768
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 376576K/524288K available (4300K kernel code, 242K rwdata, 1640K rodata, 203K init, 134K bss, 147712K reserved, 0K highmem)
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xffc00000 - 0xffe00000 (2048 kB)
vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.text : 0xc0008000 - 0xc05d5654 (5942 kB)
.init : 0xc05d6000 - 0xc0608fc0 ( 204 kB)
.data : 0xc060a000 - 0xc0646a20 ( 243 kB)
.bss : 0xc0646a20 - 0xc0668520 ( 135 kB)
Preemptible hierarchical RCU implementation.
Dump stacks of tasks blocking RCU-preempt GP.
RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
NR_IRQS:16 nr_irqs:16 16
L2C: platform provided aux values match the hardware, so have no effect. Please remove them.
L2C-310 erratum 769419 enabled
L2C-310 enabling early BRESP for Cortex-A9
L2C-310 full line of zeros enabled for Cortex-A9
L2C-310 ID prefetch enabled, offset 1 lines
L2C-310 dynamic clock gating enabled, standby mode enabled
L2C-310 cache controller enabled, 8 ways, 512 kB
L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76360001
slcr mapped to e0804000
zynq_clock_init: clkc starts at e0804100
Zynq clock init
sched_clock: 16 bits at 54kHz, resolution 18432ns, wraps every 1207951633ns
timer #0 at e0806000, irq=43
Console: colour dummy device 80x30
Calibrating delay loop... 1332.01 BogoMIPS (lpj=6660096)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x40f4b0 - 0x40f508
CPU1: Booted secondary processor
CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
Brought up 2 CPUs
SMP: Total of 2 processors activated.
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
regulator-dummy: no parameters
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
cpuidle: using governor ladder
cpuidle: using governor menu
hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 4 bytes.
zynq-ocm f800c000.ps7-ocm: ZYNQ OCM pool: 256 KiB @ 0xe0880000
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
media: Linux media interface: v0.10
Linux video capture interface: v2.00
EDAC MC: Ver: 3.0.0
Advanced Linux Sound Architecture Driver Initialized.
Switched to clocksource ttc_clocksource
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP: reno registered
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
Trying to unpack rootfs image as initramfs...
rootfs image is not initramfs (no cpio magic); looks like an initrd
Freeing initrd memory: 5184K (de814000 - ded24000)
hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
futex hash table entries: 512 (order: 3, 32768 bytes)
msgmni has been set to 1001
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
dma-pl330 f8003000.ps7-dma: Loaded driver for PL330 DMAC-2364208
dma-pl330 f8003000.ps7-dma: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
xuartps e0001000.uart: clock name 'aper_clk' is deprecated.
xuartps e0001000.uart: clock name 'ref_clk' is deprecated.
e0001000.uart: ttyPS0 at MMIO 0xe0001000 (irq = 82, base_baud = 3125000) is a xuartps
郼onsole [ttyPS0] enabled
console [ttyPS0] enabled
bootconsole [earlycon0] disabled
bootconsole [earlycon0] disabled
xdevcfg f8007000.devcfg: ioremap 0xf8007000 to e081a000
[drm] Initialized drm 1.1.0 20060810
drivers/gpu/drm/adi_axi_hdmi/axi_hdmi_drv.c:axi_hdmi_platform_probe[175]
platform 70e00000.axi_hdmi: Driver axi-hdmi requests probe deferral
brd: module loaded
loop: module loaded
libphy: XEMACPS mii bus: probed
xemacps e000b000.eth: pdev->id -1, baseaddr 0xe000b000, irq 54
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ULPI transceiver vendor/product ID 0x0451/0x1507
Found TI TUSB1210 ULPI transceiver.
ULPI integrity check: passed.
zynq-ehci zynq-ehci.0: Xilinx Zynq USB EHCI Host Controller
zynq-ehci zynq-ehci.0: new USB bus registered, assigned bus number 1
zynq-ehci zynq-ehci.0: irq 53, io mem 0x00000000
zynq-ehci zynq-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial support registered for generic
usbcore: registered new interface driver ftdi_sio
usbserial: USB Serial support registered for FTDI USB Serial Device
mousedev: PS/2 mouse device common for all mice
i2c /dev entries driver
zynq-edac f8006000.ps7-ddrc: ecc not enabled
Xilinx Zynq CpuIdle Driver started
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
sdhci-arasan e0100000.sdhci: No vmmc regulator found
sdhci-arasan e0100000.sdhci: No vqmmc regulator found
mmc0: SDHCI controller on e0100000.sdhci [e0100000.sdhci] using ADMA
ledtrig-cpu: registered to indicate activity on CPUs
hidraw: raw HID events driver (C) Jiri Kosina
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
adv7511-hdmi-snd fpga-axi@0:adv7511_hdmi_snd: adv7511 75c00000.axi-spdif-tx mapping ok
mmc0: new high speed SDHC card at address 0007
mmcblk0: mmc0:0007 SD04G 3.70 GiB
mmcblk0: p1
zed-adau1761-snd fpga-axi@0:zed_sound: adau-hifi 77600000.axi-i2s mapping ok
TCP: cubic registered
NET: Registered protocol family 17
Registering SWP/SWPB emulation handler
Console: switching to colour frame buffer device 128x48
axi-hdmi 70e00000.axi_hdmi: fb0: frame buffer device
axi-hdmi 70e00000.axi_hdmi: registered panic notifier
[drm] Initialized axi_hdmi_drm 1.0.0 20120930 on minor 0
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
ALSA device list:
#0: HDMI monitor
#1: ZED ADAU1761
RAMDISK: gzip image found at block 0
EXT4-fs (ram0): mounted filesystem without journal. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 1:0.
Starting rcS...
++ Mounting filesystem
mount: mounting /dev/mmcblk0p1 on /mnt failed: No such file or directory
mount: mounting /dev/mmcblk0 on /mnt failed: No such file or directory
++ Setting up mdev
++ Starting telnet daemon
++ Starting http daemon
++ Starting ftp daemon
++ Starting ssh daemon
random: sshd urandom read with 11 bits of entropy available
EXT4-fs (loop0): couldn't mount as ext3 due to feature incompatibilities
EXT4-fs (loop0): mounting ext2 file system using the ext4 subsystem
EXT4-fs (loop0): mounted filesystem without journal. Opts: (null)
rcS Complete
zynq> ls home/zq/
Program
zynq> random: nonblocking pool is initialized
zynq> cd /mnt/
zynq> ls
BOOT.bin hello-zynq uImage
devicetree.dtb qt_lib uramdisk.image.gz
zynq> ./hello-zynq -qws
^C
zynq> fdisk -l
Disk /dev/mmcblk0: 3980 MB, 3980394496 bytes
9 heads, 8 sectors/track, 107975 cylinders
Units = cylinders of 72 * 512 = 36864 bytes
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 114 107976 3883008 b Win95 FAT32
zynq> ls /home/zq/Program/Qt473-ZYNQ/install/
bin features include lost+found plugins
doc imports lib mkspecs translations
zynq>
3223640 bytes read in 288 ms (10.7 MiB/s)
reading devicetree.dtb
10687 bytes read in 17 ms (613.3 KiB/s)
reading uramdisk.image.gz
5310244 bytes read in 462 ms (11 MiB/s)
## Booting kernel from Legacy Image at 02080000 ...
Image Name: Linux-3.17.0
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3223576 Bytes = 3.1 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 04000000 ...
Image Name:
Image Type: ARM Linux RAMDisk Image (gzip compressed)
Data Size: 5310180 Bytes = 5.1 MiB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02000000
Booting using the fdt blob at 0x2000000
Loading Kernel Image ... OK
Loading Ramdisk to 1e814000, end 1ed246e4 ... OK
Loading Device Tree to 1e80e000, end 1e8139be ... OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0x0
Linux version 3.17.0 (zq@zq) (gcc version 4.7.2 (Sourcery CodeBench Lite 2012.09-104) ) #1 SMP PREEMPT Thu Mar 12 09:11:21 CST 2015
CPU: ARMv7 Processor [413fc090] revision 0 (ARMv7), cr=18c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: Xilinx Zynq ZED
bootconsole [earlycon0] enabled
cma: Reserved 128 MiB at 16800000
Memory policy: Data cache writealloc
PERCPU: Embedded 7 pages/cpu @dfb9c000 s8128 r8192 d12352 u32768
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 130048
Kernel command line: console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 376576K/524288K available (4300K kernel code, 242K rwdata, 1640K rodata, 203K init, 134K bss, 147712K reserved, 0K highmem)
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xffc00000 - 0xffe00000 (2048 kB)
vmalloc : 0xe0800000 - 0xff000000 ( 488 MB)
lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.text : 0xc0008000 - 0xc05d5654 (5942 kB)
.init : 0xc05d6000 - 0xc0608fc0 ( 204 kB)
.data : 0xc060a000 - 0xc0646a20 ( 243 kB)
.bss : 0xc0646a20 - 0xc0668520 ( 135 kB)
Preemptible hierarchical RCU implementation.
Dump stacks of tasks blocking RCU-preempt GP.
RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=2.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
NR_IRQS:16 nr_irqs:16 16
L2C: platform provided aux values match the hardware, so have no effect. Please remove them.
L2C-310 erratum 769419 enabled
L2C-310 enabling early BRESP for Cortex-A9
L2C-310 full line of zeros enabled for Cortex-A9
L2C-310 ID prefetch enabled, offset 1 lines
L2C-310 dynamic clock gating enabled, standby mode enabled
L2C-310 cache controller enabled, 8 ways, 512 kB
L2C-310: CACHE_ID 0x410000c8, AUX_CTRL 0x76360001
slcr mapped to e0804000
zynq_clock_init: clkc starts at e0804100
Zynq clock init
sched_clock: 16 bits at 54kHz, resolution 18432ns, wraps every 1207951633ns
timer #0 at e0806000, irq=43
Console: colour dummy device 80x30
Calibrating delay loop... 1332.01 BogoMIPS (lpj=6660096)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x40f4b0 - 0x40f508
CPU1: Booted secondary processor
CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
Brought up 2 CPUs
SMP: Total of 2 processors activated.
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
regulator-dummy: no parameters
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
cpuidle: using governor ladder
cpuidle: using governor menu
hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 4 bytes.
zynq-ocm f800c000.ps7-ocm: ZYNQ OCM pool: 256 KiB @ 0xe0880000
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
media: Linux media interface: v0.10
Linux video capture interface: v2.00
EDAC MC: Ver: 3.0.0
Advanced Linux Sound Architecture Driver Initialized.
Switched to clocksource ttc_clocksource
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP: reno registered
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
Trying to unpack rootfs image as initramfs...
rootfs image is not initramfs (no cpio magic); looks like an initrd
Freeing initrd memory: 5184K (de814000 - ded24000)
hw perfevents: enabled with armv7_cortex_a9 PMU driver, 7 counters available
futex hash table entries: 512 (order: 3, 32768 bytes)
msgmni has been set to 1001
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
dma-pl330 f8003000.ps7-dma: Loaded driver for PL330 DMAC-2364208
dma-pl330 f8003000.ps7-dma: DBUFF-128x8bytes Num_Chans-8 Num_Peri-4 Num_Events-16
xuartps e0001000.uart: clock name 'aper_clk' is deprecated.
xuartps e0001000.uart: clock name 'ref_clk' is deprecated.
e0001000.uart: ttyPS0 at MMIO 0xe0001000 (irq = 82, base_baud = 3125000) is a xuartps
郼onsole [ttyPS0] enabled
console [ttyPS0] enabled
bootconsole [earlycon0] disabled
bootconsole [earlycon0] disabled
xdevcfg f8007000.devcfg: ioremap 0xf8007000 to e081a000
[drm] Initialized drm 1.1.0 20060810
drivers/gpu/drm/adi_axi_hdmi/axi_hdmi_drv.c:axi_hdmi_platform_probe[175]
platform 70e00000.axi_hdmi: Driver axi-hdmi requests probe deferral
brd: module loaded
loop: module loaded
libphy: XEMACPS mii bus: probed
xemacps e000b000.eth: pdev->id -1, baseaddr 0xe000b000, irq 54
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ULPI transceiver vendor/product ID 0x0451/0x1507
Found TI TUSB1210 ULPI transceiver.
ULPI integrity check: passed.
zynq-ehci zynq-ehci.0: Xilinx Zynq USB EHCI Host Controller
zynq-ehci zynq-ehci.0: new USB bus registered, assigned bus number 1
zynq-ehci zynq-ehci.0: irq 53, io mem 0x00000000
zynq-ehci zynq-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial support registered for generic
usbcore: registered new interface driver ftdi_sio
usbserial: USB Serial support registered for FTDI USB Serial Device
mousedev: PS/2 mouse device common for all mice
i2c /dev entries driver
zynq-edac f8006000.ps7-ddrc: ecc not enabled
Xilinx Zynq CpuIdle Driver started
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
sdhci-arasan e0100000.sdhci: No vmmc regulator found
sdhci-arasan e0100000.sdhci: No vqmmc regulator found
mmc0: SDHCI controller on e0100000.sdhci [e0100000.sdhci] using ADMA
ledtrig-cpu: registered to indicate activity on CPUs
hidraw: raw HID events driver (C) Jiri Kosina
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
adv7511-hdmi-snd fpga-axi@0:adv7511_hdmi_snd: adv7511 75c00000.axi-spdif-tx mapping ok
zed-adau1761-snd fpga-axi@0:zed_sound: adau-hifi 77600000.axi-i2s mapping ok
mmc0: new high speed SDHC card at address 0007
mmcblk0: mmc0:0007 SD04G 3.70 GiB
TCP: cubic registered
NET: Registered protocol family 17
mmcblk0: p1
Registering SWP/SWPB emulation handler
Console: switching to colour frame buffer device 128x48
axi-hdmi 70e00000.axi_hdmi: fb0: frame buffer device
axi-hdmi 70e00000.axi_hdmi: registered panic notifier
[drm] Initialized axi_hdmi_drm 1.0.0 20120930 on minor 0
drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
ALSA device list:
#0: HDMI monitor
#1: ZED ADAU1761
RAMDISK: gzip image found at block 0
EXT4-fs (ram0): mounted filesystem without journal. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 1:0.
Starting rcS...
++ Mounting filesystem
mount: mounting /dev/mmcblk0p1 on /mnt failed: No such file or directory
mount: mounting /dev/mmcblk0 on /mnt failed: No such file or directory
++ Setting up mdev
++ Starting telnet daemon
++ Starting http daemon
++ Starting ftp daemon
++ Starting ssh daemon
random: sshd urandom read with 13 bits of entropy available
FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
EXT4-fs (loop0): couldn't mount as ext3 due to feature incompatibilities
EXT4-fs (loop0): mounting ext2 file system using the ext4 subsystem
EXT4-fs (loop0): warning: mounting unchecked fs, running e2fsck is recommended
EXT4-fs (loop0): mounted filesystem without journal. Opts: (null)
rcS Complete
zynq> random: nonblocking pool is initialized
zynq> cd /mnt/
zynq> ls
BOOT.bin hello-zynq uImage
devicetree.dtb qt_lib uramdisk.image.gz
zynq> ./hello-zynq -qws
hello! I have solved the problem. Using linux-AD-2014R2 to build the kernel and devicetree with vivado2014.4 is OK. My HDMI-VGA switch didn't work very well; It finally goes well after I plug into PC and then plug into Zedboard again. Now it can boot successfully and run Qt APP. Much thanks to you!
hello,
in step 4 and 5, I tried but can't see the "configuration for OS: petalinux " as in your picture.
can you figure out how to get it ? ( for OS: petalinux )
thank you
I found the steps to add Petalinux into SDK.
http://svenand.blogdrive.com/archive/202.html#.VqHai01umUk