Lines Matching full:button

3  * power/home/volume button support for
16 #include <acpi/button.h>
43 ACPI_MODULE_NAME("surface pro 3 button");
46 MODULE_DESCRIPTION("Surface Pro3 Button Driver");
50 * Power button, Home button, Volume buttons support is supposed to
78 struct surface_button *button = acpi_driver_data(device); in surface_button_notify() local
84 /* Power button press,release handle */ in surface_button_notify()
91 /* Home button press,release handle */ in surface_button_notify()
98 /* Volume up button press,release handle */ in surface_button_notify()
105 /* Volume down button press,release handle */ in surface_button_notify()
120 input = button->input; in surface_button_notify()
124 pm_wakeup_dev_event(&device->dev, 0, button->suspended); in surface_button_notify()
125 if (button->suspended) in surface_button_notify()
135 struct surface_button *button = acpi_driver_data(device); in surface_button_suspend() local
137 button->suspended = true; in surface_button_suspend()
144 struct surface_button *button = acpi_driver_data(device); in surface_button_resume() local
146 button->suspended = false; in surface_button_resume()
191 struct surface_button *button; in surface_button_add() local
204 button = kzalloc(sizeof(struct surface_button), GFP_KERNEL); in surface_button_add()
205 if (!button) in surface_button_add()
208 device->driver_data = button; in surface_button_add()
209 button->input = input = input_allocate_device(); in surface_button_add()
217 snprintf(button->phys, sizeof(button->phys), "%s/buttons", hid); in surface_button_add()
220 input->phys = button->phys; in surface_button_add()
240 kfree(button); in surface_button_add()
246 struct surface_button *button = acpi_driver_data(device); in surface_button_remove() local
248 input_unregister_device(button->input); in surface_button_remove()
249 kfree(button); in surface_button_remove()