Subject: Re: 230400 on com.c?
To: Herb Peyerl <hpeyerl@beer.org>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: current-users
Date: 05/02/2002 19:46:45
On Thu, May 02, 2002 at 10:42:36AM -0600, Herb Peyerl wrote:
> Frank van der Linden <fvdl@wasabisystems.com>  wrote:
>  > You can only really use a speed > 115200 if the serial chip is clocked
>  > with a frequency high enough to deal with it. If you have a 16x50 with
>  > a higher clock, you can change COM_FREQ in sys/dev/ic/comreg.h to
>  > match it. There's currently no way to change that at runtime.
>  > 
>  > The hardware must actually allow it though. You can't make a 16550
>  > with a crystal at 1.8432 Mhz do 230400.
> 
> Ok. I've gotten to the bottom of it.  They're using a 7.3728Mhz oscillator
> on the card so I'll have to change COM_FREQ.  
> 
> However, that means I'll either have to boot a custom kernel every time
> I want to use this card on my Jornada _or_ divide my baud rates by 4
> whenever I want to use some other serial device.
> 
> What's the right way to solve this?

If it's a pcmcia adapter you can probably do something in the pcmcia front-end.
the puc front-end can deal with different frequency depending on
vendor/device ID. At attach time sc_frequency should be set to the
rigth value (COM_FREQ for most case).

-- 
Manuel Bouyer <bouyer@antioche.eu.org>
--