brintos

brintos / linux-shallow public Read only

0
0
Text · 2.5 KiB · 52084b1 Raw
77 lines · c
1#ifndef _LINUX_VIRTIO_INPUT_H2#define _LINUX_VIRTIO_INPUT_H3/* This header is BSD licensed so anyone can use the definitions to implement4 * compatible drivers/servers.5 *6 * Redistribution and use in source and binary forms, with or without7 * modification, are permitted provided that the following conditions8 * are met:9 * 1. Redistributions of source code must retain the above copyright10 *    notice, this list of conditions and the following disclaimer.11 * 2. Redistributions in binary form must reproduce the above copyright12 *    notice, this list of conditions and the following disclaimer in the13 *    documentation and/or other materials provided with the distribution.14 * 3. Neither the name of IBM nor the names of its contributors15 *    may be used to endorse or promote products derived from this software16 *    without specific prior written permission.17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS18 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT19 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS20 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL IBM OR21 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,22 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT23 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF24 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,26 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT27 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF28 * SUCH DAMAGE. */29 30#include <linux/types.h>31 32enum virtio_input_config_select {33	VIRTIO_INPUT_CFG_UNSET      = 0x00,34	VIRTIO_INPUT_CFG_ID_NAME    = 0x01,35	VIRTIO_INPUT_CFG_ID_SERIAL  = 0x02,36	VIRTIO_INPUT_CFG_ID_DEVIDS  = 0x03,37	VIRTIO_INPUT_CFG_PROP_BITS  = 0x10,38	VIRTIO_INPUT_CFG_EV_BITS    = 0x11,39	VIRTIO_INPUT_CFG_ABS_INFO   = 0x12,40};41 42struct virtio_input_absinfo {43	__le32 min;44	__le32 max;45	__le32 fuzz;46	__le32 flat;47	__le32 res;48};49 50struct virtio_input_devids {51	__le16 bustype;52	__le16 vendor;53	__le16 product;54	__le16 version;55};56 57struct virtio_input_config {58	__u8    select;59	__u8    subsel;60	__u8    size;61	__u8    reserved[5];62	union {63		char string[128];64		__u8 bitmap[128];65		struct virtio_input_absinfo abs;66		struct virtio_input_devids ids;67	} u;68};69 70struct virtio_input_event {71	__le16 type;72	__le16 code;73	__le32 value;74};75 76#endif /* _LINUX_VIRTIO_INPUT_H */77