Lines Matching refs:joy

33 	struct adc_joystick *joy = private;  in adc_joystick_handle()  local
39 bytes = joy->chans[0].channel->scan_type.storagebits >> 3; in adc_joystick_handle()
41 for (i = 0; i < joy->num_chans; ++i) { in adc_joystick_handle()
42 idx = joy->chans[i].channel->scan_index; in adc_joystick_handle()
43 endianness = joy->chans[i].channel->scan_type.endianness; in adc_joystick_handle()
44 msb = joy->chans[i].channel->scan_type.realbits - 1; in adc_joystick_handle()
45 sign = tolower(joy->chans[i].channel->scan_type.sign) == 's'; in adc_joystick_handle()
69 val >>= joy->chans[i].channel->scan_type.shift; in adc_joystick_handle()
74 input_report_abs(joy->input, joy->axes[i].code, val); in adc_joystick_handle()
77 input_sync(joy->input); in adc_joystick_handle()
84 struct adc_joystick *joy = input_get_drvdata(dev); in adc_joystick_open() local
88 ret = iio_channel_start_all_cb(joy->buffer); in adc_joystick_open()
97 struct adc_joystick *joy = input_get_drvdata(dev); in adc_joystick_close() local
99 iio_channel_stop_all_cb(joy->buffer); in adc_joystick_close()
107 static int adc_joystick_set_axes(struct device *dev, struct adc_joystick *joy) in adc_joystick_set_axes() argument
119 if (num_axes != joy->num_chans) { in adc_joystick_set_axes()
121 num_axes, joy->num_chans); in adc_joystick_set_axes()
159 input_set_abs_params(joy->input, axes[i].code, in adc_joystick_set_axes()
162 input_set_capability(joy->input, EV_ABS, axes[i].code); in adc_joystick_set_axes()
165 joy->axes = axes; in adc_joystick_set_axes()
177 struct adc_joystick *joy; in adc_joystick_probe() local
183 joy = devm_kzalloc(dev, sizeof(*joy), GFP_KERNEL); in adc_joystick_probe()
184 if (!joy) in adc_joystick_probe()
187 joy->chans = devm_iio_channel_get_all(dev); in adc_joystick_probe()
188 if (IS_ERR(joy->chans)) { in adc_joystick_probe()
189 error = PTR_ERR(joy->chans); in adc_joystick_probe()
196 for (i = 0; joy->chans[i].indio_dev; i++) { in adc_joystick_probe()
197 bits = joy->chans[i].channel->scan_type.storagebits; in adc_joystick_probe()
202 if (bits != joy->chans[0].channel->scan_type.storagebits) { in adc_joystick_probe()
207 joy->num_chans = i; in adc_joystick_probe()
215 joy->input = input; in adc_joystick_probe()
221 error = adc_joystick_set_axes(dev, joy); in adc_joystick_probe()
225 input_set_drvdata(input, joy); in adc_joystick_probe()
232 joy->buffer = iio_channel_get_all_cb(dev, adc_joystick_handle, joy); in adc_joystick_probe()
233 if (IS_ERR(joy->buffer)) { in adc_joystick_probe()
235 return PTR_ERR(joy->buffer); in adc_joystick_probe()
238 error = devm_add_action_or_reset(dev, adc_joystick_cleanup, joy->buffer); in adc_joystick_probe()