Re: Syba 8-Port Serial Card Unidentified By Kernel

Previous thread: Reloading DVB drivers broken since 2.6.22, worked in 2.6.21 by Trent Piepho on Friday, October 5, 2007 - 2:03 pm. (1 message)

Next thread: [PATCH] dontdiff: update based on gitignore updates by Randy Dunlap on Friday, October 5, 2007 - 3:42 pm. (1 message)
From: Chris Bergeron
Date: Friday, October 5, 2007 - 2:31 pm

Hello all,

I've just installed a multiport serial card released by an outfit called 
Syba.  This is an 8 port serial-only card with an Octopus style breakout 
cable.  The main chipset on it is an ITE IT8871F.

I've got two questions on this: Is there a driver I should try force 
loading on it (and if so, what options to use)?  and is there any useful 
testing I can do to report back to the LKML on this card?

Thanks for your time, diagnostic output follows.
-- Chris

The following comes up from an "lspci -vv"

01:06.0 Serial controller: PLX Technology, Inc. Unknown device 9016 (rev 
01) (prog-if 02 [16550])
        Subsystem: Unknown device 544e:0008
        Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- 
ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
<TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 16
        Region 0: I/O ports at a000 [size=64]
        Region 1: I/O ports at a400 [size=16]
        Region 2: I/O ports at a800 [size=16]
        Region 3: Memory at f5000000 (32-bit, non-prefetchable) [size=4K]
        Region 4: Memory at f5001000 (32-bit, non-prefetchable) [size=4K]
        Region 5: Memory at f5002000 (32-bit, non-prefetchable) [size=4K]

and "lshw" outputs:

        *-communication UNCLAIMED
             description: Serial controller
             product: PLX Technology, Inc.
             vendor: PLX Technology, Inc.
             physical id: 6
             bus info: pci@0000:01:06.0
             version: 01
             width: 32 bits
             clock: 33MHz
             capabilities: 16550
             configuration: latency=0

-

From: Nicholas Miell
Date: Friday, October 5, 2007 - 3:43 pm

