Lines Matching defs:device

52  * device VGBI(MSHW0028) for dispatching the events.
69 char phys[32]; /* for input device */
74 static void surface_button_notify(struct acpi_device *device, u32 event)
76 struct surface_button *button = acpi_driver_data(device);
111 dev_warn_once(&device->dev, "Tablet mode is not supported\n");
114 dev_info_ratelimited(&device->dev,
122 pm_wakeup_dev_event(&device->dev, 0, button->suspended);
130 static int surface_button_suspend(struct device *dev)
132 struct acpi_device *device = to_acpi_device(dev);
133 struct surface_button *button = acpi_driver_data(device);
139 static int surface_button_resume(struct device *dev)
141 struct acpi_device *device = to_acpi_device(dev);
142 struct surface_button *button = acpi_driver_data(device);
150 * Surface Pro 4 and Surface Book 2 / Surface Pro 2017 use the same device
152 * device by checking for the _DSM method and OEM Platform Revision.
154 * Returns true if the driver should bind to this device, i.e. the device is
187 static int surface_button_add(struct acpi_device *device)
191 const char *hid = acpi_device_hid(device);
195 if (strncmp(acpi_device_bid(device), SURFACE_BUTTON_OBJ_NAME,
199 if (!surface_button_check_MSHW0040(device))
206 device->driver_data = button;
213 name = acpi_device_name(device);
220 input->dev.parent = &device->dev;
230 device_init_wakeup(&device->dev, true);
231 dev_info(&device->dev,
232 "%s [%s]\n", name, acpi_device_bid(device));
242 static void surface_button_remove(struct acpi_device *device)
244 struct surface_button *button = acpi_driver_data(device);