Re: Serial cardbus code.... for testing, please.....

From: Jeff Garzik (jgarzik@mandrakesoft.com)
Date: Sun Dec 10 2000 - 11:26:38 EST


"Theodore Y. Ts'o" wrote:
>
> Date: Sat, 09 Dec 2000 11:13:59 -0500
> From: Jeff Garzik <jgarzik@mandrakesoft.com>
>
> > Note how the "rs_interrupt()" routine _tries_ to avoid this by having a
> > pass counter value, but that logic never triggers because we will loop
> > forever in receive_chars(), so the rs_interrupt() counter never even gets
> > to increment.
>
> Other places in serial.c check for 0xff, which implies we can and should
> do the same in the interrupt handler...
>
> No, other places in the serial driver check for 0xff *after* setting
> various registers and clearing various flags. Those various
> initializations are critical before you can simply do a "bail if LSR ==
> 0xff" check.

Looking through the code, isn't this setup complete before any
interrupts get delivered to rs_interrupt?

> It's possible (not very likely, but possible) for LSR to go into
> christmas tree mode where all of the flags are set in normal operation.
> So for the interrupt driver, we're going to have to do some kind of loop
> based thing --- if interrupt driver receives 0xff more than some number
> of times, bail.

oh well :)

        Jeff

-- 
Jeff Garzik         |
Building 1024       | These are not the J's you're lookin' for.
MandrakeSoft        | It's an old Jedi mind trick.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Dec 15 2000 - 21:00:19 EST