Lines Matching refs:finfo
636 struct hiddev_field_info finfo; in hiddev_ioctl() local
783 if (copy_from_user(&finfo, user_arg, sizeof(finfo))) { in hiddev_ioctl()
788 rinfo.report_type = finfo.report_type; in hiddev_ioctl()
789 rinfo.report_id = finfo.report_id; in hiddev_ioctl()
795 if (finfo.field_index >= report->maxfield) in hiddev_ioctl()
797 finfo.field_index = array_index_nospec(finfo.field_index, in hiddev_ioctl()
800 field = report->field[finfo.field_index]; in hiddev_ioctl()
801 memset(&finfo, 0, sizeof(finfo)); in hiddev_ioctl()
802 finfo.report_type = rinfo.report_type; in hiddev_ioctl()
803 finfo.report_id = rinfo.report_id; in hiddev_ioctl()
804 finfo.field_index = field->report_count - 1; in hiddev_ioctl()
805 finfo.maxusage = field->maxusage; in hiddev_ioctl()
806 finfo.flags = field->flags; in hiddev_ioctl()
807 finfo.physical = field->physical; in hiddev_ioctl()
808 finfo.logical = field->logical; in hiddev_ioctl()
809 finfo.application = field->application; in hiddev_ioctl()
810 finfo.logical_minimum = field->logical_minimum; in hiddev_ioctl()
811 finfo.logical_maximum = field->logical_maximum; in hiddev_ioctl()
812 finfo.physical_minimum = field->physical_minimum; in hiddev_ioctl()
813 finfo.physical_maximum = field->physical_maximum; in hiddev_ioctl()
814 finfo.unit_exponent = field->unit_exponent; in hiddev_ioctl()
815 finfo.unit = field->unit; in hiddev_ioctl()
817 r = copy_to_user(user_arg, &finfo, sizeof(finfo)) ? in hiddev_ioctl()