cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
9,199 Views
Registered: ‎05-08-2013

turn off boot console earlycon0

Hi all,

    I have been trying to boot the xlnx linux, device tree verion 14.5 from git on my Zynq custom board.

    The booting entered the linux kernel and got stuck with thi message:

    turn off boot console earlycon0

 

    I tried these options:

    1. change the terminal[ttyPS0 to ttyPS1 in the /etc/inittab file of the ramdisk, changing the same in the devicetree solved another problem related to the console]

    2. changed the clock rate to 30MHz acc to my custom board.

 

Note: I am using the devicetree.dts file of my zc702 board, but hand-made the changes related to the UART from the custom board.

 

    This looks more like a linux configuration issue, not a hw configuration issue.

    This issue gets more challenging already. Any suggestion is welcome?

 

Best regards,

Thanks in advance,

0 Kudos
9 Replies
Highlighted
Explorer
Explorer
9,085 Views
Registered: ‎07-09-2012

Hello,

 

Did you find the solution to this?  I'm experiencing the same thing and don't want to reinvent the wheel if I can help it.  I've seen other posts and nothing works so far.  

 

I had been modifying the .DTS file from the zynq 702 dev board but am now trying to use the .DTS file that the device tree generator creates.  Easier said than done!

 

Thanks,

 

- Dave

0 Kudos
Highlighted
Explorer
Explorer
8,863 Views
Registered: ‎06-23-2013

Our custom board, based on zc706, is also stuck at this same point: 

 

xwdtps f8005000.ps7-wdt: Xilinx Watchdog Timer at f006c000 with timeout 10s
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
mmc0: SDHCI controller on e0100000.ps7-sdio [e0100000.ps7-sdio] using ADMA
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
TCP: cubic registered
NET: Registered protocol family 17
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
Registering SWP/SWPB emulation handler
turn off boot console earlycon0

dogbytes
0 Kudos
Highlighted
Explorer
Explorer
8,856 Views
Registered: ‎06-23-2013

Using the zc706 devicetree with our custom board we got much further:  Any hints for what is happening now ?

 

Freeing init memory: 160K                                                                                                                
do mounts                                                                                                                                
start mdev                                                                                                                               
mdev: /sys/class: No such file or directory                                                                                              
mount root                                                                                                                               
EXT3-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)                                                
EXT2-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)                                                
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)                                                             
hand off to new root                                                                                                                     
mountall: Disconnected from Plymouth     

 

dogbytes
0 Kudos
Highlighted
Scholar
Scholar
8,841 Views
Registered: ‎05-28-2013

After "turn off boot console earlycon0" the kernel switches to whatever is configured as console, usually on the command-line or via the device tree. For example from zynq-zc702.dts:

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


Note that this defines ttyPS0 to be UART1 (not UART0) because address E0001000 is the 2nd uart. (E0000000 would be UART0).

--

Your most recent error occurs much later in the boot. It likely is because you changed /etc/inittab to use ttyPS1... which hasn't been defined as anything.
0 Kudos
Highlighted
Explorer
Explorer
8,835 Views
Registered: ‎06-23-2013

Thanks for your quick reply rts613, but I don't think /etc/inittab ttyPS1 are the problem, because our zc706 uses neither.

 

We are using the zc706 devicetree on the zc706, gets to login prompt.  Custom board just has USB and i2c commented

out but o/w the devicetree is the same.  zc706 does not have any /etc/inittab file, our custom board has the same

rootfs.  Fedora laptop says /etc/inittab is no longer used by systemd.   Our Zynq are running the Xilinx Ubuntu12.10

chosen {
                bootargs = "console=ttyPS0,115200 root=/dev/ram rw ip=:::::eth0:dhcp earlyprintk";
                linux,stdout-path = "/amba@0/uart@E0001000";

     };

 

Our custom board does not get to the rpcbind lines which our zc706 does, and then NTP, login prompt.

 

hand off to new root
mountall: Disconnected from Plymouth
rpcbind: Cannot open '/run/rpcbind/rpcbind.xdr' file for reading, errno 2 (No such file or directory)
rpcbind: Cannot open '/run/rpcbind/portmap.xdr' file for reading, errno 2 (No such file or directory)
 * Starting NTP server ntpd        [ OK ]

Ubuntu 12.10 pbzynq1 ttyPS0

pbzynq1 login: root
  

 

 

dogbytes
0 Kudos
Highlighted
Scholar
Scholar
8,830 Views
Registered: ‎05-28-2013

I haven't quite wrapped my head around systemd yet... but you are right, it no longer looks at /etc/inittab.

A bit of googling suggests that systemd can be made to print a lot of diagnostics by adding these kernel bootards:

systemd.log_level=debug systemd.log_target=console

in addition to the console=ttyPS0,115200 stuff. Maybe that helps.




0 Kudos
Highlighted
Adventurer
Adventurer
8,819 Views
Registered: ‎05-16-2012

Have you modfied the Kernel Configuration?

 

For Zc706 it is:

CONFIG_DEBUG_ZYNQ_UART1=y

 

If you're using UART0 you should set it to:

# CONFIG_DEBUG_ZYNQ_UART1 is not set

 

I think there's no need to define something like 

CONFIG_DEBUG_ZYNQ_UART0=y

additionally.

 

We are also using the UART0 on our board and we need this modification to get it running. (At least when we were bringing up our board)

0 Kudos
Highlighted
Scholar
Scholar
8,813 Views
Registered: ‎05-28-2013

Those settings control where the earlyconsole output goes, ie. the part before "turn off boot console earlycon0" message. Your kernel should still boot and work fine, even if this setting is wrong - though you'll be missing some of the early boot-up messages.
0 Kudos
Highlighted
Explorer
Explorer
8,805 Views
Registered: ‎06-23-2013

Thanks pniklas and rfs613 for your replies.  But our custom board is using UART1 at e0001000 just like zc706.

I am using the same uImage as for zc706 but changed the devicetree to remove i2c, usb sections because

hardware changes were: no i2c mux, no rtc, no usb

 

Our zc706 shows the Disconnected from Plymouth message comes from /sbin/mountall so I believe our custom board is accessing the root filesystem.  Next should start the NTP daemon which I don't care about right now, chiefly I wish it

would run /sbin/sulogin

 

strings sbin/mountall | grep -n "Plymouth"
root@pbzynq1:init# strings /sbin/mountall | grep -n "Plymouth"                                 

1476:Plymouth command failed                                                                   

1479:Disconnected from Plymouth                                                                

1588:%s: Failed to connect to Plymouth: %s                                                     

1589:Connected to Plymouth                                                                     

1590:Skipping mounting %s since Plymouth is not available

 

but the output from custom board is stuck after,

Freeing init memory: 160K
do mounts
start mdev
mdev: /sys/class: No such file or directory
mount root
EXT3-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)
EXT2-fs (mmcblk0p2): error: couldn't mount because of unsupported optional features (240)
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
hand off to new root
mountall: Disconnected from Plymouth

dogbytes
0 Kudos