diff options
author | szhou <none@none> | 2006-06-14 08:13:45 -0700 |
---|---|---|
committer | szhou <none@none> | 2006-06-14 08:13:45 -0700 |
commit | 28cdc3d776761766afeb198769d1b70ed7e0f2e1 (patch) | |
tree | dcd414ef42c58760887d0d10bd015602dc5ff922 /usr/src/uts/common/krtld | |
parent | 5c21526ad35328e623c67f0515b6460b6c058865 (diff) | |
download | illumos-joyent-28cdc3d776761766afeb198769d1b70ed7e0f2e1.tar.gz |
6426010 Need ability to direct console to USB serial device
Diffstat (limited to 'usr/src/uts/common/krtld')
-rw-r--r-- | usr/src/uts/common/krtld/kobj.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/usr/src/uts/common/krtld/kobj.c b/usr/src/uts/common/krtld/kobj.c index 1cdf93e98f..01032117ec 100644 --- a/usr/src/uts/common/krtld/kobj.c +++ b/usr/src/uts/common/krtld/kobj.c @@ -1204,12 +1204,35 @@ load_primary(struct module *mp, int lmid) } static int +console_is_usb_serial(void) +{ + char *console; + int len, ret; + + if ((len = BOP_GETPROPLEN(ops, "console")) == -1) + return (0); + + console = kobj_zalloc(len, KM_WAIT|KM_TMP); + (void) BOP_GETPROP(ops, "console", console); + ret = (strcmp(console, "usb-serial") == 0); + kobj_free(console, len); + + return (ret); +} + +static int load_kmdb(val_t *bootaux) { struct modctl *mctl; struct module *mp; Sym *sym; + if (console_is_usb_serial()) { + _kobj_printf(ops, "kmdb not loaded " + "(unsupported on usb serial console)\n"); + return (0); + } + _kobj_printf(ops, "Loading kmdb...\n"); if ((mctl = add_primary("misc/kmdbmod", KOBJ_LM_DEBUGGER)) == NULL) |