Hi Pavel,

I love your patch! Perhaps something to improve:

[auto build test WARNING on input/next]
[also build test WARNING on v4.20-rc7 next-20181218]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:    
https://github.com/0day-ci/linux/commits/Pavel-Machek/saving-old-mice-button-glitching-debouncing/20181216-025214
base:   https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
reproduce: make htmldocs

All warnings (new ones prefixed by >>):

   WARNING: convert(1) not found, for SVG to PDF conversion install ImageMagick 
(https://www.imagemagick.org)
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.ibss' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.connect' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.keys' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 'wext.ie' 
not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.ie_len' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.bssid' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.ssid' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.default_key' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.default_mgmt_key' not described in 'wireless_dev'
   include/net/cfg80211.h:4216: warning: Function parameter or member 
'wext.prev_bssid_valid' not described in 'wireless_dev'
   include/net/mac80211.h:2282: warning: Function parameter or member 
'radiotap_timestamp.units_pos' not described in 'ieee80211_hw'
   include/net/mac80211.h:2282: warning: Function parameter or member 
'radiotap_timestamp.accuracy' not described in 'ieee80211_hw'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.rates' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.rts_cts_rate_idx' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.use_rts' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.use_cts_prot' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.short_preamble' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.skip_table' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.jiffies' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.vif' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.hw_key' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.flags' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'control.enqueue_time' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 'ack' not 
described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'ack.cookie' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.rates' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.ack_signal' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.ampdu_ack_len' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.ampdu_len' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.antenna' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.tx_time' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.is_valid_ack_signal' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'status.status_driver_data' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'driver_rates' not described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 'pad' not 
described in 'ieee80211_tx_info'
   include/net/mac80211.h:955: warning: Function parameter or member 
'rate_driver_data' not described in 'ieee80211_tx_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'rx_stats_avg' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'rx_stats_avg.signal' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'rx_stats_avg.chain_signal' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.filtered' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.retry_failed' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.retry_count' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.lost_packets' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.last_tdls_pkt_time' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.msdu_retries' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.msdu_failed' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.last_ack' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.last_ack_signal' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'status_stats.ack_signal_filled' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'tx_stats.packets' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'tx_stats.bytes' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'tx_stats.last_rate' not described in 'sta_info'
   net/mac80211/sta_info.h:586: warning: Function parameter or member 
'tx_stats.msdu' not described in 'sta_info'
   kernel/sched/fair.c:3719: warning: Function parameter or member 'flags' not 
described in 'attach_entity_load_avg'
   include/linux/dma-buf.h:307: warning: Function parameter or member 
'cb_excl.cb' not described in 'dma_buf'
   include/linux/dma-buf.h:307: warning: Function parameter or member 
'cb_excl.poll' not described in 'dma_buf'
   include/linux/dma-buf.h:307: warning: Function parameter or member 
'cb_excl.active' not described in 'dma_buf'
   include/linux/dma-buf.h:307: warning: Function parameter or member 
'cb_shared.cb' not described in 'dma_buf'
   include/linux/dma-buf.h:307: warning: Function parameter or member 
'cb_shared.poll' not described in 'dma_buf'
   include/linux/dma-buf.h:307: warning: Function parameter or member 
'cb_shared.active' not described in 'dma_buf'
   include/linux/dma-fence-array.h:54: warning: Function parameter or member 
'work' not described in 'dma_fence_array'
   include/linux/gpio/driver.h:142: warning: Function parameter or member 
'request_key' not described in 'gpio_irq_chip'
   include/linux/iio/iio.h:270: warning: Function parameter or member 
'scan_type.sign' not described in 'iio_chan_spec'
   include/linux/iio/iio.h:270: warning: Function parameter or member 
'scan_type.realbits' not described in 'iio_chan_spec'
   include/linux/iio/iio.h:270: warning: Function parameter or member 
'scan_type.storagebits' not described in 'iio_chan_spec'
   include/linux/iio/iio.h:270: warning: Function parameter or member 
'scan_type.shift' not described in 'iio_chan_spec'
   include/linux/iio/iio.h:270: warning: Function parameter or member 
'scan_type.repeat' not described in 'iio_chan_spec'
   include/linux/iio/iio.h:270: warning: Function parameter or member 
'scan_type.endianness' not described in 'iio_chan_spec'
   include/linux/iio/hw-consumer.h:1: warning: no structured comments found
>> include/linux/input.h:192: warning: Function parameter or member 
>> 'debounce_key' not described in 'input_dev'
   include/linux/input/sparse-keymap.h:46: warning: Function parameter or 
member 'sw' not described in 'key_entry'
   include/linux/mtd/rawnand.h:752: warning: Function parameter or member 
'timings.sdr' not described in 'nand_data_interface'
   include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf' 
not described in 'nand_op_data_instr'
   include/linux/mtd/rawnand.h:817: warning: Function parameter or member 
'buf.in' not described in 'nand_op_data_instr'
   include/linux/mtd/rawnand.h:817: warning: Function parameter or member 
'buf.out' not described in 'nand_op_data_instr'
   include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx' 
not described in 'nand_op_instr'
   include/linux/mtd/rawnand.h:863: warning: Function parameter or member 
'ctx.cmd' not described in 'nand_op_instr'
   include/linux/mtd/rawnand.h:863: warning: Function parameter or member 
'ctx.addr' not described in 'nand_op_instr'
   include/linux/mtd/rawnand.h:863: warning: Function parameter or member 
'ctx.data' not described in 'nand_op_instr'
   include/linux/mtd/rawnand.h:863: warning: Function parameter or member 
'ctx.waitrdy' not described in 'nand_op_instr'
   include/linux/mtd/rawnand.h:1016: warning: Function parameter or member 
'ctx' not described in 'nand_op_parser_pattern_elem'
   include/linux/mtd/rawnand.h:1016: warning: Function parameter or member 
'ctx.addr' not described in 'nand_op_parser_pattern_elem'
   include/linux/mtd/rawnand.h:1016: warning: Function parameter or member 
'ctx.data' not described in 'nand_op_parser_pattern_elem'
   include/linux/mtd/rawnand.h:1319: warning: Function parameter or member 
'manufacturer.desc' not described in 'nand_chip'
   include/linux/mtd/rawnand.h:1319: warning: Function parameter or member 
'manufacturer.priv' not described in 'nand_chip'
   include/linux/regulator/driver.h:222: warning: Function parameter or member 
'resume_early' not described in 'regulator_ops'
   drivers/regulator/core.c:4306: warning: Excess function parameter 'state' 
description in 'regulator_suspend_late'
   arch/s390/include/asm/cio.h:245: warning: Function parameter or member 
'esw.esw0' not described in 'irb'
   arch/s390/include/asm/cio.h:245: warning: Function parameter or member 
'esw.esw1' not described in 'irb'
   arch/s390/include/asm/cio.h:245: warning: Function parameter or member 
'esw.esw2' not described in 'irb'
   arch/s390/include/asm/cio.h:245: warning: Function parameter or member 
'esw.esw3' not described in 'irb'
   arch/s390/include/asm/cio.h:245: warning: Function parameter or member 
'esw.eadm' not described in 'irb'
   drivers/usb/typec/mux.c:186: warning: Function parameter or member 'mux' not 
described in 'typec_mux_unregister'
   drivers/usb/typec/mux.c:186: warning: Excess function parameter 'sw' 
description in 'typec_mux_unregister'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_pin' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_unpin' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_res_obj' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_get_sg_table' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_import_sg_table' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_vmap' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_vunmap' not described in 'drm_driver'
   include/drm/drm_drv.h:610: warning: Function parameter or member 
'gem_prime_mmap' not described in 'drm_driver'
   drivers/gpu/drm/drm_prime.c:342: warning: Function parameter or member 
'attach' not described in 'drm_gem_unmap_dma_buf'
   drivers/gpu/drm/drm_prime.c:342: warning: Function parameter or member 'sgt' 
not described in 'drm_gem_unmap_dma_buf'
   drivers/gpu/drm/drm_prime.c:342: warning: Function parameter or member 'dir' 
not described in 'drm_gem_unmap_dma_buf'
   drivers/gpu/drm/drm_prime.c:438: warning: Function parameter or member 
'dma_buf' not described in 'drm_gem_dmabuf_kmap_atomic'
   drivers/gpu/drm/drm_prime.c:438: warning: Function parameter or member 
'page_num' not described in 'drm_gem_dmabuf_kmap_atomic'
   drivers/gpu/drm/drm_prime.c:450: warning: Function parameter or member 
'dma_buf' not described in 'drm_gem_dmabuf_kunmap_atomic'
   drivers/gpu/drm/drm_prime.c:450: warning: Function parameter or member 
'page_num' not described in 'drm_gem_dmabuf_kunmap_atomic'
   drivers/gpu/drm/drm_prime.c:450: warning: Function parameter or member 
'addr' not described in 'drm_gem_dmabuf_kunmap_atomic'
   drivers/gpu/drm/drm_prime.c:461: warning: Function parameter or member 
'dma_buf' not described in 'drm_gem_dmabuf_kmap'
   drivers/gpu/drm/drm_prime.c:461: warning: Function parameter or member 
'page_num' not described in 'drm_gem_dmabuf_kmap'
   drivers/gpu/drm/drm_prime.c:473: warning: Function parameter or member 
'dma_buf' not described in 'drm_gem_dmabuf_kunmap'
   drivers/gpu/drm/drm_prime.c:473: warning: Function parameter or member 
'page_num' not described in 'drm_gem_dmabuf_kunmap'
   drivers/gpu/drm/drm_prime.c:473: warning: Function parameter or member 
'addr' not described in 'drm_gem_dmabuf_kunmap'
   include/media/v4l2-dev.h:42: warning: Enum value 'VFL_TYPE_MAX' not 
described in enum 'vfl_devnode_type'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'dev_scratch' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'ip_defrag_offset' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'skb_mstamp' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'__cloned_offset' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'head_frag' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member '__unused' 
not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'__pkt_type_offset' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'pfmemalloc' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'encapsulation' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'encap_hdr_csum' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'csum_valid' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'csum_complete_sw' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'csum_level' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'inner_protocol_type' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'remcsum_offload' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'offload_fwd_mark' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'offload_mr_fwd_mark' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'sender_cpu' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'reserved_tailroom' not described in 'sk_buff'
   include/linux/skbuff.h:850: warning: Function parameter or member 
'inner_ipproto' not described in 'sk_buff'
   include/net/sock.h:234: warning: Function parameter or member 'skc_addrpair' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_portpair' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_ipv6only' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 
'skc_net_refcnt' not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_v6_daddr' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 
'skc_v6_rcv_saddr' not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_cookie' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_listener' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_tw_dr' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 'skc_rcv_wnd' 
not described in 'sock_common'
   include/net/sock.h:234: warning: Function parameter or member 
'skc_tw_rcv_nxt' not described in 'sock_common'
   include/net/sock.h:488: warning: Function parameter or member 
'sk_backlog.rmem_alloc' not described in 'sock'
   include/net/sock.h:488: warning: Function parameter or member 
'sk_backlog.len' not described in 'sock'
   include/net/sock.h:488: warning: Function parameter or member 
'sk_backlog.head' not described in 'sock'
   include/net/sock.h:488: warning: Function parameter or member 
'sk_backlog.tail' not described in 'sock'
   include/net/sock.h:488: warning: Function parameter or member 'sk_wq_raw' 
not described in 'sock'
   include/net/sock.h:488: warning: Function parameter or member 
'tcp_rtx_queue' not described in 'sock'
   include/net/sock.h:488: warning: Function parameter or member 
'sk_route_forced_caps' not described in 'sock'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'adj_list.upper' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'adj_list.lower' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'gso_partial_features' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'switchdev_ops' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'l3mdev_ops' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'xfrmdev_ops' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'name_assign_type' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'ieee802154_ptr' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'mpls_ptr' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'xdp_prog' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'gro_flush_timeout' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'nf_hooks_ingress' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'____cacheline_aligned_in_smp' not described in 'net_device'
   include/linux/netdevice.h:1955: warning: Function parameter or member 
'qdisc_hash' not described in 'net_device'
   include/linux/phylink.h:56: warning: Function parameter or member 
'__ETHTOOL_DECLARE_LINK_MODE_MASK(advertising' not described in 
'phylink_link_state'
   include/linux/phylink.h:56: warning: Function parameter or member 
'__ETHTOOL_DECLARE_LINK_MODE_MASK(lp_advertising' not described in 
'phylink_link_state'

vim +192 include/linux/input.h

4369c64c7 Henrik Rydberg        2012-09-15   38  
4369c64c7 Henrik Rydberg        2012-09-15   39  /**
8006479c9 Dmitry Torokhov       2007-08-30   40   * struct input_dev - 
represents an input device
8006479c9 Dmitry Torokhov       2007-08-30   41   * @name: name of the device
8006479c9 Dmitry Torokhov       2007-08-30   42   * @phys: physical path to the 
device in the system hierarchy
8006479c9 Dmitry Torokhov       2007-08-30   43   * @uniq: unique 
identification code for the device (if device has it)
8006479c9 Dmitry Torokhov       2007-08-30   44   * @id: id of the device 
(struct input_id)
85b772003 Henrik Rydberg        2010-12-18   45   * @propbit: bitmap of device 
properties and quirks
8006479c9 Dmitry Torokhov       2007-08-30   46   * @evbit: bitmap of types of 
events supported by the device (EV_KEY,
8006479c9 Dmitry Torokhov       2007-08-30   47   *     EV_REL, etc.)
8006479c9 Dmitry Torokhov       2007-08-30   48   * @keybit: bitmap of 
keys/buttons this device has
8006479c9 Dmitry Torokhov       2007-08-30   49   * @relbit: bitmap of relative 
axes for the device
8006479c9 Dmitry Torokhov       2007-08-30   50   * @absbit: bitmap of absolute 
axes for the device
8006479c9 Dmitry Torokhov       2007-08-30   51   * @mscbit: bitmap of 
miscellaneous events supported by the device
8006479c9 Dmitry Torokhov       2007-08-30   52   * @ledbit: bitmap of leds 
present on the device
8006479c9 Dmitry Torokhov       2007-08-30   53   * @sndbit: bitmap of sound 
effects supported by the device
8006479c9 Dmitry Torokhov       2007-08-30   54   * @ffbit: bitmap of force 
feedback effects supported by the device
8006479c9 Dmitry Torokhov       2007-08-30   55   * @swbit: bitmap of switches 
present on the device
63a6404d8 Henrik Rydberg        2010-06-10   56   * @hint_events_per_packet: 
average number of events generated by the
63a6404d8 Henrik Rydberg        2010-06-10   57   *     device in a packet 
(between EV_SYN/SYN_REPORT events). Used by
63a6404d8 Henrik Rydberg        2010-06-10   58   *     event handlers to 
estimate size of the buffer needed to hold
63a6404d8 Henrik Rydberg        2010-06-10   59   *     events.
8006479c9 Dmitry Torokhov       2007-08-30   60   * @keycodemax: size of 
keycode table
8006479c9 Dmitry Torokhov       2007-08-30   61   * @keycodesize: size of 
elements in keycode table
8006479c9 Dmitry Torokhov       2007-08-30   62   * @keycode: map of scancodes 
to keycodes for this device
8613e4c28 Mauro Carvalho Chehab 2010-09-09   63   * @getkeycode: optional 
legacy method to retrieve current keymap.
8006479c9 Dmitry Torokhov       2007-08-30   64   * @setkeycode: optional 
method to alter current keymap, used to implement
66d2a5952 Dmitry Torokhov       2009-12-01   65   *     sparse keymaps. If not 
supplied default mechanism will be used.
66d2a5952 Dmitry Torokhov       2009-12-01   66   *     The method is being 
called while holding event_lock and thus must
66d2a5952 Dmitry Torokhov       2009-12-01   67   *     not sleep
8006479c9 Dmitry Torokhov       2007-08-30   68   * @ff: force feedback 
structure associated with the device if device
8006479c9 Dmitry Torokhov       2007-08-30   69   *     supports force feedback 
effects
8006479c9 Dmitry Torokhov       2007-08-30   70   * @repeat_key: stores key 
code of the last key pressed; used to implement
8006479c9 Dmitry Torokhov       2007-08-30   71   *     software autorepeat
8006479c9 Dmitry Torokhov       2007-08-30   72   * @timer: timer for software 
autorepeat
8006479c9 Dmitry Torokhov       2007-08-30   73   * @rep: current values for 
autorepeat parameters (delay, rate)
8d18fba28 Henrik Rydberg        2012-09-15   74   * @mt: pointer to multitouch 
state
86b17f76f Dmitry Torokhov       2010-11-29   75   * @absinfo: array of &struct 
input_absinfo elements holding information
d31b2865a Daniel Mack           2010-08-02   76   *     about absolute axes 
(current value, min, max, flat, fuzz,
d31b2865a Daniel Mack           2010-08-02   77   *     resolution)
8006479c9 Dmitry Torokhov       2007-08-30   78   * @key: reflects current 
state of device's keys/buttons
8006479c9 Dmitry Torokhov       2007-08-30   79   * @led: reflects current 
state of device's LEDs
8006479c9 Dmitry Torokhov       2007-08-30   80   * @snd: reflects current 
state of sound effects
8006479c9 Dmitry Torokhov       2007-08-30   81   * @sw: reflects current state 
of device's switches
8006479c9 Dmitry Torokhov       2007-08-30   82   * @open: this method is 
called when the very first user calls
8006479c9 Dmitry Torokhov       2007-08-30   83   *     input_open_device(). 
The driver must prepare the device
8006479c9 Dmitry Torokhov       2007-08-30   84   *     to start generating 
events (start polling thread,
8006479c9 Dmitry Torokhov       2007-08-30   85   *     request an IRQ, submit 
URB, etc.)
8006479c9 Dmitry Torokhov       2007-08-30   86   * @close: this method is 
called when the very last user calls
8006479c9 Dmitry Torokhov       2007-08-30   87   *     input_close_device().
8006479c9 Dmitry Torokhov       2007-08-30   88   * @flush: purges the device. 
Most commonly used to get rid of force
8006479c9 Dmitry Torokhov       2007-08-30   89   *     feedback effects loaded 
into the device when disconnecting
8006479c9 Dmitry Torokhov       2007-08-30   90   *     from it
8006479c9 Dmitry Torokhov       2007-08-30   91   * @event: event handler for 
events sent _to_ the device, like EV_LED
8006479c9 Dmitry Torokhov       2007-08-30   92   *     or EV_SND. The device 
is expected to carry out the requested
8006479c9 Dmitry Torokhov       2007-08-30   93   *     action (turn on a LED, 
play sound, etc.) The call is protected
8006479c9 Dmitry Torokhov       2007-08-30   94   *     by @event_lock and must 
not sleep
8006479c9 Dmitry Torokhov       2007-08-30   95   * @grab: input handle that 
currently has the device grabbed (via
8006479c9 Dmitry Torokhov       2007-08-30   96   *     EVIOCGRAB ioctl). When 
a handle grabs a device it becomes sole
8006479c9 Dmitry Torokhov       2007-08-30   97   *     recipient for all input 
events coming from the device
83510e5f5 Masanari Iida         2016-07-13   98   * @event_lock: this spinlock 
is taken when input core receives
8006479c9 Dmitry Torokhov       2007-08-30   99   *     and processes a new 
event for the device (in input_event()).
8006479c9 Dmitry Torokhov       2007-08-30  100   *     Code that accesses 
and/or modifies parameters of a device
8006479c9 Dmitry Torokhov       2007-08-30  101   *     (such as keymap or 
absmin, absmax, absfuzz, etc.) after device
8006479c9 Dmitry Torokhov       2007-08-30  102   *     has been registered 
with input core must take this lock.
8006479c9 Dmitry Torokhov       2007-08-30  103   * @mutex: serializes calls to 
open(), close() and flush() methods
8006479c9 Dmitry Torokhov       2007-08-30  104   * @users: stores number of 
users (input handlers) that opened this
8006479c9 Dmitry Torokhov       2007-08-30  105   *     device. It is used by 
input_open_device() and input_close_device()
8006479c9 Dmitry Torokhov       2007-08-30  106   *     to make sure that 
dev->open() is only called when the first
8006479c9 Dmitry Torokhov       2007-08-30  107   *     user opens device and 
dev->close() is called when the very
8006479c9 Dmitry Torokhov       2007-08-30  108   *     last user closes the 
device
8006479c9 Dmitry Torokhov       2007-08-30  109   * @going_away: marks devices 
that are in a middle of unregistering and
8006479c9 Dmitry Torokhov       2007-08-30  110   *     causes 
input_open_device*() fail with -ENODEV.
8006479c9 Dmitry Torokhov       2007-08-30  111   * @dev: driver model's view 
of this device
8006479c9 Dmitry Torokhov       2007-08-30  112   * @h_list: list of input 
handles associated with the device. When
8006479c9 Dmitry Torokhov       2007-08-30  113   *     accessing the list 
dev->mutex must be held
8006479c9 Dmitry Torokhov       2007-08-30  114   * @node: used to place the 
device onto input_dev_list
800963fd5 Henrik Rydberg        2012-11-10  115   * @num_vals: number of values 
queued in the current frame
800963fd5 Henrik Rydberg        2012-11-10  116   * @max_vals: maximum number 
of values queued in a frame
800963fd5 Henrik Rydberg        2012-11-10  117   * @vals: array of values 
queued in the current frame
2be975c6d Dmitry Torokhov       2012-11-03  118   * @devres_managed: indicates 
that devices is managed with devres framework
2be975c6d Dmitry Torokhov       2012-11-03  119   *     and needs not be 
explicitly unregistered or freed.
8006479c9 Dmitry Torokhov       2007-08-30  120   */
^1da177e4 Linus Torvalds        2005-04-16  121  struct input_dev {
5b6271bda Dmitry Torokhov       2005-06-30  122         const char *name;
5b6271bda Dmitry Torokhov       2005-06-30  123         const char *phys;
5b6271bda Dmitry Torokhov       2005-06-30  124         const char *uniq;
^1da177e4 Linus Torvalds        2005-04-16  125         struct input_id id;
^1da177e4 Linus Torvalds        2005-04-16  126  
85b772003 Henrik Rydberg        2010-12-18  127         unsigned long 
propbit[BITS_TO_LONGS(INPUT_PROP_CNT)];
85b772003 Henrik Rydberg        2010-12-18  128  
7b19ada2e Jiri Slaby            2007-10-18  129         unsigned long 
evbit[BITS_TO_LONGS(EV_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  130         unsigned long 
keybit[BITS_TO_LONGS(KEY_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  131         unsigned long 
relbit[BITS_TO_LONGS(REL_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  132         unsigned long 
absbit[BITS_TO_LONGS(ABS_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  133         unsigned long 
mscbit[BITS_TO_LONGS(MSC_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  134         unsigned long 
ledbit[BITS_TO_LONGS(LED_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  135         unsigned long 
sndbit[BITS_TO_LONGS(SND_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  136         unsigned long 
ffbit[BITS_TO_LONGS(FF_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  137         unsigned long 
swbit[BITS_TO_LONGS(SW_CNT)];
^1da177e4 Linus Torvalds        2005-04-16  138  
63a6404d8 Henrik Rydberg        2010-06-10  139         unsigned int 
hint_events_per_packet;
63a6404d8 Henrik Rydberg        2010-06-10  140  
^1da177e4 Linus Torvalds        2005-04-16  141         unsigned int keycodemax;
^1da177e4 Linus Torvalds        2005-04-16  142         unsigned int 
keycodesize;
^1da177e4 Linus Torvalds        2005-04-16  143         void *keycode;
8613e4c28 Mauro Carvalho Chehab 2010-09-09  144  
58b939959 Dmitry Torokhov       2010-03-08  145         int 
(*setkeycode)(struct input_dev *dev,
8613e4c28 Mauro Carvalho Chehab 2010-09-09  146                           const 
struct input_keymap_entry *ke,
8613e4c28 Mauro Carvalho Chehab 2010-09-09  147                           
unsigned int *old_keycode);
aebd636bd Dmitry Torokhov       2011-01-31  148         int 
(*getkeycode)(struct input_dev *dev,
8613e4c28 Mauro Carvalho Chehab 2010-09-09  149                           
struct input_keymap_entry *ke);
^1da177e4 Linus Torvalds        2005-04-16  150  
509ca1a93 Anssi Hannula         2006-07-19  151         struct ff_device *ff;
509ca1a93 Anssi Hannula         2006-07-19  152  
507fbe1d7 Pavel Machek          2018-12-15  153         int debounce_key;
^1da177e4 Linus Torvalds        2005-04-16  154         unsigned int repeat_key;
^1da177e4 Linus Torvalds        2005-04-16  155         struct timer_list timer;
^1da177e4 Linus Torvalds        2005-04-16  156  
d31b2865a Daniel Mack           2010-08-02  157         int rep[REP_CNT];
^1da177e4 Linus Torvalds        2005-04-16  158  
8d18fba28 Henrik Rydberg        2012-09-15  159         struct input_mt *mt;
40d007e7d Henrik Rydberg        2010-07-15  160  
d31b2865a Daniel Mack           2010-08-02  161         struct input_absinfo 
*absinfo;
d31b2865a Daniel Mack           2010-08-02  162  
7b19ada2e Jiri Slaby            2007-10-18  163         unsigned long 
key[BITS_TO_LONGS(KEY_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  164         unsigned long 
led[BITS_TO_LONGS(LED_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  165         unsigned long 
snd[BITS_TO_LONGS(SND_CNT)];
7b19ada2e Jiri Slaby            2007-10-18  166         unsigned long 
sw[BITS_TO_LONGS(SW_CNT)];
^1da177e4 Linus Torvalds        2005-04-16  167  
^1da177e4 Linus Torvalds        2005-04-16  168         int (*open)(struct 
input_dev *dev);
^1da177e4 Linus Torvalds        2005-04-16  169         void (*close)(struct 
input_dev *dev);
^1da177e4 Linus Torvalds        2005-04-16  170         int (*flush)(struct 
input_dev *dev, struct file *file);
^1da177e4 Linus Torvalds        2005-04-16  171         int (*event)(struct 
input_dev *dev, unsigned int type, unsigned int code, int value);
^1da177e4 Linus Torvalds        2005-04-16  172  
2be852792 Arnd Bergmann         2010-03-04  173         struct input_handle 
__rcu *grab;
0fbf87caf Dmitry Torokhov       2005-05-29  174  
8006479c9 Dmitry Torokhov       2007-08-30  175         spinlock_t event_lock;
8006479c9 Dmitry Torokhov       2007-08-30  176         struct mutex mutex;
8006479c9 Dmitry Torokhov       2007-08-30  177  
0fbf87caf Dmitry Torokhov       2005-05-29  178         unsigned int users;
ffd0db971 Dmitry Torokhov       2009-09-16  179         bool going_away;
0fbf87caf Dmitry Torokhov       2005-05-29  180  
9657d75c5 Dmitry Torokhov       2007-06-14  181         struct device dev;
^1da177e4 Linus Torvalds        2005-04-16  182  
^1da177e4 Linus Torvalds        2005-04-16  183         struct list_head        
h_list;
^1da177e4 Linus Torvalds        2005-04-16  184         struct list_head        
node;
4369c64c7 Henrik Rydberg        2012-09-15  185  
4369c64c7 Henrik Rydberg        2012-09-15  186         unsigned int num_vals;
4369c64c7 Henrik Rydberg        2012-09-15  187         unsigned int max_vals;
4369c64c7 Henrik Rydberg        2012-09-15  188         struct input_value 
*vals;
2be975c6d Dmitry Torokhov       2012-11-03  189  
2be975c6d Dmitry Torokhov       2012-11-03  190         bool devres_managed;
^1da177e4 Linus Torvalds        2005-04-16  191  };
9657d75c5 Dmitry Torokhov       2007-06-14 @192  #define to_input_dev(d) 
container_of(d, struct input_dev, dev)
^1da177e4 Linus Torvalds        2005-04-16  193  

:::::: The code at line 192 was first introduced by commit
:::::: 9657d75c5f0f7d0a9cb507521d3ad1436aea28c9 Input: convert from class 
devices to standard devices

:::::: TO: Dmitry Torokhov <d...@insightbb.com>
:::::: CC: Dmitry Torokhov <d...@insightbb.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip

Reply via email to