[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170119091202.GB22865@gmail.com>
Date: Thu, 19 Jan 2017 10:12:02 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Lu Baolu <baolu.lu@...ux.intel.com>
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Mathias Nyman <mathias.nyman@...ux.intel.com>,
Ingo Molnar <mingo@...hat.com>, tglx@...utronix.de,
peterz@...radead.org, linux-usb@...r.kernel.org, x86@...nel.org,
linux-kernel@...r.kernel.org,
Peter Zijlstra <a.p.zijlstra@...llo.nl>
Subject: Re: [PATCH v5 0/4] usb: early: add support for early printk through
USB3 debug port
* Lu Baolu <baolu.lu@...ux.intel.com> wrote:
> xHCI debug capability (DbC) is an optional but standalone
> functionality provided by an xHCI host controller. With DbC
> hardware initialized, the system will present a debug device
> through the USB3 debug port (normally the first USB3 port).
> The debug device is fully compliant with the USB framework
> and provides the equivalent of a very high performance (USB3)
> full-duplex serial link between the debug host and target.
> The DbC functionality is independent of xHCI host. There
> isn't any precondition from xHCI host side for DbC to work.
>
> This patch set adds support for early printk functionality
> through a USB3 debug port by 1) initializing and enabling
> the DbC hardware during early boot; 2) registering a boot
> console to the system so that early printk messages can go
> through the USB3 debug port. It also includes some lines
> of changes in usb_debug driver so that it can be bound when
> a USB3 debug device is enumerated.
>
> This code is designed to be used only for kernel debugging
> when machine crashes very early before the console code is
> initialized. It makes the life of kernel debugging easier
> when people work with a modern machine without any legacy
> serial ports.
BTW., just a side note, some kernel developers (like PeterZ - and I do it
sometimes too) remap early_printk to printk permanently and use it as their main
printk facility - because printk() reliability has suffered over the last couple
of years.
So it's more than just early boot debugging - it's a very simple state-less
logging facility to an external computer.
Thanks,
ngo
Powered by blists - more mailing lists