Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Dec 2013 19:04:22 +0000
From:      "Conall O'Brien" <conall@conall.net>
To:        Milan Obuch <freebsd-stable@dino.sk>
Cc:        Darrel <levitch@iglou.com>, freebsd-stable@freebsd.org
Subject:   Re: serial card on RC2 , RC3
Message-ID:  <CAErLiGF7aVfmFTGig4%2BjgZ5=KU6s-dVQqGKXEiZDQqBdUnbJOw@mail.gmail.com>
In-Reply-To: <20131228155818.17398d57@zeta.dino.sk>
References:  <alpine.GSO.2.00.1312271114020.26196@shell1> <20131227181326.GA88638@in-addr.com> <alpine.GSO.2.00.1312271338250.4737@shell1> <20131227201342.08842077@zeta.dino.sk> <CAErLiGFHwi86sRSmN57DsoxVr6RgsnDjJ-Qr%2BX_BwXSirS6Z9Q@mail.gmail.com> <20131228155818.17398d57@zeta.dino.sk>

next in thread | previous in thread | raw e-mail | index | archive | help
On 28 December 2013 14:58, Milan Obuch <freebsd-stable@dino.sk> wrote:
> On Sat, 28 Dec 2013 14:11:17 +0000
> "Conall O'Brien" <conall@conall.net> wrote:
>
>> On 27 December 2013 19:13, Milan Obuch <freebsd-stable@dino.sk> wrote:
>> > On Fri, 27 Dec 2013 13:41:50 -0500 (EST)
>> > Darrel <levitch@iglou.com> wrote:
>> >
>> >>
>> >> >> Anyone know how to get serial cable working with StarTech "2
>> >> >> Port Native Express RS232 Serial Adapter Card with 16550
>> >> >> UART"?  It is part number PEX2S553.
>>
>> I've been trying to get the low profile version (part PEX2S553LP) of
>> this card to work in my system on and off for a while now.
>>
>
> Do you still have this card to test? OP will continue testing later
> when time permits, but if you can perform some test too, it could
> speed the work. I am just trying to help, using bit of experience gained
> with other multiport card.

The card is still in my home server, I just never found the time to
finish setting it up. Getting working console access to this box has
spent far too long on my TODO list, so I'm more than happy to test
further tweaks.

