lkml.org 
[lkml]   [2008]   [Jan]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [patch 2/2] 8250_pnp: register x86 COM ports at the conventional ttyS names
    Date
    Bjorn Helgaas <bjorn.helgaas@hp.com> wrote:
    > On Wednesday 16 January 2008 11:44:37 am H. Peter Anvin wrote:
    >> Bjorn Helgaas wrote:

    >> > +#ifdef CONFIG_X86
    >> > + switch (port->iobase) {
    >> > + case 0x3f8: return 0; /* COM1 -> ttyS0 */
    >> > + case 0x2f8: return 1; /* COM2 -> ttyS1 */
    >> > + case 0x3e8: return 2; /* COM3 -> ttyS2 */
    >> > + case 0x2e8: return 3; /* COM4 -> ttyS3 */
    >> > + }
    >> > +#endif
    >> > +
    >>
    >> Arguably, the right thing is to use the addresses present in the array
    >> at address 0x400. In particular, COM3 and COM4 aren't always at those
    >> addresses.
    >
    > Wow. I bow before your storehouse of x86 arcana :-)
    >
    > I guess you're referring to the "BIOS data area," which I'd never
    > heard of before (but fortunately, Google knows).

    You'll want to google for Ralph Brown ...
    if your back allowes bowing that much.

    > What would you think about doing this only for COM1 and COM2? The
    > only real value for doing this in the first place is so "console=ttyS0"
    > always goes to COM1, even if we don't have SERIAL_PORT_DFNS. User-
    > space ought to use some sort of udev magic if it cares about persistent
    > naming.

    Since the first four COM ports are magic, and since using the BIOS port
    numbers will move the non-legacy ports anyway, you should use all up to
    four stored port numbers.

    BTW1: These addresses may be used to detect ports on non-standard addresses,
    but unfortunately they don't tell the IRQ.

    BTW2: When I submitted a patch using the BIOS data area, I was told that it
    might not exist on systems booting from non-PC firmware. This claim was not
    yet backed with any knowledge, nor did anybody suggest a way to detect this
    situation.



    \
     
     \ /
      Last update: 2008-01-16 21:37    [W:4.505 / U:0.388 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site