Re: [patch 2.6.28-rc2] atmel_serial: keep clock off when it's notneeded

From: Haavard Skinnemoen
Date: Tue Oct 28 2008 - 13:51:03 EST


David Brownell <david-b@xxxxxxxxxxx> wrote:
> > > I verified it on AT91, where the console is normally DBGU and the
> > > other USARTs do get an open().
> > >
> > > Didn't verify on AVR32, since 2.6.28-rc can't see the root FS because
> > > of that NOR flash problem. Though I suppose I can try it on an older
> > > kernel.
> > >
> > > As a rule the boot loader will be using that USART, and thus will
> > > have enabled its clock. :)
> >
> > Hmm. But in the cases when "normally" and "as a rule" don't apply, the
> > board will lock up solid with no console output since it will wait
> > forever for the TXRDY bit to be set...
> >
> > I'd like to know for sure that it cannot happen, please.
>
> I'd just like to know that this bug is fixed. Do you have a
> better fix? (And a board broken by this patch, to verify it?)

Fixing a bug by introducing a worse one isn't much of an improvement.
The bug may be difficult to trigger, but that makes it even worse,
IMO.

I'll see if I can come up with a fix. Basically, we need to enable the
clock when initializing the console, and disable it after calling
uart_add_one_port() if the port is the console.

Haavard
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/