>> Having added the following diff (which I keep meaning to submit in a
>> PR), I have the uart driver recognising the card.
>>
>> --- sys/dev/uart/uart_bus_pci.c (revision 259948)
>> +++ sys/dev/uart/uart_bus_pci.c (working copy)
>> @@ -130,6 +130,8 @@
>>         "MosChip MCS9901 PCIe to Peripheral Controller", 0x10 },
>>  { 0x9710, 0x9904, 0xa000, 0x1000,
>>         "MosChip MCS9904 PCIe to Peripheral Controller", 0x10 },
>> +{ 0x9710, 0x9922, 0xa000, 0x1000,
>> +       "MosChip MCS9900 PCIe to Peripheral Controller", 0x10 },
>>  { 0xdeaf, 0x9051, 0xffff, 0, "Middle Digital PC Weasel Serial Port",
>> 0x10 }, { 0xffff, 0, 0xffff, 0, NULL, 0, 0}
>>  };
>>
>
> At a first sight it looks basically the same effect is achieved this
> way, with no puc used here. Maybe this chip needs some initialisation
> or mode switching could be usefull (it is possible to use FIFO 128
> bytes deep when desired), which is easy to do with puc framework (but I
> will look into uart too as there will be one level less in device tree
> this way). But there are also 8 GPIO ports on this chip, I have no idea
> how they could be correctly probed/attached if used.
>
>> grep uart /var/run/dmesg.boot:
>>
>> uart2: <Non-standard ns8250 class UART with FIFOs> port 0xd010-0xd017
>> mem 0xfe203000-0xfe203fff,0xfe202000-0xfe202fff irq 18 at device 0.0
>> on pci4
>> uart3: <Non-standard ns8250 class UART with FIFOs> port 0xd000-0xd007
>> mem 0xfe201000-0xfe201fff,0xfe200000-0xfe200fff irq 19 at device 0.1
>> on pci4
>>
>> and with pciconf -lv
>>
>> uart2@pci0:4:0:0:       class=0x070002 card=0x1000a000 chip=0x99229710
>> rev=0x00 hdr=0x00
>>     vendor     = 'NetMos Technology'
>>     device     = 'PCIe 9922 Multi-I/O Controller'
>>     class      = simple comms
>>     subclass   = UART
>> uart3@pci0:4:0:1:       class=0x070002 card=0x1000a000 chip=0x99229710
>> rev=0x00 hdr=0x00
>>     vendor     = 'NetMos Technology'
>>     device     = 'PCIe 9922 Multi-I/O Controller'
>>     class      = simple comms
>>     subclass   = UART
>>
>>
>> However, I can't get a working tty on either serial port. When I
>> connect over the serial port, I have a blank tty, which clearly states
>> "Not a controlling terminal" when sent SIGINFO.
>>
>> >> >> In my kernel I tried this:
>> >> >>
>> >> >> device puc
>> >> >> device sio
>> >> >> options COM_MULTIPORT
>> >> >>
>> >> >> in different variations.
>> >> >>
>> >> >> Also I tried in /boot/device.hints:
>> >> >>
>> >> >> hint.sio.2.flags="0x201"
>> >> >> hint.sio.3.flags="0x201"
>> >> >>
>> >> >> It is obviously a cheap card, but I do have one working in a
>> >> >> msft 7 machine.
>> >> >>
>> >> >
>> >> > Please post some more information about your system.  pciconf -lv
>> >> > and dmesg would both help developers see why the card isn't
>> >> > detected.  If your system has been up for a while you may be
>> >> > better off sending /var/run/dmesg.boot than the output of the
>> >> > dmesg program.
>> >> >
>> >>
>> >
>> > Hi,
>> >
>> > could you apply following patch to /usr/src/sys/dev/puc/pucdata.c
>> > and rebuild your kernel and/or modules? This is the first thing I
>> > would test, and it could even work, but no guarantee yet,
>> > naturally :)
>>
>> > --- pucdata.c   2013-10-23 22:51:08.000000000 +0200
>> > +++ pucdata.c.mod       2013-12-27 20:09:36.000000000 +0100
>> > @@ -1094,6 +1094,12 @@
>> >             PUC_PORT_2P, 0x10, 4, 0,
>> >         },
>> >
>> > +       {   0x9710, 0x9922, 0xffff, 0,
>> > +           "NetMos NM9922 Dual UART",
>> > +           DEFAULT_RCLK,
>> > +           PUC_PORT_2S, 0x10, 4, 0,
>> > +       },
>> > +
>> >         {   0xb00c, 0x021c, 0xffff, 0,
>> >             "IC Book Labs Gunboat x4 Lite",
>> >             DEFAULT_RCLK,
>>
>> I'm currently trying to enable sio, but run into kernel compile time
>> problems already reported in
>> http://www.freebsd.org/cgi/query-pr.cgi?pr=166626 . Perhaps I need to
>> give up on sio and try using the puc driver with your patch

A new kernel with your patch to pucdata.c fails to boot cleanly, at
the same point Daniel experienced. It freezes just after:

puc0: <NetMos NN9922 Dual UART> port 0xd010-0xd017 mem
0xfe203000-0xfe203fff, 0xfw202000-0xfe202fff irq 18 at device 0.0 on
pci4
uart2: <Non-standard ns8250 class UART with FIFIs> at port 1 on puc0


I can capture verbose boot output, just as soon as I find a way to log
it somewhere.

> Which FreeBSD version are you using?

I'm tracking RELENG_9 currently. Specifically,

FreeBSD megatron.taku.ie 9.2-STABLE FreeBSD 9.2-STABLE #2 r255906M:
Fri Sep 27 10:57:16 IST 2013
root@megatron.taku.ie:/usr/obj/usr/src/sys/MEGATRON  amd64

> Just for correctness, your patch
> suggests you are atually using uart, not sio, which was deprecated some
> time ago I think...

I wasn't aware that sio was deprecated, just that uart supports some
devices instead. I guess I should update my knowledge to stop
defaulting to sio then.

>> > [ dmesg and pciconf output snipped ]
>> >
>> > Regards,
>> > Milan
>> >
>>
> _______________________________________________
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"



-- 

Conall O'Brien



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAErLiGF7aVfmFTGig4%2BjgZ5=KU6s-dVQqGKXEiZDQqBdUnbJOw>