Re: [BISECTED] - multiport braiboxes serial card broken between 4.8 and 4.9 (and again in 4.14)

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

 



On Fri, 2018-02-02 at 21:33 +0100, Nikola Ciprich wrote:
> Hi Andy,
> 
> just to be sure, you mean test separately this:
> guess this one:
> 8852   T Feb 02 Andy Shevchenko (  47) [PATCH v1] serial: 8250_pci:
> Don't fail on multiport card class

Yep, this one only, with your script versus the following w/o your
script.

> and this series:
> 8853   T Feb 02 Andy Shevchenko (  70) [PATCH v1 1/8] parport: Add
> support for BrainBoxes PX272/PX306 MIO card
> 8854   T Feb 02 Andy Shevchenko (  96) [PATCH v1 2/8] parport: PCI
> core handles power state for us
> 8855   T Feb 02 Andy Shevchenko (  56) [PATCH v1 3/8] parport: Convert
> to use managed functions pcim_* and devm_*
> 8856   T Feb 02 Andy Shevchenko (  49) [PATCH v1 4/8] parport: Don't
> shadow error codes in ->probe()
> 8857   T Feb 02 Andy Shevchenko (  46) [PATCH v1 5/8] parport: Convert
> printk(KERN_WARN) to dev_warn()
> 8858   T Feb 02 Andy Shevchenko (  39) [PATCH v1 6/8] parport: Switch
> to use module_pci_driver() macro
> 8859   T Feb 02 Andy Shevchenko (  37) [PATCH v1 7/8] parport: Sort
> headers alphabetically
> 8860   T Feb 02 Andy Shevchenko (  36) [PATCH v1 8/8] parport: Replace
> short License header by SPDX identifier
> right?

Here actually two test cases would be nice to have: a) only patch 1
applied, and then b) all of them are applied.

> I can do that if that's what you want, in the meantime,

Would be nice. And give to the series (answer to cover letter there)
with your

Tested-by: First Last <e@xxxxxxxx>

>  I've built 4.14.16
> with all of them applied and it's almost perfect:
> 
> all ports are detected,

Good news!

>  but there is gap in port numbers (but maybe
> it's not really problem of those patches?)

It's a very famous and known "feature". On x86 4 first ports are
allocated for ISA cards. And internal algo does some tricks with that.

What you may do to get them more deterministic, i.e. always start from
ttyS4 is to supply 8250.nr_uarts=9 (4 ISA + 5 on your card, or for
safest choice just put 16 there, but be sure that MAX_NR_UARTS in kernel
configuration is >= 16 as well).

> dmesg output:
> [    0.418944] 00:05: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200)
> is a 16550A
> [    6.535380] 0000:02:00.0: ttyS4 at I/O 0xe080 (irq = 18, base_baud
> = 921600) is a TI16750
> [    6.536495] 0000:02:00.0: ttyS5 at I/O 0xe088 (irq = 18, base_baud
> = 921600) is a TI16750
> [    6.537598] 0000:02:00.0: ttyS6 at I/O 0xe090 (irq = 18, base_baud
> = 921600) is a TI16750
> [    6.538663] 0000:02:00.0: ttyS7 at I/O 0xe098 (irq = 18, base_baud
> = 921600) is a TI16750
> [    6.539731] 0000:02:00.0: ttyS1 at I/O 0xe0a0 (irq = 18, base_baud
> = 921600) is a TI16750
> 
> # setserial -g /dev/ttyS*
> /dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
> /dev/ttyS1, UART: 16750, Port: 0xe0a0, IRQ: 18
> /dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
> /dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
> /dev/ttyS4, UART: 16750, Port: 0xe080, IRQ: 18
> /dev/ttyS5, UART: 16750, Port: 0xe088, IRQ: 18
> /dev/ttyS6, UART: 16750, Port: 0xe090, IRQ: 18
> /dev/ttyS7, UART: 16750, Port: 0xe098, IRQ: 18
> 
> is it possible to skip those nonexistant ttyS[23] ports
> and have ports from the card as S1..S5?

Since you have one ISA port, it's not so easy.

You may try to supply 8250.nr_uarts=6, in this case they will occupy
those gaps, but mind ordering -- nr_uarts=9 not the same as nr_uarts=6!
(Keep an eye on IO addresses)

See above as well.

> please let me know if you want me to perform more tests...

See above.

-- 
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy
--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux