[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1236267366.5937.56.camel@desktop>
Date: Thu, 05 Mar 2009 07:36:06 -0800
From: Daniel Walker <dwalker@...o99.com>
To: mingo@...hat.com, hpa@...or.com, linux-kernel@...r.kernel.org,
yinghai@...nel.org, stern@...land.harvard.edu,
randy.dunlap@...cle.com, ebiederm@...ssion.com,
akpm@...ux-foundation.org, gregkh@...e.de, tglx@...utronix.de,
sarah.a.sharp@...el.com, mingo@...e.hu
Cc: linux-tip-commits@...r.kernel.org
Subject: Re: [tip:x86/doc] x86/doc: mini-howto for using earlyprintk=dbgp
On Thu, 2009-03-05 at 10:00 +0000, Yinghai Lu wrote:
> +
> +Mini-HOWTO for using the earlyprintk=dbgp boot option with a
> +USB2 Debug port key and a debug cable, on x86 systems.
> +
> +You need two computers, the 'USB debug key' special gadget and
> +and two USB cables, connected like this:
> +
> + [host/target] <-------> [USB debug key] <-------> [client/console]
> +
> +1. There are three specific hardware requirements:
> +
> + a.) Host/target system needs to have USB debug port capability.
> +
> + You can check this capability by looking at a 'Debug port' bit in
> + the lspci -vvv output:
...
> + c.) Thirdly, you need a second client/console system with a regular USB port.
You might want to combine a.) and c.) since there is some disconnect
between the two. c.) doesn't explicitly say a second time that the
client/console needs the debug port capability ..
Or say
a.) You will need two USB ports. One on the client/console system and
one one the target system.
b.) The client/console and target USB ports must have the debug port
capability. You can check for this as follows,
c.) ...
I just felt the disconnect between the two a.) , and c.) left some
questions.
> +2. Software requirements:
> +
> + a.) On the host/target system:
> +
> + You need to enable the following kernel config option:
> +
> + CONFIG_EARLY_PRINTK_DBGP=y
> +
> + And you need to add the boot command line: "earlyprintk=dbgp".
> + (If you are using Grub, append it to the 'kernel' line in
> + /etc/grub.conf)
Isn't the usual grub.conf in /boot/grub/grub.conf ? That's where mine
always seem to end up.
> + NOTE: normally earlyprintk console gets turned off once the
> + regular console is alive - use "earlyprintk=dbgp,keep" to keep
> + this channel open beyond early bootup. This can be useful for
> + debugging crashes under Xorg, etc.
> +
> + b.) On the client/console system:
> +
> + You should enable the following kernel config option:
> +
> + CONFIG_USB_SERIAL_DEBUG=y
> +
> + On the next bootup with the modified kernel you should
> + get a /dev/ttyUSBx device(s).
> +
> + Now this channel of kernel messages is ready to be used: start
> + your favorite terminal emulator (minicom, etc.) and set
> + it up to use /dev/ttyUSB0 - or use a raw 'cat /dev/ttyUSBx' to
> + see the raw output.
You might want to switch the first /dev/ttyUSB0 to /dev/ttyUSBx .
> + c.) On Nvidia Southbridge based systems: the kernel will try to probe
> + and find out which port has debug device connected.
> +
> +3. Testing that it works fine:
> +
> + You can test the output by using earlyprintk=dbgp,keep and provoking
> + kernel messages on the host/target system. You can provoke a harmless
> + kernel message by for example doing:
> +
> + echo h > /proc/sysrq-trigger
> +
> + On the host/target system you should see this help line in "dmesg" output:
> +
> + SysRq : HELP : loglevel(0-9) reBoot Crashdump terminate-all-tasks(E) memory-full-oom-kill(F) kill-all-tasks(I) saK show-backtrace-all-active-cpus(L) show-memory-usage(M) nice-all-RT-tasks(N) powerOff show-registers(P) show-all-timers(Q) unRaw Sync show-task-states(T) Unmount show-blocked-tasks(W) dump-ftrace-buffer(Z)
> +
> + On the client/console system do:
> +
> + cat /dev/ttyUSB0
Missing "x" here too.
Seems like a nice document. Thanks for writing it.
Daniel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists