On Mar 23, 2007, at 9:49 PM, Mike Tancsa wrote:

Hi,
I have a mini-pci UART that has a problem with its speed. When I connect to it at 300bps the other side sees this as 1200. e.g.

Other PC   PUC device
4800       1200
9600       2400
19200      4800

*snip*

I am guessing something needs to be changed in the puc driver for it ?

       /* Oxford Semiconductor OX16PCI954 PCI UARTs */
        {   "Oxford Semiconductor OX16PCI954 UARTs",
            {   0x1415, 0x9501, 0,      0       },
            {   0xffff, 0xffff, 0,      0       },
            {
                { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ },
                { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ },
            },
        },


but what ?

Try changing the frequency from COM_FREQ to (4 * COM_FREQ). The
frequency is driving the baudrate generator and given that the
baudrate is off by a factor of 4, it follows that we program the
baudrate generator with a divisor that corresponds to a frequency
that's off by a factor of 4 as well.

HTH,

--
Marcel Moolenaar
[EMAIL PROTECTED]


_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to