lkml.org 
[lkml]   [2003]   [Aug]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patches in this message
/
Date
From
SubjectRe: Bogus serial port ttyS02
On Wed, 13 Aug 2003, Geert Uytterhoeven wrote:
> On Wed, 13 Aug 2003, Russell King wrote:
> > You could enable DEBUG_AUTOCONF in 8250.c in 2.6.0-test3 and give
> > further probing information. 8)

This patch kills a warning if DEBUG_AUTOCONF is enabled:

--- linux-ppc-2.6.0-test3/drivers/serial/8250.c Mon Aug 11 02:20:41 2003
+++ linux-longtrail-2.6.0-test3/drivers/serial/8250.c Wed Aug 13 22:31:07 2003
@@ -557,7 +557,7 @@
if (!up->port.iobase && !up->port.mapbase && !up->port.membase)
return;

- DEBUG_AUTOCONF("ttyS%d: autoconf (0x%04x, 0x%08lx): ",
+ DEBUG_AUTOCONF("ttyS%d: autoconf (0x%04x, %p): ",
up->port.line, up->port.iobase, up->port.membase);

/*
> > Looking at PPC's pc_serial.h, it seems that you've told it to probe
> > there using ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ.
> > ASYNC_SKIP_TEST means that we use a reduced test to probe for a port -
> > we just check that we can read back a value written to 0x3e9. If this
> > suceeds, we decide that there is a port present, and go on to try and
> > derive its type.
> >
> > If you want to enable the more rigorous tests, remove ASYNC_SKIP_TEST
> > from the port flags. This will make us check that the device behaves
> > like a UART before deciding that it is one.
>
> If I remove the ASYNC_SKIP_TEST flag, I get
>
> ttyS2: autoconf (0x03e8, 00000000): LOOP test failed (10) type=unknown
>
> and only the 2 existing ports are detected! Thanks!
>
> Why is the ASYNC_SKIP_TEST flag needed? Would it be safe to remove it for PPC,
> or are there possible side effects?

This patch removes the ASYNC_SKIP_TEST flag on PPC:

--- linux-ppc-2.6.0-test3/include/asm-ppc/pc_serial.h Mon Aug 11 02:21:00 2003
+++ linux-longtrail-2.6.0-test3/include/asm-ppc/pc_serial.h Wed Aug 13 23:01:50 2003
@@ -28,10 +28,10 @@

/* Standard COM flags (except for COM4, because of the 8514 problem) */
#ifdef CONFIG_SERIAL_DETECT_IRQ
-#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST | ASYNC_AUTO_IRQ)
+#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_AUTO_IRQ)
#define STD_COM4_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_AUTO_IRQ)
#else
-#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF | ASYNC_SKIP_TEST)
+#define STD_COM_FLAGS (ASYNC_BOOT_AUTOCONF)
#define STD_COM4_FLAGS ASYNC_BOOT_AUTOCONF
#endif

OK to apply?
Gr{oetje,eeting}s,
Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

-
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: 2005-03-22 13:47    [from the cache]
©2003-2011 Jasper Spaans