/drivers/input/joystick/iforce/ |
D | iforce-main.c | 68 struct iforce *iforce = input_get_drvdata(dev); in iforce_playback() local 69 struct iforce_core_effect *core_effect = &iforce->core_effects[effect_id]; in iforce_playback() 76 iforce_control_playback(iforce, effect_id, value); in iforce_playback() 82 struct iforce *iforce = input_get_drvdata(dev); in iforce_set_gain() local 86 iforce_send_packet(iforce, FF_CMD_GAIN, data); in iforce_set_gain() 91 struct iforce *iforce = input_get_drvdata(dev); in iforce_set_autocenter() local 96 iforce_send_packet(iforce, FF_CMD_AUTOCENTER, data); in iforce_set_autocenter() 100 iforce_send_packet(iforce, FF_CMD_AUTOCENTER, data); in iforce_set_autocenter() 109 struct iforce *iforce = input_get_drvdata(dev); in iforce_upload_effect() local 110 struct iforce_core_effect *core_effect = &iforce->core_effects[effect->id]; in iforce_upload_effect() [all …]
|
D | iforce-serio.c | 13 struct iforce iforce; member 24 static void iforce_serio_xmit(struct iforce *iforce) in iforce_serio_xmit() argument 26 struct iforce_serio *iforce_serio = container_of(iforce, in iforce_serio_xmit() 28 iforce); in iforce_serio_xmit() 33 if (test_and_set_bit(IFORCE_XMIT_RUNNING, iforce->xmit_flags)) { in iforce_serio_xmit() 34 set_bit(IFORCE_XMIT_AGAIN, iforce->xmit_flags); in iforce_serio_xmit() 38 spin_lock_irqsave(&iforce->xmit_lock, flags); in iforce_serio_xmit() 41 if (iforce->xmit.head == iforce->xmit.tail) { in iforce_serio_xmit() 42 iforce_clear_xmit_and_wake(iforce); in iforce_serio_xmit() 43 spin_unlock_irqrestore(&iforce->xmit_lock, flags); in iforce_serio_xmit() [all …]
|
D | iforce-usb.c | 13 struct iforce iforce; member 23 static void __iforce_usb_xmit(struct iforce *iforce) in __iforce_usb_xmit() argument 25 struct iforce_usb *iforce_usb = container_of(iforce, struct iforce_usb, in __iforce_usb_xmit() 26 iforce); in __iforce_usb_xmit() 30 spin_lock_irqsave(&iforce->xmit_lock, flags); in __iforce_usb_xmit() 32 if (iforce->xmit.head == iforce->xmit.tail) { in __iforce_usb_xmit() 33 iforce_clear_xmit_and_wake(iforce); in __iforce_usb_xmit() 34 spin_unlock_irqrestore(&iforce->xmit_lock, flags); in __iforce_usb_xmit() 38 ((char *)iforce_usb->out->transfer_buffer)[0] = iforce->xmit.buf[iforce->xmit.tail]; in __iforce_usb_xmit() 39 XMIT_INC(iforce->xmit.tail, 1); in __iforce_usb_xmit() [all …]
|
D | iforce-packets.c | 18 void iforce_dump_packet(struct iforce *iforce, char *msg, u16 cmd, unsigned char *data) in iforce_dump_packet() argument 20 dev_dbg(iforce->dev->dev.parent, "%s %s cmd = %04x, data = %*ph\n", in iforce_dump_packet() 27 int iforce_send_packet(struct iforce *iforce, u16 cmd, unsigned char* data) in iforce_send_packet() argument 39 spin_lock_irqsave(&iforce->xmit_lock, flags); in iforce_send_packet() 41 head = iforce->xmit.head; in iforce_send_packet() 42 tail = iforce->xmit.tail; in iforce_send_packet() 46 dev_warn(&iforce->dev->dev, in iforce_send_packet() 48 spin_unlock_irqrestore(&iforce->xmit_lock, flags); in iforce_send_packet() 53 XMIT_INC(iforce->xmit.head, n+2); in iforce_send_packet() 58 iforce->xmit.buf[head] = HI(cmd); in iforce_send_packet() [all …]
|
D | iforce-ff.c | 18 static int make_magnitude_modifier(struct iforce* iforce, in make_magnitude_modifier() argument 24 mutex_lock(&iforce->mem_mutex); in make_magnitude_modifier() 25 if (allocate_resource(&(iforce->device_memory), mod_chunk, 2, in make_magnitude_modifier() 26 iforce->device_memory.start, iforce->device_memory.end, 2L, in make_magnitude_modifier() 28 mutex_unlock(&iforce->mem_mutex); in make_magnitude_modifier() 31 mutex_unlock(&iforce->mem_mutex); in make_magnitude_modifier() 38 iforce_send_packet(iforce, FF_CMD_MAGNITUDE, data); in make_magnitude_modifier() 40 iforce_dump_packet(iforce, "magnitude", FF_CMD_MAGNITUDE, data); in make_magnitude_modifier() 48 static int make_period_modifier(struct iforce* iforce, in make_period_modifier() argument 57 mutex_lock(&iforce->mem_mutex); in make_period_modifier() [all …]
|
D | iforce.h | 75 struct iforce; 78 void (*xmit)(struct iforce *iforce); 79 int (*get_id)(struct iforce *iforce, u8 id, 81 int (*start_io)(struct iforce *iforce); 82 void (*stop_io)(struct iforce *iforce); 85 struct iforce { struct 115 static inline int iforce_get_id_packet(struct iforce *iforce, u8 id, in iforce_get_id_packet() argument 118 return iforce->xport_ops->get_id(iforce, id, in iforce_get_id_packet() 122 static inline void iforce_clear_xmit_and_wake(struct iforce *iforce) in iforce_clear_xmit_and_wake() argument 124 clear_bit(IFORCE_XMIT_RUNNING, iforce->xmit_flags); in iforce_clear_xmit_and_wake() [all …]
|
D | Makefile | 8 obj-$(CONFIG_JOYSTICK_IFORCE) += iforce.o 9 iforce-y := iforce-ff.o iforce-main.o iforce-packets.o 10 obj-$(CONFIG_JOYSTICK_IFORCE_232) += iforce-serio.o 11 obj-$(CONFIG_JOYSTICK_IFORCE_USB) += iforce-usb.o
|
D | Kconfig | 14 module will be called iforce.
|
/drivers/input/joystick/ |
D | Makefile | 22 obj-$(CONFIG_JOYSTICK_IFORCE) += iforce/
|
D | Kconfig | 147 source "drivers/input/joystick/iforce/Kconfig"
|