Home | History | Annotate | Download | only in hid

Lines Matching refs:ms

77 hidms_setup(device_t self, struct hidms *ms, int id, void *desc, int size)
91 id, hid_input, &ms->hidms_loc_x, &flags)) {
98 ms->flags |= HIDMS_ABS;
109 id, hid_input, &ms->hidms_loc_y, &flags)) {
116 ms->flags |= HIDMS_ABS;
132 &ms->hidms_loc_z,
135 zloc = &ms->hidms_loc_z;
141 ms->hidms_loc_z.size = 0; /* Bad Z coord, ignore it */
143 ms->flags |= HIDMS_Z;
145 ms->flags ^= HIDMS_REVZ;
147 zloc = &ms->hidms_loc_w;
180 if (ms->flags & HIDMS_Z)
181 ms->flags |= HIDMS_W;
183 ms->flags |= HIDMS_Z;
190 id, hid_input, &ms->hidms_loc_btn[i - 1], 0))
194 ms->flags |= HIDMS_DIGITIZER;
198 &ms->hidms_loc_btn[i - 1], 0)) {
201 ms->flags |= digbut[j].flag;
208 ms->nbuttons = i - 1;
213 hidms_attach(device_t self, struct hidms *ms,
221 ms->nbuttons, ms->nbuttons == 1 ? "" : "s",
222 ms->flags & HIDMS_W ? ", W" : "",
223 ms->flags & HIDMS_Z ? " and Z dir" : "",
224 ms->flags & HIDMS_W ? "s" : "",
225 ms->flags & HIDMS_DIGITIZER ? " digitizer" : "",
226 ms->flags & HIDMS_TIP_SWITCH ? ", tip" : "",
227 ms->flags & HIDMS_SEC_TIP_SWITCH ? ", sec tip" : "",
228 ms->flags & HIDMS_BARREL_SWITCH ? ", barrel" : "",
229 ms->flags & HIDMS_ERASER ? ", eraser" : "");
232 DPRINTF(("hidms_attach: ms=%p\n", ms));
234 ms->hidms_loc_x.pos, ms->hidms_loc_x.size));
236 ms->hidms_loc_y.pos, ms->hidms_loc_y.size));
237 if (ms->flags & HIDMS_Z)
239 ms->hidms_loc_z.pos, ms->hidms_loc_z.size));
240 if (ms->flags & HIDMS_W)
242 ms->hidms_loc_w.pos, ms->hidms_loc_w.size));
243 for (i = 1; i <= ms->nbuttons; i++) {
245 i, ms->hidms_loc_btn[i-1].pos,ms->hidms_loc_btn[i-1].size));
252 ms->hidms_wsmousedev = config_found(self, &a, wsmousedevprint,
260 hidms_intr(struct hidms *ms, void *ibuf, u_int len)
270 dx = hid_get_data(ibuf, &ms->hidms_loc_x);
271 if (ms->flags & HIDMS_ABS) {
273 dy = hid_get_data(ibuf, &ms->hidms_loc_y);
274 tpcalib_trans(&ms->sc_tpcalib, dx, dy, &dx, &dy);
276 dy = -hid_get_data(ibuf, &ms->hidms_loc_y);
277 dz = hid_get_data(ibuf, &ms->hidms_loc_z);
278 dw = hid_get_data(ibuf, &ms->hidms_loc_w);
280 if (ms->flags & HIDMS_REVZ)
282 for (i = 0; i < ms->nbuttons; i++)
283 if (hid_get_data(ibuf, &ms->hidms_loc_btn[i]))
287 buttons != ms->hidms_buttons) {
290 ms->hidms_buttons = buttons;
291 if (ms->hidms_wsmousedev != NULL) {
293 wsmouse_input(ms->hidms_wsmousedev, buttons, dx, dy, dz,