On 2011-03-08, Tero Koskinen <tero.koski...@iki.fi> wrote:
> On Mon, 7 Mar 2011 22:59:36 +0000 (UTC) Stuart Henderson wrote:
>> The PCIE parts use quite different addresses. You can try these:
>> 
>> { PUC_PORT_TYPE_COM, 0x10, 0x1000, 4000000 * 8 },
>> { PUC_PORT_TYPE_COM, 0x10, 0x1200, 4000000 * 8 },
>
> Thanks, with these values the system doesn't freeze anymore and
> I can send data from one port to another.
>
>> The speeds will almost certainly be wrong, you'll probably need to
>> cu -s 4800 to get a 9600 baud connection with this (the divisor should 
>> be 4000000 * 16 but I couldn't get this to work, for more info see
>> http://marc.info/?l=openbsd-tech&m=126446213208560&w=2).
>> 
>> I may have datasheets for this somewhere...you can learn some things
>> from the linux driver too, they have some fancy stuff to work out how
>> many ports the devices have, etc.
>
> I tried to look at drivers/serial/8250_pci.c at one point, but couldn't
> find anything special for these oxford cards. (I also didn't realize that
> first_offset = 0x1000, .uart_offset = 0x200 maps into 0x1000/0x1200 on
> OpenBSD, so I probably missed other things too.)

Look for pci_oxsemi_tornado_init(). Unfortunately I don't have my card
available for hacking on, it's running as an active console server in a
colo ~5 hours away.

Reply via email to