1<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 9. Input Subsystem</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux Device Drivers"><link rel="up" href="index.html" title="Linux Device Drivers"><link rel="prev" href="ch08s05.html" title="Frame Buffer Fonts"><link rel="next" href="API-struct-input-value.html" title="struct input_value"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 9. Input Subsystem</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08s05.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="API-struct-input-value.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="input_subsystem"></a>Chapter 9. Input Subsystem</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="input_subsystem.html#id-1.11.2">Input core</a></span></dt><dt><span class="sect1"><a href="ch09s02.html">Multitouch Library</a></span></dt><dt><span class="sect1"><a href="ch09s03.html">Polled input devices</a></span></dt><dt><span class="sect1"><a href="ch09s04.html">Matrix keyboars/keypads</a></span></dt><dt><span class="sect1"><a href="ch09s05.html">Sparse keymap support</a></span></dt></dl></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id-1.11.2"></a>Input core</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="refentrytitle"><a href="API-struct-input-value.html"><span class="phrase">struct input_value</span></a></span><span class="refpurpose"> — 
2  input value representation
3 </span></dt><dt><span class="refentrytitle"><a href="API-struct-input-dev.html"><span class="phrase">struct input_dev</span></a></span><span class="refpurpose"> — 
4     represents an input device
5 </span></dt><dt><span class="refentrytitle"><a href="API-struct-input-handler.html"><span class="phrase">struct input_handler</span></a></span><span class="refpurpose"> — 
6     implements one of interfaces for input devices
7 </span></dt><dt><span class="refentrytitle"><a href="API-struct-input-handle.html"><span class="phrase">struct input_handle</span></a></span><span class="refpurpose"> — 
8     links input device with an input handler
9 </span></dt><dt><span class="refentrytitle"><a href="API-input-set-events-per-packet.html"><span class="phrase">input_set_events_per_packet</span></a></span><span class="refpurpose"> — 
10     tell handlers about the driver event rate
11 </span></dt><dt><span class="refentrytitle"><a href="API-struct-ff-device.html"><span class="phrase">struct ff_device</span></a></span><span class="refpurpose"> — 
12     force-feedback part of an input device
13 </span></dt><dt><span class="refentrytitle"><a href="API-input-event.html"><span class="phrase">input_event</span></a></span><span class="refpurpose"> — 
14  report new input event
15 </span></dt><dt><span class="refentrytitle"><a href="API-input-inject-event.html"><span class="phrase">input_inject_event</span></a></span><span class="refpurpose"> — 
16     send input event from input handler
17 </span></dt><dt><span class="refentrytitle"><a href="API-input-alloc-absinfo.html"><span class="phrase">input_alloc_absinfo</span></a></span><span class="refpurpose"> — 
18     allocates array of input_absinfo structs
19 </span></dt><dt><span class="refentrytitle"><a href="API-input-grab-device.html"><span class="phrase">input_grab_device</span></a></span><span class="refpurpose"> — 
20     grabs device for exclusive use
21 </span></dt><dt><span class="refentrytitle"><a href="API-input-release-device.html"><span class="phrase">input_release_device</span></a></span><span class="refpurpose"> — 
22     release previously grabbed device
23 </span></dt><dt><span class="refentrytitle"><a href="API-input-open-device.html"><span class="phrase">input_open_device</span></a></span><span class="refpurpose"> — 
24     open input device
25 </span></dt><dt><span class="refentrytitle"><a href="API-input-close-device.html"><span class="phrase">input_close_device</span></a></span><span class="refpurpose"> — 
26     close input device
27 </span></dt><dt><span class="refentrytitle"><a href="API-input-scancode-to-scalar.html"><span class="phrase">input_scancode_to_scalar</span></a></span><span class="refpurpose"> — 
28     converts scancode in <span class="structname">struct input_keymap_entry</span>
29 </span></dt><dt><span class="refentrytitle"><a href="API-input-get-keycode.html"><span class="phrase">input_get_keycode</span></a></span><span class="refpurpose"> — 
30     retrieve keycode currently mapped to a given scancode
31 </span></dt><dt><span class="refentrytitle"><a href="API-input-set-keycode.html"><span class="phrase">input_set_keycode</span></a></span><span class="refpurpose"> — 
32     attribute a keycode to a given scancode
33 </span></dt><dt><span class="refentrytitle"><a href="API-input-reset-device.html"><span class="phrase">input_reset_device</span></a></span><span class="refpurpose"> — 
34     reset/restore the state of input device
35 </span></dt><dt><span class="refentrytitle"><a href="API-input-allocate-device.html"><span class="phrase">input_allocate_device</span></a></span><span class="refpurpose"> — 
36     allocate memory for new input device
37 </span></dt><dt><span class="refentrytitle"><a href="API-devm-input-allocate-device.html"><span class="phrase">devm_input_allocate_device</span></a></span><span class="refpurpose"> — 
38     allocate managed input device
39 </span></dt><dt><span class="refentrytitle"><a href="API-input-free-device.html"><span class="phrase">input_free_device</span></a></span><span class="refpurpose"> — 
40     free memory occupied by input_dev structure
41 </span></dt><dt><span class="refentrytitle"><a href="API-input-set-capability.html"><span class="phrase">input_set_capability</span></a></span><span class="refpurpose"> — 
42     mark device as capable of a certain event
43 </span></dt><dt><span class="refentrytitle"><a href="API-input-enable-softrepeat.html"><span class="phrase">input_enable_softrepeat</span></a></span><span class="refpurpose"> — 
44     enable software autorepeat
45 </span></dt><dt><span class="refentrytitle"><a href="API-input-register-device.html"><span class="phrase">input_register_device</span></a></span><span class="refpurpose"> — 
46     register device with input core
47 </span></dt><dt><span class="refentrytitle"><a href="API-input-unregister-device.html"><span class="phrase">input_unregister_device</span></a></span><span class="refpurpose"> — 
48     unregister previously registered device
49 </span></dt><dt><span class="refentrytitle"><a href="API-input-register-handler.html"><span class="phrase">input_register_handler</span></a></span><span class="refpurpose"> — 
50     register a new input handler
51 </span></dt><dt><span class="refentrytitle"><a href="API-input-unregister-handler.html"><span class="phrase">input_unregister_handler</span></a></span><span class="refpurpose"> — 
52     unregisters an input handler
53 </span></dt><dt><span class="refentrytitle"><a href="API-input-handler-for-each-handle.html"><span class="phrase">input_handler_for_each_handle</span></a></span><span class="refpurpose"> — 
54     handle iterator
55 </span></dt><dt><span class="refentrytitle"><a href="API-input-register-handle.html"><span class="phrase">input_register_handle</span></a></span><span class="refpurpose"> — 
56     register a new input handle
57 </span></dt><dt><span class="refentrytitle"><a href="API-input-unregister-handle.html"><span class="phrase">input_unregister_handle</span></a></span><span class="refpurpose"> — 
58     unregister an input handle
59 </span></dt><dt><span class="refentrytitle"><a href="API-input-get-new-minor.html"><span class="phrase">input_get_new_minor</span></a></span><span class="refpurpose"> — 
60     allocates a new input minor number
61 </span></dt><dt><span class="refentrytitle"><a href="API-input-free-minor.html"><span class="phrase">input_free_minor</span></a></span><span class="refpurpose"> — 
62     release previously allocated minor
63 </span></dt><dt><span class="refentrytitle"><a href="API-input-ff-upload.html"><span class="phrase">input_ff_upload</span></a></span><span class="refpurpose"> — 
64  upload effect into force-feedback device
65 </span></dt><dt><span class="refentrytitle"><a href="API-input-ff-erase.html"><span class="phrase">input_ff_erase</span></a></span><span class="refpurpose"> — 
66     erase a force-feedback effect from device
67 </span></dt><dt><span class="refentrytitle"><a href="API-input-ff-event.html"><span class="phrase">input_ff_event</span></a></span><span class="refpurpose"> — 
68     generic handler for force-feedback events
69 </span></dt><dt><span class="refentrytitle"><a href="API-input-ff-create.html"><span class="phrase">input_ff_create</span></a></span><span class="refpurpose"> — 
70     create force-feedback device
71 </span></dt><dt><span class="refentrytitle"><a href="API-input-ff-destroy.html"><span class="phrase">input_ff_destroy</span></a></span><span class="refpurpose"> — 
72     frees force feedback portion of input device
73 </span></dt><dt><span class="refentrytitle"><a href="API-input-ff-create-memless.html"><span class="phrase">input_ff_create_memless</span></a></span><span class="refpurpose"> — 
74  create memoryless force-feedback device
75 </span></dt></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08s05.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="API-struct-input-value.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Frame Buffer Fonts </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">struct input_value</span></td></tr></table></div></body></html>
76