Re: How logs will come to UART serial console?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi sandeep,

On Tue, May 17, 2011 at 12:52 AM, sandeep kumar
<coolsandyforyou@xxxxxxxxx> wrote:
>
> Hi ,
> Here is my question.
> when we put 'printk's in kernel code the logs will go to the log_buffer.(i observed that from implementation)
> But when UART is enabled(in the bootloader), the same printk logs are going to the serial console.
> As per my study printk doesnot implementing anything that writes to the UART console.
>
> Now here are my questions,
> how this is being achieved? Where this is implemented?(which file)

When you register your UART driver there is typically an option to
register a console driver at the same time.

For example, let's take a look at the 8250 serial driver. We'll look
at the file drivers/serial/8250.c

Search for the function serial8250_console_init, which has a call to
register_console.

That's the starting point that sets up the console driver. You can
have other drivers call register_console and get your console messages
sent out whatever bizarre device you may have connected to your
system.

You can also have multiple consoles registered at the same time.

> Where wil be the parsing of the cmdline string sent from the bootloader is done?

The function console_setup is called when the console= parameter is
passed on the kernel command line.
<http://lxr.linux.no/linux+v2.6.38/kernel/printk.c#L904>

The __setup just after the end of the function is what causes it to
call that function when the console= parameter is passed.

--
Dave Hylands
Shuswap, BC, Canada
http://www.davehylands.com

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux