Vernon Mauery wrote:
> I was wondering if anyone knows how to change the repeatrate on a USB 
> keyboard with a 2.4 kernel.  The system is a legacy free system (no ps2 
> port), so kbdrate does nothing.  With evdev loaded, the keyboard and mouse 
> (both USB devices) get registered with the event system and show up as 
> /dev/input/event[01].  I know the event subsystem does software key repeating 
> and was wondering how to change that.
> 
> I poked around and found the EVIOCGREP and EVIOCSREP ioctls, but when I tried 
> using them, the ioctl returned invalid parameter.  Upon further 
> investigation, I found that the ioctl definitions (located in the 
> linux/input.h header file) are not used in kernel land.  That would explain 
> why it failed, but that just means I ran into a dead end.  Were those 
> definitions legacy code from 2.2 or is it something that never got 
> implemented, only defined?  I also noticed that the defines are gone in 2.6.  
> So how _does_ one go about changing the repeat rate on a keyboard input 
> device in 2.4?
> 

Just in case anyone cares, I spent some more time poking around in the event 
code and it looks like the way to do this seems to be exposed by the evdev 
module.  If you write to /dev/input/eventX an input_event that contains an 
event of type EV_REP with either REP_DELAY or REP_PERIOD as the code and a 
value in milliseconds, I think it is supposed to set up the software auto 
repeat for you.  But with the atkbd driver, you have to turn off hardware auto 
repeat for this to take effect.  

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

Reply via email to