Lines Matching refs:ps_dev

777 static int ps_led_register(struct ps_device *ps_dev, struct led_classdev *led,
783 led->name = devm_kasprintf(&ps_dev->hdev->dev, GFP_KERNEL,
784 "%s:%s:%s", ps_dev->input_dev_name, led_info->color, led_info->name);
787 led->name = devm_kasprintf(&ps_dev->hdev->dev, GFP_KERNEL,
788 "%s:%s", ps_dev->input_dev_name, led_info->color);
801 ret = devm_led_classdev_register(&ps_dev->hdev->dev, led);
803 hid_err(ps_dev->hdev, "Failed to register LED %s: %d\n", led_info->name, ret);
811 static int ps_lightbar_register(struct ps_device *ps_dev, struct led_classdev_mc *lightbar_mc_dev,
814 struct hid_device *hdev = ps_dev->hdev;
833 ps_dev->input_dev_name);
919 struct ps_device *ps_dev = hid_get_drvdata(hdev);
921 return sysfs_emit(buf, "0x%08x\n", ps_dev->fw_version);
931 struct ps_device *ps_dev = hid_get_drvdata(hdev);
933 return sysfs_emit(buf, "0x%08x\n", ps_dev->hw_version);
1308 static int dualsense_parse_report(struct ps_device *ps_dev, struct hid_report *report,
1311 struct hid_device *hdev = ps_dev->hdev;
1312 struct dualsense *ds = container_of(ps_dev, struct dualsense, base);
1380 spin_lock_irqsave(&ps_dev->lock, flags);
1383 spin_unlock_irqrestore(&ps_dev->lock, flags);
1477 spin_lock_irqsave(&ps_dev->lock, flags);
1478 ps_dev->battery_capacity = battery_capacity;
1479 ps_dev->battery_status = battery_status;
1480 spin_unlock_irqrestore(&ps_dev->lock, flags);
1504 static void dualsense_remove(struct ps_device *ps_dev)
1506 struct dualsense *ds = container_of(ps_dev, struct dualsense, base);
1581 struct ps_device *ps_dev;
1608 ps_dev = &ds->base;
1609 ps_dev->hdev = hdev;
1610 spin_lock_init(&ps_dev->lock);
1611 ps_dev->battery_capacity = 100; /* initial value until parse_report. */
1612 ps_dev->battery_status = POWER_SUPPLY_STATUS_UNKNOWN;
1613 ps_dev->parse_report = dualsense_parse_report;
1614 ps_dev->remove = dualsense_remove;
1652 ret = ps_devices_list_add(ps_dev);
1668 ps_dev->input_dev_name = dev_name(&ds->gamepad->dev);
1683 ret = ps_device_register_battery(ps_dev);
1696 ret = ps_lightbar_register(ps_dev, &ds->lightbar, dualsense_lightbar_set_brightness);
1706 ret = ps_led_register(ps_dev, &ds->player_leds[i], led_info);
1711 ret = ps_device_set_player_id(ps_dev);
1730 ps_devices_list_remove(ps_dev);
2174 static int dualshock4_parse_report(struct ps_device *ps_dev, struct hid_report *report,
2177 struct hid_device *hdev = ps_dev->hdev;
2178 struct dualshock4 *ds4 = container_of(ps_dev, struct dualshock4, base);
2347 spin_lock_irqsave(&ps_dev->lock, flags);
2348 ps_dev->battery_capacity = battery_capacity;
2349 ps_dev->battery_status = battery_status;
2350 spin_unlock_irqrestore(&ps_dev->lock, flags);
2355 static int dualshock4_dongle_parse_report(struct ps_device *ps_dev, struct hid_report *report,
2358 struct dualshock4 *ds4 = container_of(ps_dev, struct dualshock4, base);
2373 hid_info(ps_dev->hdev, "DualShock 4 USB dongle: controller connected\n");
2377 spin_lock_irqsave(&ps_dev->lock, flags);
2379 spin_unlock_irqrestore(&ps_dev->lock, flags);
2389 hid_info(ps_dev->hdev, "DualShock 4 USB dongle: controller disconnected\n");
2391 spin_lock_irqsave(&ps_dev->lock, flags);
2393 spin_unlock_irqrestore(&ps_dev->lock, flags);
2406 return dualshock4_parse_report(ps_dev, report, data, size);
2430 static void dualshock4_remove(struct ps_device *ps_dev)
2432 struct dualshock4 *ds4 = container_of(ps_dev, struct dualshock4, base);
2441 if (ps_dev->hdev->product == USB_DEVICE_ID_SONY_PS4_CONTROLLER_DONGLE)
2489 struct ps_device *ps_dev;
2520 ps_dev = &ds4->base;
2521 ps_dev->hdev = hdev;
2522 spin_lock_init(&ps_dev->lock);
2523 ps_dev->battery_capacity = 100; /* initial value until parse_report. */
2524 ps_dev->battery_status = POWER_SUPPLY_STATUS_UNKNOWN;
2525 ps_dev->parse_report = dualshock4_parse_report;
2526 ps_dev->remove = dualshock4_remove;
2541 ps_dev->parse_report = dualshock4_dongle_parse_report;
2557 ret = ps_devices_list_add(ps_dev);
2574 ps_dev->input_dev_name = dev_name(&ds4->gamepad->dev);
2589 ret = ps_device_register_battery(ps_dev);
2596 ret = ps_led_register(ps_dev, &ds4->lightbar_leds[i], led_info);
2603 ret = ps_device_set_player_id(ps_dev);
2620 ps_devices_list_remove(ps_dev);