Re: [PATCH v7 0/5] usb: early: add support for early printk through USB3 debug port

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

 



Hi Ingo,

How about this version? Any further comments?

Best regards,
Lu  Baolu

On 02/14/2017 10:27 AM, Lu Baolu 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.
>
> ---
> Change log:
> v6->v7:
>   - add a new patch "[PATCH 1/5] x86: add simple udelay
>     calibration" to make udelay() work for early drivers.
>   - [PATCH 2/5] usb: dbc: early driver for xhci debug capability
>     - add a kernel thread to handle error cases, such as cable
>       unplugging.
>     - Fixed several code styles pointed out by Ingo.
>
> v5->v6:
>   - rebase the patches on top of the latest 4.10-rc4
>   - run successfully in a 32-bit kernel
>   - [PATCH 1/4]
>     - remove ugly linebreaks to make code more readable
>     - rename config names to make them consistency
>     - move sleep-able ioremap() out of the lock area
>     - rename reserved fields of register structures
>     - make the vertical tabulation of struct fields consistent
>   - [PATCH 2/4]
>     - remove "#ifdef" in the generic code by creating proper
>       wrappers in header file
>   - [PATCH 3/4]
>     - refine the title and commit message
>   - [PATCH 4/4]
>     - fix several typos and grammar errors in the document
>
> v4->v5:
>   - add raw_spin_lock to make xdbc_bulk_write() reentrant.
>
> v3->v4:
>   - Rename the document with .dst suffix.
>   - Add the list of hardware that has been succesfuly
>     tested on in the document.
>
> v2->v3:
>   - Removed spinlock usage.
>   - Removed work queue usage.
>   - Refined the user guide document.
>
> v1->v2:
>   - Refactor the duplicate code in xdbc_early_start() and
>     xdbc_handle_external_reset().
>   - Free resources when hardware not used any more.
>   - Refine the user guide document.
>
> Lu Baolu (5):
>   x86: add simple udelay calibration
>   usb: dbc: early driver for xhci debug capability
>   x86: add support for earlyprintk via USB3 debug port
>   usb: serial: add dbc debug device support to usb_debug
>   usb: doc: add document for USB3 debug port usage
>
>  Documentation/admin-guide/kernel-parameters.txt |    1 +
>  Documentation/usb/usb3-debug-port.rst           |   98 +++
>  arch/x86/Kconfig.debug                          |   17 +
>  arch/x86/kernel/early_printk.c                  |    5 +
>  arch/x86/kernel/setup.c                         |   26 +
>  drivers/usb/Kconfig                             |    3 +
>  drivers/usb/Makefile                            |    2 +-
>  drivers/usb/early/Makefile                      |    1 +
>  drivers/usb/early/xhci-dbc.c                    | 1026 +++++++++++++++++++++++
>  drivers/usb/early/xhci-dbc.h                    |  210 +++++
>  drivers/usb/serial/usb_debug.c                  |   28 +-
>  include/linux/usb/xhci-dbgp.h                   |   29 +
>  12 files changed, 1442 insertions(+), 4 deletions(-)
>  create mode 100644 Documentation/usb/usb3-debug-port.rst
>  create mode 100644 drivers/usb/early/xhci-dbc.c
>  create mode 100644 drivers/usb/early/xhci-dbc.h
>  create mode 100644 include/linux/usb/xhci-dbgp.h
>

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux