Yep now it's working. Thanks for the fix Ron!
Regards,
René
2009/6/9 Stefan Reinauer stepan@coresystems.de
On 09.06.2009 13:11 Uhr, ron minnich wrote:
On Mon, Jun 8, 2009 at 11:29 PM, Stefan Reinauerstepan@coresystems.de stepan@coresystems.de wrote:
I hope we find out why this is a problem, because a combination of cli+sti should never cause an interrupt that would not exist without cli+sti. If we can't I suggest we commit this in a few days (Acked-by: Stefan Reinauerstepan@coresystems.de stepan@coresystems.de) since it fixes the problem.
I'm going to commit it. The reason is that we should never do an sti unless we are prepared to take a device interrupt, and we are not. I think it is an error to do an sti at this point. Also, just doing a cli/sti without determining that interrupts were enabled in the first place is also a mistake.
I agree. Sorry for the premature action of me adding cli/sti to my original code submission. I only tested on real hardware (three boards, all with the same chipset)... This is a good example how complex interactions between components for seemingly trivial code can be.
Stefan
-- coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br. Tel.: +49 761 7668825 • Fax: +49 761 7664613 Email: info@coresystems.de • http://www.coresystems.de/ Registergericht: Amtsgericht Freiburg • HRB 7656 Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866