• 0
mikemcg

Booting the Linaro filesystem on Zybo

Question

I'm a newbie to embedded development. I've worked through the linux hands on tutorial and have been successful at bringing up linux on the ramdisk as per the tutorial.

 

What I really want is a ubuntu desktop working on the Zybo board. I have loaded the Linaro filesystem onto the sd card (as per the zed board examples) but still the Zybo insists on trying to load from a ramdisk.  I have changed the chosen bootargs in the devicetree to

 

bootargs = "console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext4 rootwait devtmpfs.mount=1"

 

Is there something else I need to do in say the config file or uboot.elf to get it to use the filesystem from the ext4 partition rather than the ramfile?

 

In using Vivado 2014.4 and SDK 2014.4.

 

Thanks Mike.

Edited by Josh
Added Tags

Share this post


Link to post
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Hi Mike, 

 

I'm unsure about the problem you're having, but I would suggest checking out this tutorial about setting up the Ubuntu on the ZYBO: http://www.instructables.com/id/Setting-up-the-Zybot-Software/?ALLSTEPS

 

In particular, Step 6 has the boot files that are needed to run Ubuntu after you have everything else ready.

We are also going to be writing a new embedded systems tutorial designed specifically for the ZYBO, so stay tuned!

 

-Josh

Share this post


Link to post
Share on other sites
  • 0

Thanks Josh.

 

I tried that and it boots linaro very nicely (although I could only get it to work with HDMI and not VGA).

 

My problem is that it's using pre-canned boot.bin, uImage and devicetree.dtb . For my project I'm designing AXI peripherals that will be resident in the FPGA so I need to generate my own kernel loaders etc.  So far I have been able to get the filesystem contained in the ramImage loaded after following the tutorials but I have not been able to get the filesystem to load from the ext4 partition on the sdcard.

 

I think I need to change more than the devicetree.dts bootargs above to pull this off but I haven't figured out (after more than 10 days of learning linux booting) what else I need to change over the zybo_base_system setups.  For now I'd settle for just bringing up the reference design and just building/modifying the boot.bin, uImage and devicetree.dts files.  I have been able to build all of them just I can't get the system to load from the ext4 partition.

 

Any help on that would be appreciated.

 

Best Mike.

Share this post


Link to post
Share on other sites
  • 0

Hi Mike,

 

I'm on a work trip right now, so I don't have the time/access to properly post all of the sources for that project, but I can get you the Vivado project and devicetree. You will need to ignore the warnings on the Vivado project, it has not been cleaned fully. I've posted them on dropbox here:

 

Vivado project: https://www.dropbox.com/s/8ldvbwd66k0i94d/zybo_bsd_hdmi.zip?dl=0

Devicetree source: https://www.dropbox.com/s/ilwddtkzn2gdcmj/zybo_robot_dts.zip?dl=0

 

Inside of the sdk folder in the vivado project you will find a bootgen folder that contains u-boot.elf, so you can regenerate boot.bin if you modify the vivado project.

 

You will have to use the prebuilt kernel for now that is included with the robot project, because it contains the custom video driver for which the source has not been posted yet. Unfortunately the driver requires an EDID packet,  so it only works with HDMI. This will be changed before the source gets posted.

Share this post


Link to post
Share on other sites
  • 0

Hi Sam,

 

Thanks so much, that really helped. I was able to build it from scratch and boot into Ubuntu. I can get back to my own design....

 

BTW I'm not using VGA so the HDMI is fine for me.

 

Anyway, much appreciated, Mike

Share this post


Link to post
Share on other sites
  • 0

Hi,

 

Any update ?

 

By the way, I'm using a 4 GB SD Card and something is filling up my SDc until saturation : /dev/root Use = 100%. After that, the system won't boot.

 

Thus, I'm wondering if that's the reason why you have used a 8 GB SDc. The results are the same for 2 different filesystems of Linaro.

 

Best

Mendeln

Share this post


Link to post
Share on other sites
  • 0

Hi guys,

are the sources for the video driver already available?

I want to build the kernel and the video driver on my own and i would be nice if i can get the sources.

 

Best

Mesu

Share this post


Link to post
Share on other sites
  • 0

Hi,

 

Any update ?

 

By the way, I'm using a 4 GB SD Card and something is filling up my SDc until saturation : /dev/root Use = 100%. After that, the system won't boot.

 

Thus, I'm wondering if that's the reason why you have used a 8 GB SDc. The results are the same for 2 different filesystems of Linaro.

 

Best

Mendeln

To boot Linux using the Linaro filesystem how we did, use an 8 GB microSD Card. 4 GBs is going to be too small.

 

-Josh

Share this post


Link to post
Share on other sites
  • 0

Hi Josh,

I managed to install ArchLinux, Debian, Ubuntu, and Linaro on the Zybo. And using your precompiled Kernel I got the HDMI video output on custom designs with custom peripherals. Unfortunately, the kernel that you used (and also the u-boot) doesn't work for my particular needs, so I re-built them, and of course I lost the HDMI output, but I'm using SSH now so it's not a big deal, but I wanna get it working.

I activated the AXI clkgen driver, the Digilent axi_dynclk Driver, the Xilinx DRM, and the Digilent VGA/HDMI DRM Encoder driver on the kernel configuration, but I did not managed to get the HDMI working... So I'm guessing that something is missing. Which drivers are necesary to build with the kernel to get the HDMI output? I added everything I think was necesary but with no success.

Share this post


Link to post
Share on other sites
  • 0

sbobrowicz is the writer of those drivers, I've contacted him so he'll be able to better answer your question.

This may or may not be helpful, but you can check out the Digilent Github, this will begin to be more active now that summer has started. 

-Josh

Share this post


Link to post
Share on other sites
  • 0

Hi,

I am not unable to build my driver modules without sources. That's very awkward for my project.

Any help or information would be appreciated.

Mendeln

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now