usb: add input routing support for tablet and keyboard
[qemu-kvm.git] / linux-user / syscall_types.h
blob9d0c92d0548a9ce73d0a6b0c5bc124bd762c2f0d
1 STRUCT_SPECIAL(termios)
3 STRUCT(winsize,
4 TYPE_SHORT, TYPE_SHORT, TYPE_SHORT, TYPE_SHORT)
6 STRUCT(serial_multiport_struct,
7 TYPE_INT, TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_CHAR, TYPE_CHAR,
8 TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT,
9 MK_ARRAY(TYPE_INT, 32))
11 STRUCT(serial_icounter_struct,
12 TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT, MK_ARRAY(TYPE_INT, 16))
14 STRUCT(sockaddr,
15 TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 14))
17 STRUCT(rtentry,
18 TYPE_ULONG, MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr),
19 TYPE_SHORT, TYPE_SHORT, TYPE_ULONG, TYPE_PTRVOID, TYPE_SHORT, TYPE_PTRVOID,
20 TYPE_ULONG, TYPE_ULONG, TYPE_SHORT)
22 STRUCT(ifmap,
23 TYPE_ULONG, TYPE_ULONG, TYPE_SHORT, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR,
24 /* Spare 3 bytes */
25 TYPE_CHAR, TYPE_CHAR, TYPE_CHAR)
27 /* The *_ifreq_list arrays deal with the fact that struct ifreq has unions */
29 STRUCT(sockaddr_ifreq,
30 MK_ARRAY(TYPE_CHAR, IFNAMSIZ), MK_STRUCT(STRUCT_sockaddr))
32 STRUCT(short_ifreq,
33 MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_SHORT)
35 STRUCT(int_ifreq,
36 MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_INT)
38 STRUCT(ifmap_ifreq,
39 MK_ARRAY(TYPE_CHAR, IFNAMSIZ), MK_STRUCT(STRUCT_ifmap))
41 STRUCT(char_ifreq,
42 MK_ARRAY(TYPE_CHAR, IFNAMSIZ),
43 MK_ARRAY(TYPE_CHAR, IFNAMSIZ))
45 STRUCT(ptr_ifreq,
46 MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_PTRVOID)
48 STRUCT(ifconf,
49 TYPE_INT, TYPE_PTRVOID)
51 STRUCT(arpreq,
52 MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), TYPE_INT, MK_STRUCT(STRUCT_sockaddr),
53 MK_ARRAY(TYPE_CHAR, 16))
55 STRUCT(arpreq_old,
56 MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), TYPE_INT, MK_STRUCT(STRUCT_sockaddr))
58 STRUCT(cdrom_read_audio,
59 TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_PTRVOID,
60 TYPE_NULL)
62 STRUCT(hd_geometry,
63 TYPE_CHAR, TYPE_CHAR, TYPE_SHORT, TYPE_ULONG)
65 STRUCT(dirent,
66 TYPE_LONG, TYPE_LONG, TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 256))
68 STRUCT(kbentry,
69 TYPE_CHAR, TYPE_CHAR, TYPE_SHORT)
71 STRUCT(kbsentry,
72 TYPE_CHAR, MK_ARRAY(TYPE_CHAR, 512))
74 STRUCT(audio_buf_info,
75 TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT)
77 STRUCT(count_info,
78 TYPE_INT, TYPE_INT, TYPE_INT)
80 STRUCT(buffmem_desc,
81 TYPE_PTRVOID, TYPE_INT)
83 STRUCT(mixer_info,
84 MK_ARRAY(TYPE_CHAR, 16), MK_ARRAY(TYPE_CHAR, 32), TYPE_INT, MK_ARRAY(TYPE_INT, 10))
86 /* loop device ioctls */
87 STRUCT(loop_info,
88 TYPE_INT, /* lo_number */
89 TYPE_OLDDEVT, /* lo_device */
90 TYPE_ULONG, /* lo_inode */
91 TYPE_OLDDEVT, /* lo_rdevice */
92 TYPE_INT, /* lo_offset */
93 TYPE_INT, /* lo_encrypt_type */
94 TYPE_INT, /* lo_encrypt_key_size */
95 TYPE_INT, /* lo_flags */
96 MK_ARRAY(TYPE_CHAR, 64), /* lo_name */
97 MK_ARRAY(TYPE_CHAR, 32), /* lo_encrypt_key */
98 MK_ARRAY(TYPE_ULONG, 2), /* lo_init */
99 MK_ARRAY(TYPE_CHAR, 4)) /* reserved */
101 STRUCT(loop_info64,
102 TYPE_ULONGLONG, /* lo_device */
103 TYPE_ULONGLONG, /* lo_inode */
104 TYPE_ULONGLONG, /* lo_rdevice */
105 TYPE_ULONGLONG, /* lo_offset */
106 TYPE_ULONG, /* lo_number */
107 TYPE_ULONG, /* lo_encrypt_type */
108 TYPE_ULONG, /* lo_encrypt_key_size */
109 TYPE_ULONG, /* lo_flags */
110 MK_ARRAY(TYPE_CHAR, 64), /* lo_name */
111 MK_ARRAY(TYPE_CHAR, 64), /* lo_crypt_name */
112 MK_ARRAY(TYPE_CHAR, 32), /* lo_encrypt_key */
113 MK_ARRAY(TYPE_ULONGLONG, 2)) /* lo_init */
115 /* mag tape ioctls */
116 STRUCT(mtop, TYPE_SHORT, TYPE_INT)
117 STRUCT(mtget, TYPE_LONG, TYPE_LONG, TYPE_LONG, TYPE_LONG, TYPE_LONG,
118 TYPE_INT, TYPE_INT)
119 STRUCT(mtpos, TYPE_LONG)
121 STRUCT(fb_fix_screeninfo,
122 MK_ARRAY(TYPE_CHAR, 16), /* id */
123 TYPE_ULONG, /* smem_start */
124 TYPE_INT, /* smem_len */
125 TYPE_INT, /* type */
126 TYPE_INT, /* type_aux */
127 TYPE_INT, /* visual */
128 TYPE_SHORT, /* xpanstep */
129 TYPE_SHORT, /* ypanstep */
130 TYPE_SHORT, /* ywrapstep */
131 TYPE_INT, /* line_length */
132 TYPE_ULONG, /* mmio_start */
133 TYPE_INT, /* mmio_len */
134 TYPE_INT, /* accel */
135 MK_ARRAY(TYPE_CHAR, 3)) /* reserved */
137 STRUCT(fb_var_screeninfo,
138 TYPE_INT, /* xres */
139 TYPE_INT, /* yres */
140 TYPE_INT, /* xres_virtual */
141 TYPE_INT, /* yres_virtual */
142 TYPE_INT, /* xoffset */
143 TYPE_INT, /* yoffset */
144 TYPE_INT, /* bits_per_pixel */
145 TYPE_INT, /* grayscale */
146 MK_ARRAY(TYPE_INT, 3), /* red */
147 MK_ARRAY(TYPE_INT, 3), /* green */
148 MK_ARRAY(TYPE_INT, 3), /* blue */
149 MK_ARRAY(TYPE_INT, 3), /* transp */
150 TYPE_INT, /* nonstd */
151 TYPE_INT, /* activate */
152 TYPE_INT, /* height */
153 TYPE_INT, /* width */
154 TYPE_INT, /* accel_flags */
155 TYPE_INT, /* pixclock */
156 TYPE_INT, /* left_margin */
157 TYPE_INT, /* right_margin */
158 TYPE_INT, /* upper_margin */
159 TYPE_INT, /* lower_margin */
160 TYPE_INT, /* hsync_len */
161 TYPE_INT, /* vsync_len */
162 TYPE_INT, /* sync */
163 TYPE_INT, /* vmode */
164 TYPE_INT, /* rotate */
165 MK_ARRAY(TYPE_INT, 5)) /* reserved */
167 STRUCT(fb_cmap,
168 TYPE_INT, /* start */
169 TYPE_INT, /* len */
170 TYPE_PTRVOID, /* red */
171 TYPE_PTRVOID, /* green */
172 TYPE_PTRVOID, /* blue */
173 TYPE_PTRVOID) /* transp */
175 STRUCT(fb_con2fbmap,
176 TYPE_INT, /* console */
177 TYPE_INT) /* framebuffer */
180 STRUCT(vt_stat,
181 TYPE_SHORT, /* v_active */
182 TYPE_SHORT, /* v_signal */
183 TYPE_SHORT) /* v_state */
185 STRUCT(vt_mode,
186 TYPE_CHAR, /* mode */
187 TYPE_CHAR, /* waitv */
188 TYPE_SHORT, /* relsig */
189 TYPE_SHORT, /* acqsig */
190 TYPE_SHORT) /* frsig */
192 STRUCT(dm_ioctl,
193 MK_ARRAY(TYPE_INT, 3), /* version */
194 TYPE_INT, /* data_size */
195 TYPE_INT, /* data_start */
196 TYPE_INT, /* target_count*/
197 TYPE_INT, /* open_count */
198 TYPE_INT, /* flags */
199 TYPE_INT, /* event_nr */
200 TYPE_INT, /* padding */
201 TYPE_ULONGLONG, /* dev */
202 MK_ARRAY(TYPE_CHAR, 128), /* name */
203 MK_ARRAY(TYPE_CHAR, 129), /* uuid */
204 MK_ARRAY(TYPE_CHAR, 7)) /* data */
206 STRUCT(dm_target_spec,
207 TYPE_ULONGLONG, /* sector_start */
208 TYPE_ULONGLONG, /* length */
209 TYPE_INT, /* status */
210 TYPE_INT, /* next */
211 MK_ARRAY(TYPE_CHAR, 16)) /* target_type */
213 STRUCT(dm_target_deps,
214 TYPE_INT, /* count */
215 TYPE_INT) /* padding */
217 STRUCT(dm_name_list,
218 TYPE_ULONGLONG, /* dev */
219 TYPE_INT) /* next */
221 STRUCT(dm_target_versions,
222 TYPE_INT, /* next */
223 MK_ARRAY(TYPE_INT, 3)) /* version*/
225 STRUCT(dm_target_msg,
226 TYPE_ULONGLONG) /* sector */
228 STRUCT(fiemap_extent,
229 TYPE_ULONGLONG, /* fe_logical */
230 TYPE_ULONGLONG, /* fe_physical */
231 TYPE_ULONGLONG, /* fe_length */
232 MK_ARRAY(TYPE_ULONGLONG, 2), /* fe_reserved64[2] */
233 TYPE_INT, /* fe_flags */
234 MK_ARRAY(TYPE_INT, 3)) /* fe_reserved[3] */
236 STRUCT(fiemap,
237 TYPE_ULONGLONG, /* fm_start */
238 TYPE_ULONGLONG, /* fm_length */
239 TYPE_INT, /* fm_flags */
240 TYPE_INT, /* fm_mapped_extents */
241 TYPE_INT, /* fm_extent_count */
242 TYPE_INT) /* fm_reserved */
244 STRUCT(blkpg_partition,
245 TYPE_LONGLONG, /* start */
246 TYPE_LONGLONG, /* length */
247 TYPE_INT, /* pno */
248 MK_ARRAY(TYPE_CHAR, BLKPG_DEVNAMELTH), /* devname */
249 MK_ARRAY(TYPE_CHAR, BLKPG_VOLNAMELTH)) /* volname */
251 STRUCT(blkpg_ioctl_arg,
252 TYPE_INT, /* op */
253 TYPE_INT, /* flags */
254 TYPE_INT, /* datalen */
255 MK_PTR(MK_STRUCT(STRUCT_blkpg_partition))) /* data */