📄 example42.c
字号:
/** @file example4.c * * \brief second example of input subsystem driver * * See Linux Journal Feb. 2003 * * Requires * insmod input * * This module generate LED "Num Lock" events * which are passed to the handlers. To see them we need an * handler ... */#include <linux/input.h> /* input_dev */#include <linux/module.h>/* #include <linux/modversions.h> */#include <linux/init.h>/* MODULE_LICENSE( "GPL" ); */struct input_dev example4_dev;void example4_timeout( unsigned long unused /* UNUSED */ ){ static int x = 0; x ++; if ( x == 4 ) { x = 0; } /* printk( KERN_ALERT "Example4 event value %d handle %p open %d\n", x, example4_dev.handle, example4_dev.handle->open ); */ input_event( &example4_dev, EV_LED, LED_NUML, x ); /* input_sync( &example4_dev ); */ mod_timer( &example4_dev.timer, jiffies + 10*HZ );}static int __init example4_init( void ){ /* extra safe initialization */ memset( &example4_dev, 0, sizeof(struct input_dev) );#if 0 init_input_dev( &example4_dev );#endif /* set up descriptive labels */ example4_dev.name = "Example 4 device";#if 0 example4_dev.phys = "A/Fake/Path"; example4_dev.id.bustype = BUS_HOST; example4_dev.id.vendor = 0x0001; example4_dev.id.product = 0x0004; // our fourth product exampleple4v.id.version = 0x0101; // version 1.1#else example4_dev.idbus = BUS_ISA; example4_dev.idvendor = 0x0001; example4_dev.idproduct = 0x0004; // our fourth product example4_dev.idversion = 0x0101; // version 1.1#endif set_bit( EV_LED, example4_dev.evbit ); set_bit( LED_NUML, example4_dev.ledbit ); set_bit( LED_CAPSL, example4_dev.ledbit ); set_bit( LED_SCROLLL, example4_dev.ledbit ); input_register_device( &example4_dev ); init_timer( &example4_dev.timer ); example4_dev.timer.function = example4_timeout; example4_dev.timer.expires = jiffies + HZ; add_timer( &example4_dev.timer ); return 0;}static void __exit example4_exit( void ){ del_timer_sync( &example4_dev.timer ); input_unregister_device( &example4_dev );}module_init( example4_init );module_exit( example4_exit );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -