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

I see, change in 8250.c between 2.6.15 and 2.6.16 - WAS: no go for me with serial console, bug 364637



On Thu, 27 Apr 2006, Brad Boyer wrote:

  > On Thu, Apr 27, 2006 at 09:11:32PM +0200, Sven Luther wrote:
  > > > What is supposed to happen after 'Trying to im_free...' ?
  > >
  > > Attaching the full log. The isa stuff is probably related to the graphic card.
  > >
  >
  > > Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
  > > pmac_zilog: 0.6 (Benjamin Herrenschmidt <benh@kernel.crashing.org>)
  > > pmac_zilog: Error registering serial device, disabling pmac_zilog.
  > > pmac_zilog: Did another serial driver already claim the minors?
  > > Trying to im_free nonexistent area (d00008008216c000)
  > > Trying to im_free nonexistent area (d00008008216e000)
  >
  > Here is the problem. The 8250/16550 driver used to have a check to make
  > it bail out on all PowerMac models. It used to print out a message to
  > that fact, too. The pmac_zilog driver is dying a miserable death because
  > it thinks it should be the only serial driver, but in this case it isn't.
  >
  > 	Brad Boyer
  > 	flar@allandria.com
  >

I see.  Comparing drivers/serial/8250.c between the debian kernel source
packages for testing (2.6.15-8) and unstable (2.6.16-12) shows a number
of missing ifdefs.  But are these differences because changes which need
to be continued were just not applied to 2.6.16, or did someone feel
that these ifdefs were no longer needed and removed them?

$ diff -u ./2.6.15/2.6.15-8/usr/src/linux-source-2.6.15/drivers/serial/8250.c \
>               ./2.6.16/2.6.16-12/usr/src/linux-source-2.6.16/drivers/serial/8250.c
--- ./2.6.15/2.6.15-8/usr/src/linux-source-2.6.15/drivers/serial/8250.c 2006-03-06 05:29:37.000000000 -0500
+++ ./2.6.16/2.6.16-12/usr/src/linux-source-2.6.16/drivers/serial/8250.c        2006-03-20 00:53:29.000000000 -0500
@@ -31,7 +31,6 @@

.
.
.

@@ -2291,12 +2271,6 @@

 static int __init serial8250_console_init(void)
 {
-#ifdef CONFIG_PPC_MULTIPLATFORM
-       if(_machine == _MACH_Pmac) {
-               printk("%s: nothing to do on PowerMac\n",__FUNCTION__);
-               return -ENODEV;
-       }
-#endif
        serial8250_isa_init_ports();
        register_console(&serial8250_console);
        return 0;
@@ -2308,11 +2282,9 @@

.
.
.

@@ -2602,14 +2581,11 @@
 {
        int ret, i;

-#ifdef CONFIG_PPC_MULTIPLATFORM
-       if(_machine == _MACH_Pmac) {
-               printk("%s: nothing to do on PowerMac\n",__FUNCTION__);
-               return -ENODEV;
-       }
-#endif
+       if (nr_uarts > UART_NR)
+               nr_uarts = UART_NR;
+
        printk(KERN_INFO "Serial: 8250/16550 driver $Revision: 1.90 $ "
-               "%d ports, IRQ sharing %sabled\n", (int) UART_NR,
+               "%d ports, IRQ sharing %sabled\n", nr_uarts,
                share_irqs ? "en" : "dis");

        for (i = 0; i < NR_IRQS; i++)
@@ -2619,21 +2595,27 @@
.
.
.


-------------------------------------------------------------------
Toni Harbaugh-Blackford                   harbaugh@abcc.ncifcrf.gov
System Administrator
Advanced Biomedical Computing Center (ABCC)
National Cancer Institute
Contractor - SAIC/Frederick



Reply to: