Lines Matching refs:stadiaff

29 	struct stadiaff_device *stadiaff =  in stadiaff_work()  local
31 struct hid_field *rumble_field = stadiaff->report->field[0]; in stadiaff_work()
34 spin_lock_irqsave(&stadiaff->lock, flags); in stadiaff_work()
35 rumble_field->value[0] = stadiaff->strong_magnitude; in stadiaff_work()
36 rumble_field->value[1] = stadiaff->weak_magnitude; in stadiaff_work()
37 spin_unlock_irqrestore(&stadiaff->lock, flags); in stadiaff_work()
39 hid_hw_request(stadiaff->hid, stadiaff->report, HID_REQ_SET_REPORT); in stadiaff_work()
46 struct stadiaff_device *stadiaff = hid_get_drvdata(hid); in stadiaff_play() local
49 spin_lock_irqsave(&stadiaff->lock, flags); in stadiaff_play()
50 if (!stadiaff->removed) { in stadiaff_play()
51 stadiaff->strong_magnitude = effect->u.rumble.strong_magnitude; in stadiaff_play()
52 stadiaff->weak_magnitude = effect->u.rumble.weak_magnitude; in stadiaff_play()
53 schedule_work(&stadiaff->work); in stadiaff_play()
55 spin_unlock_irqrestore(&stadiaff->lock, flags); in stadiaff_play()
62 struct stadiaff_device *stadiaff; in stadiaff_init() local
80 stadiaff = devm_kzalloc(&hid->dev, sizeof(struct stadiaff_device), in stadiaff_init()
82 if (!stadiaff) in stadiaff_init()
85 hid_set_drvdata(hid, stadiaff); in stadiaff_init()
93 stadiaff->removed = false; in stadiaff_init()
94 stadiaff->hid = hid; in stadiaff_init()
95 stadiaff->report = report; in stadiaff_init()
96 INIT_WORK(&stadiaff->work, stadiaff_work); in stadiaff_init()
97 spin_lock_init(&stadiaff->lock); in stadiaff_init()
132 struct stadiaff_device *stadiaff = hid_get_drvdata(hid); in stadia_remove() local
135 spin_lock_irqsave(&stadiaff->lock, flags); in stadia_remove()
136 stadiaff->removed = true; in stadia_remove()
137 spin_unlock_irqrestore(&stadiaff->lock, flags); in stadia_remove()
139 cancel_work_sync(&stadiaff->work); in stadia_remove()