Question

Hi,

     Actually i want to generate the device tree for the Zedboard.So on the way of doing this i found one prebuilt device tree for the Zedboard which is having following line :-

    chosen {
        bootargs = "console=ttyPS0,115200 root=/dev/mmcblk0p2 rw earlyprintk rootfstype=ext2 rootwait devtmpfs.mount=0 consoleblank=0";
        linux,stdout-path = "/amba@0/serial@e0001000";
    } ;

After following some tutorials i got some idead about .dts file contents but still i did not get the meaaning of each word in above lines. Also in some other .dts files from other sources folowing line is there:-

    chosen {
        bootargs = "console=ttyPS0,115200 root=/dev/ram rw earlyprintk";
        linux,stdout-path = "/amba@0/serial@e0001000";
    } ;

So i got confused which one is correct and how to use this or modify this.

Can you please reply me.

Regards

Aditya

Share this post


Link to post
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Hi Aditya,

I have asked some of our applications engineers about this; they will get back to you here on the Forum.

Thanks,
JColvin

Share this post


Link to post
Share on other sites
  • 0

@aditya

You can find the meaning of all of those console parameters in the Documentation directory of your local kernel source, in a file called kernel-parameters.txt.  The copy for the current development kernel can be found here.  In there you will discover that "consoleblank" sets the console screen saver timeout, and that zero disables it.  "rootwait" tells the kernel to wait for the root device to appear, possibly forever, before going on.  This is useful for devices that may not have been detected yet.  "earlyprintk" prints things to the console early in the booting process, even before the console is properly set up, helping you debug the earlier parts of the kernel bootup.  "rw" declares that the root device is to be mounted as read/write on boot. 

I think the biggest and most significant difference between the two boot lines is where the root device is to be found.  In the first case, it is found on an SD card.  In the second case, the boot device (i.e. where the initial / filesystem can be found) is somehow already in RAM.  (Perhaps the bootloader sets this?)

Dan

Share this post


Link to post
Share on other sites
  • 0

Dan, you are correct, in the second case the bootloader (u-boot) copies a ramdisk image from the SD card into RAM for the system to use. In the first case, the file system is expected to be present in the 2nd partition of the SD card (often this is used when booting prebuilt distros like ubuntu,etc).

Aditya, have you tried using Petalinux to create your linux image? Much of the device tree work is abstracted away so you don't have to deal with it. If you are just trying to get a linux system up and running I think it will be the easiest path. Check out the Xilinx docs for Petalinux and see what you think. Xilinx provides a Petalinux BSP for the ZedBoard which will also help you a lot.

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