Lines Matching refs:shield_dev

302 	struct shield_device *shield_dev = &ts->base;  in thunderstrike_send_hostcmd_request()  local
305 ret = hid_hw_raw_request(shield_dev->hdev, report->report_id, in thunderstrike_send_hostcmd_request()
311 hid_err(shield_dev->hdev, in thunderstrike_send_hostcmd_request()
401 struct shield_device *shield_dev; in thunderstrike_play_effect() local
407 shield_dev = hid_get_drvdata(hdev); in thunderstrike_play_effect()
408 ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_play_effect()
424 struct shield_device *shield_dev = hid_get_drvdata(hdev); in thunderstrike_led_get_brightness() local
427 ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_led_get_brightness()
436 struct shield_device *shield_dev = hid_get_drvdata(hdev); in thunderstrike_led_set_brightness() local
439 ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_led_set_brightness()
458 struct shield_device *shield_dev = power_supply_get_drvdata(psy); in thunderstrike_battery_get_property() local
463 ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_battery_get_property()
542 thunderstrike_parse_fw_version_payload(struct shield_device *shield_dev, in thunderstrike_parse_fw_version_payload() argument
545 shield_dev->fw_version = le16_to_cpu(fw_version); in thunderstrike_parse_fw_version_payload()
547 set_bit(SHIELD_FW_VERSION_INITIALIZED, &shield_dev->initialized_flags); in thunderstrike_parse_fw_version_payload()
549 hid_dbg(shield_dev->hdev, "Thunderstrike firmware version 0x%04X\n", in thunderstrike_parse_fw_version_payload()
550 shield_dev->fw_version); in thunderstrike_parse_fw_version_payload()
554 thunderstrike_parse_board_info_payload(struct shield_device *shield_dev, in thunderstrike_parse_board_info_payload() argument
560 shield_dev->board_info.revision = le16_to_cpu(board_info->revision); in thunderstrike_parse_board_info_payload()
564 shield_dev->board_info.serial_number[2 * i] = val & 0xFF; in thunderstrike_parse_board_info_payload()
565 shield_dev->board_info.serial_number[2 * i + 1] = val >> 8; in thunderstrike_parse_board_info_payload()
567 shield_dev->board_info.serial_number[14] = '\0'; in thunderstrike_parse_board_info_payload()
569 set_bit(SHIELD_BOARD_INFO_INITIALIZED, &shield_dev->initialized_flags); in thunderstrike_parse_board_info_payload()
571 shield_strrev(board_revision_str, 4, shield_dev->board_info.revision); in thunderstrike_parse_board_info_payload()
572 hid_dbg(shield_dev->hdev, in thunderstrike_parse_board_info_payload()
574 board_revision_str, shield_dev->board_info.revision, in thunderstrike_parse_board_info_payload()
575 shield_dev->board_info.serial_number); in thunderstrike_parse_board_info_payload()
579 thunderstrike_parse_haptics_payload(struct shield_device *shield_dev, in thunderstrike_parse_haptics_payload() argument
582 hid_dbg(shield_dev->hdev, in thunderstrike_parse_haptics_payload()
588 thunderstrike_parse_led_payload(struct shield_device *shield_dev, in thunderstrike_parse_led_payload() argument
591 struct thunderstrike *ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_parse_led_payload()
602 hid_dbg(shield_dev->hdev, "Thunderstrike led HOSTCMD response, 0x%02X\n", led_state); in thunderstrike_parse_led_payload()
606 struct shield_device *shield_dev, in thunderstrike_parse_battery_payload() argument
609 struct thunderstrike *ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_parse_battery_payload()
616 struct hid_device *hdev = shield_dev->hdev; in thunderstrike_parse_battery_payload()
637 set_bit(SHIELD_BATTERY_STATS_INITIALIZED, &shield_dev->initialized_flags); in thunderstrike_parse_battery_payload()
654 struct shield_device *shield_dev, in thunderstrike_parse_charger_payload() argument
657 struct thunderstrike *ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_parse_charger_payload()
659 struct hid_device *hdev = shield_dev->hdev; in thunderstrike_parse_charger_payload()
709 set_bit(SHIELD_CHARGER_STATE_INITIALIZED, &shield_dev->initialized_flags); in thunderstrike_parse_charger_payload()
716 static inline void thunderstrike_device_init_info(struct shield_device *shield_dev) in thunderstrike_device_init_info() argument
719 container_of(shield_dev, struct thunderstrike, base); in thunderstrike_device_init_info()
721 if (!test_bit(SHIELD_FW_VERSION_INITIALIZED, &shield_dev->initialized_flags)) in thunderstrike_device_init_info()
724 if (!test_bit(SHIELD_BOARD_INFO_INITIALIZED, &shield_dev->initialized_flags)) in thunderstrike_device_init_info()
727 if (!test_bit(SHIELD_BATTERY_STATS_INITIALIZED, &shield_dev->initialized_flags) || in thunderstrike_device_init_info()
728 !test_bit(SHIELD_CHARGER_STATE_INITIALIZED, &shield_dev->initialized_flags)) in thunderstrike_device_init_info()
732 static int thunderstrike_parse_report(struct shield_device *shield_dev, in thunderstrike_parse_report() argument
737 struct hid_device *hdev = shield_dev->hdev; in thunderstrike_parse_report()
754 shield_dev, hostcmd_resp_report->fw_version); in thunderstrike_parse_report()
757 thunderstrike_parse_led_payload(shield_dev, hostcmd_resp_report->led_state); in thunderstrike_parse_report()
760 thunderstrike_parse_battery_payload(shield_dev, in thunderstrike_parse_report()
765 shield_dev, &hostcmd_resp_report->board_info); in thunderstrike_parse_report()
769 shield_dev, &hostcmd_resp_report->motors); in thunderstrike_parse_report()
773 thunderstrike_device_init_info(shield_dev); in thunderstrike_parse_report()
777 thunderstrike_device_init_info(shield_dev); in thunderstrike_parse_report()
780 shield_dev, &hostcmd_resp_report->charger); in thunderstrike_parse_report()
811 static inline int thunderstrike_psy_create(struct shield_device *shield_dev) in thunderstrike_psy_create() argument
813 struct thunderstrike *ts = container_of(shield_dev, struct thunderstrike, base); in thunderstrike_psy_create()
814 struct power_supply_config psy_cfg = { .drv_data = shield_dev, }; in thunderstrike_psy_create()
815 struct hid_device *hdev = shield_dev->hdev; in thunderstrike_psy_create()
826 shield_dev->battery_dev.desc.properties = thunderstrike_battery_props; in thunderstrike_psy_create()
827 shield_dev->battery_dev.desc.num_properties = in thunderstrike_psy_create()
829 shield_dev->battery_dev.desc.get_property = thunderstrike_battery_get_property; in thunderstrike_psy_create()
830 shield_dev->battery_dev.desc.type = POWER_SUPPLY_TYPE_BATTERY; in thunderstrike_psy_create()
831 shield_dev->battery_dev.desc.name = in thunderstrike_psy_create()
835 shield_dev->battery_dev.psy = power_supply_register( in thunderstrike_psy_create()
836 &hdev->dev, &shield_dev->battery_dev.desc, &psy_cfg); in thunderstrike_psy_create()
837 if (IS_ERR(shield_dev->battery_dev.psy)) { in thunderstrike_psy_create()
839 return PTR_ERR(shield_dev->battery_dev.psy); in thunderstrike_psy_create()
842 ret = power_supply_powers(shield_dev->battery_dev.psy, &hdev->dev); in thunderstrike_psy_create()
851 power_supply_unregister(shield_dev->battery_dev.psy); in thunderstrike_psy_create()
857 struct shield_device *shield_dev; in thunderstrike_create() local
870 shield_dev = &ts->base; in thunderstrike_create()
871 shield_dev->hdev = hdev; in thunderstrike_create()
872 shield_dev->codename = "Thunderstrike"; in thunderstrike_create()
878 hid_set_drvdata(hdev, shield_dev); in thunderstrike_create()
884 ts->haptics_dev = shield_haptics_create(shield_dev, thunderstrike_play_effect); in thunderstrike_create()
891 ret = thunderstrike_psy_create(shield_dev); in thunderstrike_create()
906 return shield_dev; in thunderstrike_create()
909 power_supply_unregister(shield_dev->battery_dev.psy); in thunderstrike_create()
956 struct shield_device *shield_dev; in firmware_version_show() local
959 shield_dev = hid_get_drvdata(hdev); in firmware_version_show()
961 if (test_bit(SHIELD_FW_VERSION_INITIALIZED, &shield_dev->initialized_flags)) in firmware_version_show()
962 ret = sysfs_emit(buf, "0x%04X\n", shield_dev->fw_version); in firmware_version_show()
975 struct shield_device *shield_dev; in hardware_version_show() local
979 shield_dev = hid_get_drvdata(hdev); in hardware_version_show()
981 if (test_bit(SHIELD_BOARD_INFO_INITIALIZED, &shield_dev->initialized_flags)) { in hardware_version_show()
982 shield_strrev(board_revision_str, 4, shield_dev->board_info.revision); in hardware_version_show()
984 shield_dev->codename, board_revision_str, in hardware_version_show()
985 shield_dev->board_info.revision); in hardware_version_show()
998 struct shield_device *shield_dev; in serial_number_show() local
1001 shield_dev = hid_get_drvdata(hdev); in serial_number_show()
1003 if (test_bit(SHIELD_BOARD_INFO_INITIALIZED, &shield_dev->initialized_flags)) in serial_number_show()
1004 ret = sysfs_emit(buf, "%s\n", shield_dev->board_info.serial_number); in serial_number_show()
1031 struct shield_device *shield_dev = NULL; in shield_probe() local
1043 shield_dev = thunderstrike_create(hdev); in shield_probe()
1047 if (unlikely(!shield_dev)) { in shield_probe()
1051 if (IS_ERR(shield_dev)) { in shield_probe()
1053 return PTR_ERR(shield_dev); in shield_probe()
1056 ts = container_of(shield_dev, struct thunderstrike, base); in shield_probe()
1070 thunderstrike_device_init_info(shield_dev); in shield_probe()