[PATCH] Allow ns16550.c to get base baud from rs_table instead of BAUD_BASE
Tom Rini
trini at kernel.crashing.org
Thu Aug 25 07:47:34 EST 2005
On Wed, Aug 24, 2005 at 03:35:21PM -0600, Grant Likely wrote:
> On Wed, Aug 24, 2005 at 11:35:20AM -0700, Tom Rini wrote:
> > On Tue, Aug 23, 2005 at 04:47:02PM -0600, Grant Likely wrote:
> >
> > > [PATCH] Allow ns16550.c to get base baud from rs_table instead of BAUD_BASE
> > >
> > > REPOST: fixed formating problems in original patch
> > >
> > > Modifies serial_init to get base baud rate from the rs_table entry instead
> > > of BAUD_BASE. Will default back to BAUD_BASE if base_baud is not set.
> > >
> > > This patch eliminates duplication between the SERIAL_PORT_DFNS macro and
> > > BAUD_BASE. Without the patch, if a port set the baud rate in
> > > SERIAL_PORT_DFNS, but did not update BASE_BAUD, the BASE_BAUD value
> > > would still be used.
> > >
> > > Rather; serial_init() should look first in SERIAL_PORT_DFNS and use
> > > BASE_BAUD as a backup.
> > >
> > > Signed-off-by: Grant Likely <grant.likely at gdcanada.com>
> >
> > With everything in-tree, this is fine as baud_base is always set to
> > BASE_BAUD, but I'm wondering why this was done. Did you do a port and
> > not follow on this? It looks like today you could get away without
> > defining BASE_BAUD correctly (8250_early uses and needs this to be
> > correct, but I don't think this is frequently used, yet). But I'm not
> > sure what we gain here. Thanks.
> I stumbled across this while working on moving v2pro to the platform
> bus. (I'm also trying to isolate xparameter.h as much as possible to
> avoid recompiling the world everytime I get a new bitstream). I've got
> the base baud for each port in the rs_table.
I'll buy that, and slightly modify this for 2.6.14, thanks.
> IMHO it doesn't seem right to have part of the serial parameters pulled
> from rs_table and the base baud pulled from elseware. ie. it looked
> like a latent bug to me, so I wrote the patch. I've also got the
> impression that the serial subsystem is trying to move away from
> depending on BASE_BAUD
The general problem here (Holy crap! arch/ppc/boot/common/ns16550.c uses
everything we'd like to kill from <asm*/serial.h>) is come up before,
and is being slowly fixed.
--
Tom Rini
http://gate.crashing.org/~trini/
More information about the Linuxppc-embedded
mailing list