I'll try to start over, I'll make a small diff. They will be easier for you to check and I did not mix everything in one pile.
Removed unnecessary code, as the same thing does pms_change_state() when the device enters a state of PMS_STATE_ENABLED -- Alexandr Shadchin Index: pms.c =================================================================== RCS file: /cvs/src/sys/dev/pckbc/pms.c,v retrieving revision 1.6 diff -u -p -r1.6 pms.c --- pms.c 29 Sep 2010 19:39:18 -0000 1.6 +++ pms.c 30 Sep 2010 07:40:39 -0000 @@ -173,9 +173,6 @@ pmsattach(parent, self, aux) } #endif - sc->inputstate = 0; - sc->oldbuttons = 0; - pckbc_set_inputhandler(sc->sc_kbctag, sc->sc_kbcslot, pmsinput, sc, sc->sc_dev.dv_xname);