Timeda 8-multiport adapter: only 2 ports available

Marcel Moolenaar xcllnt at mac.com
Mon Dec 15 17:33:34 UTC 2008


On Dec 15, 2008, at 7:58 AM, Boris Samorodov wrote:

> Marcel Moolenaar <xcllnt at mac.com> writes:
>> On Dec 13, 2008, at 5:36 AM, Boris Samorodov wrote:
>>
>>> That's for the line [*]:
>>> -----
>>> --- pucdata.c   (revision 185784)
>>> +++ pucdata.c   (working copy)
>>> @@ -1145,6 +1145,10 @@
>>>       case PUC_CFG_GET_TYPE:
>>>               *res = PUC_TYPE_SERIAL;
>>>               return (0);
>>> +       case PUC_CFG_INIT_PORT:
>>> +               bus_write_1((struct res *)res, 1 /* IER */,   [*]
>>> +                   (port >= 2) ? 0x10 : 0);
>>> +               return (0);
>>>       default:
>>>               break;
>>>       }
>>
>> Argh, (struct res *) must be (struct resource *)...
>
> No go. The same, ports are detected but show garbadge.

One last thing that we could try. If the rclk for the
upper 6 ports is wrong, then the baudrate will not be
as programmed. For all ports we now have an rclk that's
8 times the default (i.e. RCLK*8). See if the baudrate
is 8 times slower than what you specified.

i.e. If you specified a baudrate of 115200, see if you
need to program the other side for 14400. You may want
to pick a baudrate that's yields a more standard rate
when divided by 8.

If this works, then the upper 6 port have a standard
RCLK.

More tricky, but worth to try is RCLK*10. Since we
calculate based on RCLK*8, the baudrate will be 10/8
of what you expect. Specify a baudrate of 92160 to
get 115200 (pick numbers that'll work).

FYI,

-- 
Marcel Moolenaar
xcllnt at mac.com





More information about the freebsd-current mailing list