The first two patches fix what I believe are bugs. The third patch add a polling mechanism for those systems where interrupts are not available. All these patches have been tested on a system without interrupt, this means that I used my third patch to validate also the other two. I would be nice if someone can run verify this also on other system, perhaps with interrupts. If you consider it a useful information, I'm not using devicetree for this installation.