Lines Matching defs:data
29 static void xiaomi_mutex_destroy(void *data)
31 struct mutex *lock = data;
38 struct xiaomi_wmi *data;
44 data = devm_kzalloc(&wdev->dev, sizeof(struct xiaomi_wmi), GFP_KERNEL);
45 if (data == NULL)
47 dev_set_drvdata(&wdev->dev, data);
49 mutex_init(&data->key_lock);
50 ret = devm_add_action_or_reset(&wdev->dev, xiaomi_mutex_destroy, &data->key_lock);
54 data->input_dev = devm_input_allocate_device(&wdev->dev);
55 if (data->input_dev == NULL)
57 data->input_dev->name = "Xiaomi WMI keys";
58 data->input_dev->phys = "wmi/input0";
60 data->key_code = *((const unsigned int *)context);
61 set_bit(EV_KEY, data->input_dev->evbit);
62 set_bit(data->key_code, data->input_dev->keybit);
64 return input_register_device(data->input_dev);
69 struct xiaomi_wmi *data = dev_get_drvdata(&wdev->dev);
71 mutex_lock(&data->key_lock);
72 input_report_key(data->input_dev, data->key_code, 1);
73 input_sync(data->input_dev);
74 input_report_key(data->input_dev, data->key_code, 0);
75 input_sync(data->input_dev);
76 mutex_unlock(&data->key_lock);