lkml.org 
[lkml]   [2007]   [Apr]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 09/12] i386/x86_64: EHCI usb debug port early printk support.
    Thanks for writing that code. It should be an interesting alternative
    on boxes where firescope doesn't work.

    I hope I can eventually merge early firewire support code too.

    On Mon, Apr 30, 2007 at 10:32:02AM -0600, Eric W. Biederman wrote:
    >
    > With legacy free systems serial ports have stopped being an option
    > to get early boot traces and other debug information out of a machine.

    This needs a CONFIG_* at least. And some documentation on how to set it
    up on both sides.

    >
    > This debug device can be used to replace serial ports for
    > kgdb, kdb, and console support. And gregkh has a simple usb
    > serial driver for it so user space applications that control
    > serial ports should work unmodified.

    But not merged yet, right? I was hoping it could be done from
    user space anyways.

    > For users the hard part looks like it will be finding cables and
    > finding which is usb debug port 1 and realizing that there is
    > flow control so the kernel boot will not happen if someone is not
    > reading the serial console data.

    That's nasty. Any way to work around that?

    > index 92213d2..dc097aa 100644
    > --- a/arch/x86_64/kernel/early_printk.c
    > +++ b/arch/x86_64/kernel/early_printk.c
    > @@ -3,9 +3,19 @@
    > #include <linux/init.h>
    > #include <linux/string.h>
    > #include <linux/screen_info.h>
    > +#include <linux/usb/ch9.h>
    > +#include <linux/pci_regs.h>
    > +#include <linux/pci_ids.h>
    > +#include <linux/errno.h>

    Can you put it in a separate file please?
    Perhaps with a little abstraction in drivers/usb ?

    > +static void dbgp_breath(void)
    > +{
    > + /* Sleep to give the debug port a chance to breathe */

    But you don't?

    > +static __u32 __init find_dbgp(int ehci_num, unsigned *rbus, unsigned *rslot, unsigned *rfunc)

    This should be probably merged into the early quirks loop

    > early_console = &simnow_console;
    > keep_early = 1;
    > + } else if (!strncmp(buf, "dbgp", 4)) {

    usb would seem to be more intuitive

    -Andi
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-04-30 19:01    [W:0.021 / U:2.008 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site