Try echo -n "10b5 9016" > /sys/bus/pci/drivers/serial/new_id and let
Russell King (rmk+serial@arm.linux.org.uk) know if it works (or if it
doesn't, for that matter).

-- 
Nicholas Miell <nmiell@comcast.net>

-

From: Lennart Sorensen
Date: Tuesday, October 9, 2007 - 11:14 am

Well 8250_pci.c mentions IT8871, so it is probably 8250 style in

How many serial ports is your kernel configured to use?

CONFIG_SERIAL_8250_NR_UARTS=16
CONFIG_SERIAL_8250_RUNTIME_UARTS=4

That is from my Debian system's kernel, and it won't activate more than
4 ports automatically.  It will allow up to 16 to be activated though.
I don't remember what the boot command is to override those values to
make the system look for more ports.

--
Len Sorensen
-

From: Chris Bergeron
Date: Tuesday, October 9, 2007 - 12:25 pm

That's what I had thought too after a quick LKML search.  Doing a bit 
more research (I'm starting to think the IT8871F on the chip is 
misleading) it looks like that support is for a single parallel multi 
The kernel I'm using has 16 for both the NR_UARTS and RUNTIME_UARTS 
(these machines generally have a minimum of 4 ports).  dmesg doesn't 
show the kernel as recognizing the card and only ttyS0 and ttyS1 (the 
two onboard ports) show up on boot.

-- Chris
-

From: Andrey Panin
Date: Wednesday, October 10, 2007 - 2:54 am

Are you sure ? IIRC IT887x are PCI-ISA bridges with additional periphery
and your lspci shows PLX chip. Can you send complete lspci -vv output ?

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net
From: Chris Bergeron
Date: Thursday, October 11, 2007 - 10:02 am

I'm sure that's what it says on the largest chip on the PCI card.  It 
could be that the other two chips are more relevant... the numbers from 
them are included below.

I've posted up a quick text only page with the diagnostic information 
from the system (full dmesg, lspci, etc) plus links to pictures of the 
board (since others might see something important that I'm not aware 
of).  You can access that at 
http://pcburn.com/files/Syba_serial_controller/index.html

One chip has "ITE IT8871F 0641-AYS ZF1M04L" written on it, and the other 
two have  a stylized celtic knot looking "T" followed by "TG16C554CJG 
FTA6M-001 0620-B".
-

From: Lennart Sorensen
Date: Thursday, October 11, 2007 - 12:01 pm

Well TG16C554 sounds awfully similar to 16550 which is a common UART
type.  Perhaps 554 indicates it is 4 16550s in one chip.  There are two
of those chips in one of the pictures.

Here is a data sheet for it:
http://www.twistsemi.com/downloads/TG16C554V1.5.pdf

It is in fact a quad UART chip.  It appears to have 4 chip select lines
to pick between the 4 UARTS, 3 address lines to access the 8 16550
registers, and 8 data lines to read and write those registers as well as
a pair of read and write enable lines.  They are NOT PCI chips, so quite
likely the IT8871 is there as a PCI to parallel convertor and then the
parallel interface connects to the UARTs.  No idea where the IRQ line
from the chips would connect to (one of the parallel port signals that
generates an IRQ?)

The 8 small chips are probably RS232 level convertors.

The 8871 is a single PCI parallel port, so certainly somehow they are
controlling the two serial to parallel chips through that pci parallel
port.

I included the diff of the files you had on your web page and the
originals founds in 2.4.20 (which is what they claim they replace).

I can't really tell if there is any code there to deal with their quad
uart chip or not.

--- drivers/char/serial.c	2002-11-28 18:53:12.000000000 -0500
+++ /tmp/serial_20.c	2006-11-23 03:17:24.000000000 -0500
@@ -257,6 +257,13 @@
 
 static struct timer_list serial_timer;
 
+//struct pci_dev *pcidev = NULL;
+// ITE8872 ITE8872
+u32 ITE8872_INTC[8];
+int ITEBOARDNUMBER=0;
+u8 ITE8872_IRQ[8];
+
+
 /* serial subtype definitions */
 #ifndef SERIAL_TYPE_NORMAL
 #define SERIAL_TYPE_NORMAL	1
@@ -4165,6 +4172,163 @@
 }
 EXPORT_SYMBOL(pci_siig20x_fn);
 
