Lines Matching refs:closure
578 typedef void detailed_cb(struct detailed_timing *timing, void *closure);
581 cea_for_each_detailed_block(u8 *ext, detailed_cb *cb, void *closure) in cea_for_each_detailed_block() argument
589 cb((struct detailed_timing *)(det_base + 18 * i), closure); in cea_for_each_detailed_block()
593 vtb_for_each_detailed_block(u8 *ext, detailed_cb *cb, void *closure) in vtb_for_each_detailed_block() argument
602 cb((struct detailed_timing *)(det_base + 18 * i), closure); in vtb_for_each_detailed_block()
606 drm_for_each_detailed_block(u8 *raw_edid, detailed_cb *cb, void *closure) in drm_for_each_detailed_block() argument
615 cb(&(edid->detailed_timings[i]), closure); in drm_for_each_detailed_block()
621 cea_for_each_detailed_block(ext, cb, closure); in drm_for_each_detailed_block()
624 vtb_for_each_detailed_block(ext, cb, closure); in drm_for_each_detailed_block()
1189 struct detailed_mode_closure *closure = c; in do_inferred_modes() local
1196 closure->modes += drm_dmt_modes_for_range(closure->connector, in do_inferred_modes()
1197 closure->edid, in do_inferred_modes()
1200 if (!version_greater(closure->edid, 1, 1)) in do_inferred_modes()
1206 closure->modes += drm_gtf_modes_for_range(closure->connector, in do_inferred_modes()
1207 closure->edid, in do_inferred_modes()
1211 if (!version_greater(closure->edid, 1, 3)) in do_inferred_modes()
1214 closure->modes += drm_cvt_modes_for_range(closure->connector, in do_inferred_modes()
1215 closure->edid, in do_inferred_modes()
1227 struct detailed_mode_closure closure = { in add_inferred_modes() local
1233 &closure); in add_inferred_modes()
1235 return closure.modes; in add_inferred_modes()
1270 struct detailed_mode_closure *closure = c; in do_established_modes() local
1274 closure->modes += drm_est3_modes(closure->connector, timing); in do_established_modes()
1292 struct detailed_mode_closure closure = { in add_established_modes() local
1309 do_established_modes, &closure); in add_established_modes()
1311 return modes + closure.modes; in add_established_modes()
1317 struct detailed_mode_closure *closure = c; in do_standard_modes() local
1319 struct drm_connector *connector = closure->connector; in do_standard_modes()
1320 struct edid *edid = closure->edid; in do_standard_modes()
1333 closure->modes++; in do_standard_modes()
1350 struct detailed_mode_closure closure = { in add_standard_modes() local
1368 &closure); in add_standard_modes()
1372 return modes + closure.modes; in add_standard_modes()
1427 struct detailed_mode_closure *closure = c; in do_cvt_mode() local
1431 closure->modes += drm_cvt_modes(closure->connector, timing); in do_cvt_mode()
1437 struct detailed_mode_closure closure = { in add_cvt_modes() local
1442 drm_for_each_detailed_block((u8 *)edid, do_cvt_mode, &closure); in add_cvt_modes()
1446 return closure.modes; in add_cvt_modes()
1452 struct detailed_mode_closure *closure = c; in do_detailed_mode() local
1456 newmode = drm_mode_detailed(closure->connector->dev, in do_detailed_mode()
1457 closure->edid, timing, in do_detailed_mode()
1458 closure->quirks); in do_detailed_mode()
1462 if (closure->preferred) in do_detailed_mode()
1465 drm_mode_probed_add(closure->connector, newmode); in do_detailed_mode()
1466 closure->modes++; in do_detailed_mode()
1467 closure->preferred = 0; in do_detailed_mode()
1481 struct detailed_mode_closure closure = { in add_detailed_modes() local
1489 if (closure.preferred && !version_greater(edid, 1, 3)) in add_detailed_modes()
1490 closure.preferred = in add_detailed_modes()
1493 drm_for_each_detailed_block((u8 *)edid, do_detailed_mode, &closure); in add_detailed_modes()
1495 return closure.modes; in add_detailed_modes()