Lines Matching full:fc
137 struct feature_control *fc; in hconf_set_feature_control() local
144 fc = &sc->feature_controls[ctrl_id]; in hconf_set_feature_control()
145 if (fc->rlen <= 1) in hconf_set_feature_control()
148 fbuf = malloc(fc->rlen, M_TEMP, M_WAITOK | M_ZERO); in hconf_set_feature_control()
155 bzero(fbuf + 1, fc->rlen - 1); in hconf_set_feature_control()
160 if (ofc->rid != fc->rid) in hconf_set_feature_control()
162 KASSERT(fc->rlen == ofc->rlen, in hconf_set_feature_control()
164 fc->rid, fc->rlen, ofc->rlen)); in hconf_set_feature_control()
169 fbuf[0] = fc->rid; in hconf_set_feature_control()
171 error = hid_set_report(sc->dev, fbuf, fc->rlen, in hconf_set_feature_control()
172 HID_FEATURE_REPORT, fc->rid); in hconf_set_feature_control()
174 fc->val = val; in hconf_set_feature_control()
185 struct feature_control *fc; in hconf_feature_control_handler() local
194 fc = &sc->feature_controls[ctrl_id]; in hconf_feature_control_handler()
195 value = fc->val; in hconf_feature_control_handler()
210 hconf_parse_feature(struct feature_control *fc, uint8_t tlc_index, in hconf_parse_feature() argument
216 hid_feature, tlc_index, 0, &fc->loc, &flags, &fc->rid, NULL)) in hconf_parse_feature()
222 fc->rlen = hid_report_size(d_ptr, d_len, hid_feature, fc->rid); in hconf_parse_feature()