+void ite8872_requestirq(int irq,void *dev_id,struct pt_regs *regs){
+	u8 itmp;
+	int i=0;
+	/* measure which INTC went to control */
+	for(i=0;i<8;i++)
+	  if(irq == ITE8872_IRQ[i])
+	 {
+	/* clean ITE8872 interrupt */
+	itmp = inb(ITE8872_INTC[i]+2);
+	if(itmp & ...
From: Chris Bergeron
Date: Thursday, October 11, 2007 - 1:48 pm

I'll see if I can compile up the appropriate kernel and test it with 
that code to see if it includes something to drive the card then, for 
starters.

-- Chris
-

From: Andrey Panin
Date: Friday, October 12, 2007 - 5:08 am

--aM3YZ0Iwxop3KEKx
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable


Can you try an attached patch ? I hope it should at least detect UARTs on=
=20
your board. Be ready that baudrate could be wrong, because we do not know

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net

--aM3YZ0Iwxop3KEKx
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=patch-syba
Content-Transfer-Encoding: quoted-printable

diff -urdpNX /usr/share/dontdiff linux-2.6.23.vanilla/drivers/serial/8250_p=
ci.c linux-2.6.23/drivers/serial/8250_pci.c
--- linux-2.6.23.vanilla/drivers/serial/8250_pci.c	2007-10-12 14:20:44.0000=
00000 +0400
+++ linux-2.6.23/drivers/serial/8250_pci.c	2007-10-12 14:07:08.000000000 +0=
400
@@ -1036,6 +1036,7 @@ enum pci_board_num_t {
 	pbn_b0_2_115200,
 	pbn_b0_4_115200,
 	pbn_b0_5_115200,
+	pbn_b0_8_115200,
=20
 	pbn_b0_1_921600,
 	pbn_b0_2_921600,
@@ -1172,6 +1173,12 @@ static struct pciserial_board pci_boards
 		.base_baud	=3D 115200,
 		.uart_offset	=3D 8,
 	},
+	[pbn_b0_8_115200] =3D {
+		.flags		=3D FL_BASE0,
+		.num_ports	=3D 8,
+		.base_baud	=3D 115200,
+		.uart_offset	=3D 8,
+	},
=20
 	[pbn_b0_1_921600] =3D {
 		.flags		=3D FL_BASE0,
@@ -2520,6 +2527,11 @@ static struct pci_device_id serial_pci_t
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0,
 		pbn_b3_8_115200 },
=20
+	/* Syba PCI8871-PR8 8-port serial card */
+	{	PCI_VENDOR_ID_PLX, 0x9016,
+		0x544e, 0x0008, 0, 0,
+		pbn_b0_8_115200 },
+
 	/*
 	 * Exar Corp. XR17C15[248] Dual/Quad/Octal UART
 	 */

--aM3YZ0Iwxop3KEKx--
From: Chris Bergeron
Date: Tuesday, October 16, 2007 - 12:03 pm

Alright,finally had another machine to try the attached patch.  I get an 
odd error regarding IRQ 17:

"irq 17: nobody cared (try booting with the "irqpoll" option)"

along with a long error message (but the kernel continues to load).  
Aside from that the ports now allow me to run a getty on them and the 
DTR line lights up on my serial tester (as it does with a working port) 
but the device on the other end doesn't function.

I've updated the web page with lspci -vv and dmesg output.  I can also 
post it here if that's desirable, just figured I'd save everyone the 
inbox flooding :).

-- Chris

-

From: Andrey Panin
Date: Tuesday, October 16, 2007 - 11:42 pm

This message apearred after firewire driver initialization and firewire chip

Is it possible to connect two ports and run getty on one port and minicom on

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net
From: Chris Bergeron
Date: Wednesday, October 17, 2007 - 3:16 pm

I used the on-board serial port as a known working control (after 
getting it to work with the other onboard serial port) to try and 
connect over to one of the Syba card ports (using Cutecom & getty).  The 
lines light up, but there's nothing getting sent from the 8-port as far 
as I can see.  The onboard port works as I'd expect, the Syba (running 
getty identically from inittab) doesn't.

-- Chris


-

From: Andrey Panin
Date: Wednesday, October 17, 2007 - 10:57 pm

Oh crap... I missed this fscking "Disabling IRQ #17" line in your dmesg.
Can you try with firewire controller disabled somehow ?

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net
From: Chris Bergeron
Date: Thursday, October 18, 2007 - 10:00 am

Ah, I forgot to make note of that.  I did actually turn off Firewire in 
the BIOS.  Assuming that worked (and it looks like it did) the following 
section probably contains the relevant bits.  Still getting the IRQ 17 
error.

-- Chris

PCI: Setting latency timer of device 0000:00:05.0 to 64
NET: Registered protocol family 17
eth0: no IPv6 routers present
irq 17: nobody cared (try booting with the "irqpoll" option)
 [<c0104f45>] show_trace_log_lvl+0x1a/0x2f
 [<c0105939>] show_trace+0x12/0x14
 [<c0105951>] dump_stack+0x16/0x18
 [<c0152f90>] __report_bad_irq+0x39/0x79
 [<c01531af>] note_interrupt+0x1df/0x218
 [<c0153754>] handle_fasteoi_irq+0x91/0xb6
 [<c0105fef>] do_IRQ+0x7c/0x95
 [<c0104946>] common_interrupt+0x2e/0x34
 [<c010233a>] cpu_idle+0x1c/0xc2
 [<c02deed9>] rest_init+0x4d/0x4f
 [<c03e7979>] start_kernel+0x32a/0x332
 [<00000000>] 0x0
 =======================
handlers:
[<c023ecae>] (serial8250_interrupt+0x0/0x115)
Disabling IRQ #17
hda: DMA timeout retry


full dmesg output at 
http://pcburn.com/files/Syba_serial_controller/dmesg_with_1394_disabled.txt
-

From: Andrey Panin
Date: Monday, October 22, 2007 - 8:33 am

xt

So the card probably generates screaming interrupt... that's bad.
I found some docs for IT887x chips, according to these docs  IT887x
have simple interrupt controller inside. Further investigation is needed.

Can you post output of lspci -xxx ?

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net
From: Lennart Sorensen
Date: Monday, October 22, 2007 - 9:18 am

Is it possible they put a chip on to generate a PCI interrupt on perhaps
PCIB on the slot from the serial chips directly, so that they didn't
have to turn interrupts from the serial chips into a signal that forces
the parallel port to generate an interrupt?  After all that would reduce
latency, and if you use PCIA for the parallel port, PCIB for the first
serial chip and PCIC for the second, you might get a much more efficient
design, although the driver would have to register all those IRQs.

What IRQ is each PCI device in that system using right now?  perhaps we
could figure out what irq 17 would be on that PCI slot.

--
Len Sorensen
-

From: Andrey Panin
Date: Friday, October 26, 2007 - 4:35 am

I dont think so. IT887x has builtin interrupt controller which multiplexes=
=20
16 external IRQ pins with IRQs from builtin devices (parallel port, UARTs
and GPIO) into single INTA# line. IT887x also contains 8-bit ISA-like bus
and 16 chip select lines and it's all you need to glue UARTs to PCI bus.

I suspect that it's interrupt controller problem, probably edge/level

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net
From: Chris Bergeron
Date: Monday, October 22, 2007 - 10:14 am

Full output at 
http://pcburn.com/files/Syba_serial_controller/lspci_xxx.out.  The 
relevant part for the Syba card is probably:

01:08.0 Serial controller: PLX Technology, Inc. Unknown device 9016 (rev 01)
00: b5 10 16 90 07 00 80 02 01 02 00 07 00 00 00 00
10: 01 a4 00 00 01 a8 00 00 01 ac 00 00 00 00 00 f5
20: 00 10 00 f5 00 20 00 f5 00 00 00 00 4e 54 08 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 05 01 00 00
40: 3f 3f 08 00 00 8c 20 8b 45 54 55 45 00 00 10 d2
50: 01 01 71 03 01 03 00 00 00 00 00 00 00 00 00 00
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 03 00 06 f8 03 f8 02
80: 78 03 78 07 00 08 00 07 00 01 20 01 40 01 60 01
90: 00 00 00 00 00 00 00 00 00 00 00 00 70 43 25 64
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00


-- Chris
-

From: Andrey Panin
Date: Sunday, October 28, 2007 - 8:42 am

--CE+1k2dSO48ffgeK
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable


Can you test an attached patch against 2.6.24-rc1 ?

--=20
Andrey Panin		| Linux and UNIX system administrator
pazke@donpac.ru		| PGP key: wwwkeys.pgp.net

--CE+1k2dSO48ffgeK
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=patch-syba-2
Content-Transfer-Encoding: quoted-printable

diff -urdpNX dontdiff linux-2.6.24.vanilla/drivers/serial/8250_pci.c linux-=
2.6.24/drivers/serial/8250_pci.c
--- linux-2.6.24.vanilla/drivers/serial/8250_pci.c	2007-10-28 13:00:14.0000=
00000 +0300
+++ linux-2.6.24/drivers/serial/8250_pci.c	2007-10-28 18:15:12.000000000 +0=
300
@@ -610,45 +610,49 @@ static int pci_netmos_init(struct pci_de
 /* enable IO_Space bit */
 #define ITE_887x_POSIO_ENABLE		(1 << 31)
=20
-static int pci_ite887x_init(struct pci_dev *dev)
+static int pci_ite_887x_allocate_io(struct pci_dev *dev)
 {
-	/* inta_addr are the configuration addresses of the ITE */
-	static const short inta_addr[] =3D { 0x2a0, 0x2c0, 0x220, 0x240, 0x1e0,
-							0x200, 0x280, 0 };
-	int ret, i, type;
-	struct resource *iobase =3D NULL;
-	u32 miscr, uartbar, ioport;
+	static const short inta_addr[] =3D {
+		0x2a0, 0x2c0, 0x220, 0x240, 0x1e0, 0x200, 0x280, 0
+	};
+	int ret, i;
=20
-	/* search for the base-ioport */
-	i =3D 0;
-	while (inta_addr[i] && iobase =3D=3D NULL) {
-		iobase =3D request_region(inta_addr[i], ITE_887x_IOSIZE,
-								"ite887x");
-		if (iobase !=3D NULL) {
+	for (i =3D 0; i < ARRAY_SIZE(inta_addr); i++) {
+		int iobase =3D inta_addr[i];
+
+		if (request_region(iobase, ITE_887x_IOSIZE, "ite887x")) {
 			/* write POSIO0R - speed | size | ioport */
 			pci_write_config_dword(dev, ITE_887x_POSIO0,
 				ITE_887x_POSIO_ENABLE | ITE_887x_POSIO_SPEED |
-				ITE_887x_POSIO_IOSIZE_32 | inta_addr[i]);
+				ITE_887x_POSIO_IOSIZE_32 | iobase);
+
 			/* write INTCBAR - ioport ...
From: Bjorn Helgaas
Date: Wednesday, September 3, 2008 - 8:59 pm

Can you point me to any of those IT887x docs?  I haven't been able

I tested basically the same patch against a current upstream tree,
and the syba ports don't work, even with "irqpoll".  Here's the
discovery:

Serial: 8250/16550 driver16 ports, IRQ sharing enabled
<FF>serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
pnp: the driver 'serial' has been registered
00:10: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial 00:10: driver attached
00:11: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
serial 00:11: driver attached
serial 0000:00:01.0: check 0x2a0
serial 0000:00:01.0: got 0x0
serial 0000:00:01.0: syba at 0x000002a0
serial 0000:00:01.0: ite887x: io base at 0x2a0
serial 0000:00:01.0: ite887x: IRR0=00 IMR0=00 IER0=00
serial 0000:00:01.0: ite887x: IRR1=00 IMR1=00 IER1=00
serial 0000:00:01.0: ite887x: IRR2=00 IMR2=00 IER2=00
0000:00:01.0: ttyS4 at I/O 0x1000 (irq = 16) is a 16550A
0000:00:01.0: ttyS5 at I/O 0x1008 (irq = 16) is a 16550A
0000:00:01.0: ttyS6 at I/O 0x1010 (irq = 16) is a 16550A
0000:00:01.0: ttyS7 at I/O 0x1018 (irq = 16) is a 16550A
0000:00:01.0: ttyS8 at I/O 0x1020 (irq = 16) is a 16550A
0000:00:01.0: ttyS9 at I/O 0x1028 (irq = 16) is a 16550A
0000:00:01.0: ttyS10 at I/O 0x1030 (irq = 16) is a 16550A
0000:00:01.0: ttyS11 at I/O 0x1038 (irq = 16) is a 16550A

The entire dmesg log is at http://helgaas.com/tmp/sybase.txt
The patch I tested is at http://helgaas.com/tmp/sybase.patch

Here's the "lspci -xxx" output:

00:01.0 Serial controller: PLX Technology, Inc. Unknown device 9016 (rev 01)
00: b5 10 16 90 03 01 80 02 01 02 00 07 00 00 00 00
10: 01 10 00 00 d1 10 00 00 c1 10 00 00 00 30 24 e8
20: 00 20 24 e8 00 10 24 e8 00 00 00 00 4e 54 08 00
30: 00 00 00 00 00 00 00 00 00 00 00 00 0b 01 00 00
40: 3f 3f 08 00 00 8c 20 8b 45 54 55 45 00 00 10 d2
50: 01 01 71 03 01 03 00 00 00 00 00 00 00 00 00 00
60: a0 02 00 e5 00 00 00 00 00 00 00 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 a0 02 00 00 f8 03 f8 ...
From: Bjorn Helgaas
Date: Wednesday, September 10, 2008 - 12:26 pm

Here's a 2.6.27-rc3 patch that works for me.

I only have one card, so I can't test this with multiple cards.
I don't know whether there's any way the INTC_GPIO base addresses
would get programmed to non-conflicting values.  My card comes
up with the INTC_GPIO area at I/O ports 0x0300-0x031f, but that
might be a default that's just hardwired into the card.

It looks like we could allocate this region when we claim the
device, which should let us support multiple cards, but I haven't
tried this.

If anybody tries this out, let me know how it works.

Bjorn


diff --git a/drivers/serial/8250_pci.c b/drivers/serial/8250_pci.c
index c2f2393..d442ddb 100644
--- a/drivers/serial/8250_pci.c
+++ b/drivers/serial/8250_pci.c
@@ -737,6 +737,55 @@ static void __devexit pci_ite887x_exit(struct pci_dev *dev)
 	release_region(ioport, ITE_887x_IOSIZE);
 }
 
+#define ITE_887x_IRR0  0
+#define ITE_887x_IRR1  1
+#define ITE_887x_IRR2  2
+#define ITE_887x_IMR0  4
+#define ITE_887x_IMR1  5
+#define ITE_887x_IMR2  6
+#define ITE_887x_IER0  8
+#define ITE_887x_IER1  9
+#define ITE_887x_IER2  10
+#define ITE_887x_ITR0  12
+#define ITE_887x_ITR1  13
+#define ITE_887x_ITR2  14
+
+static int pci_syba_ite887x_init(struct pci_dev *dev)
+{
+	u32 ddma_intc_base, intc_base;
+	struct resource *iobase;
+
+	pci_read_config_dword(dev, ITE_887x_INTCBAR, &ddma_intc_base);
+	intc_base = ddma_intc_base & 0xffff;
+
+	iobase = request_region(intc_base, ITE_887x_IOSIZE, "ite887x");
+	if (!iobase) {
+		dev_err(&dev->dev, "can't request INTC_Base at 0x%x\n",
+			intc_base);
+		return -ENODEV;
+	}
+
+	outb(0x00, intc_base + ITE_887x_IMR0);	/* mask external IRQ 0-7 */
+	outb(0xff, intc_base + ITE_887x_IMR1);	/* mask external IRQ 8-15 */
+	outb(0xff, intc_base + ITE_887x_IMR2);	/* mask internal interrupts */
+
+	outb(0xff, intc_base + ITE_887x_IER0);	/* IRQ 0-7 level-triggered */
+	outb(0x00, intc_base + ITE_887x_IER1);	/* IRQ 8-15 edge (unused) */
+	outb(0x00, intc_base + ITE_887x_IER2);	/* ...
Previous thread: Reloading DVB drivers broken since 2.6.22, worked in 2.6.21 by Trent Piepho on Friday, October 5, 2007 - 2:03 pm. (1 message)

Next thread: [PATCH] dontdiff: update based on gitignore updates by Randy Dunlap on Friday, October 5, 2007 - 3:42 pm. (1 message)