Lines Matching refs:drm_edid
105 const struct drm_edid *drm_edid; member
1603 struct drm_edid { struct
1651 static int __drm_edid_block_count(const struct drm_edid *drm_edid) in __drm_edid_block_count() argument
1656 num_blocks = edid_block_count(drm_edid->edid); in __drm_edid_block_count()
1659 if (drm_edid->size >= edid_size_by_blocks(2)) { in __drm_edid_block_count()
1666 eeodb = edid_hfeeodb_block_count(drm_edid->edid); in __drm_edid_block_count()
1675 static int drm_edid_block_count(const struct drm_edid *drm_edid) in drm_edid_block_count() argument
1678 return min(__drm_edid_block_count(drm_edid), in drm_edid_block_count()
1679 (int)drm_edid->size / EDID_LENGTH); in drm_edid_block_count()
1683 static int drm_edid_extension_block_count(const struct drm_edid *drm_edid) in drm_edid_extension_block_count() argument
1685 return drm_edid_block_count(drm_edid) - 1; in drm_edid_extension_block_count()
1688 static const void *drm_edid_block_data(const struct drm_edid *drm_edid, int index) in drm_edid_block_data() argument
1690 return edid_block_data(drm_edid->edid, index); in drm_edid_block_data()
1693 static const void *drm_edid_extension_block_data(const struct drm_edid *drm_edid, in drm_edid_extension_block_data() argument
1696 return edid_extension_block_data(drm_edid->edid, index); in drm_edid_extension_block_data()
1703 static const struct drm_edid *drm_edid_legacy_init(struct drm_edid *drm_edid, in drm_edid_legacy_init() argument
1709 memset(drm_edid, 0, sizeof(*drm_edid)); in drm_edid_legacy_init()
1711 drm_edid->edid = edid; in drm_edid_legacy_init()
1712 drm_edid->size = edid_size(edid); in drm_edid_legacy_init()
1714 return drm_edid; in drm_edid_legacy_init()
1730 const struct drm_edid *drm_edid; member
1736 static void drm_edid_iter_begin(const struct drm_edid *drm_edid, in drm_edid_iter_begin() argument
1741 iter->drm_edid = drm_edid; in drm_edid_iter_begin()
1748 if (!iter->drm_edid) in __drm_edid_iter_next()
1751 if (iter->index < drm_edid_block_count(iter->drm_edid)) in __drm_edid_iter_next()
1752 block = drm_edid_block_data(iter->drm_edid, iter->index++); in __drm_edid_iter_next()
1834 static bool drm_edid_eq(const struct drm_edid *drm_edid, in drm_edid_eq() argument
1837 bool edid1_present = drm_edid && drm_edid->edid && drm_edid->size; in drm_edid_eq()
1844 if (drm_edid->size != raw_edid_size) in drm_edid_eq()
1847 if (memcmp(drm_edid->edid, raw_edid, drm_edid->size)) in drm_edid_eq()
2066 bool drm_edid_valid(const struct drm_edid *drm_edid) in drm_edid_valid() argument
2070 if (!drm_edid) in drm_edid_valid()
2073 if (edid_size_by_blocks(__drm_edid_block_count(drm_edid)) != drm_edid->size) in drm_edid_valid()
2076 for (i = 0; i < drm_edid_block_count(drm_edid); i++) { in drm_edid_valid()
2077 const void *block = drm_edid_block_data(drm_edid, i); in drm_edid_valid()
2220 static const struct drm_edid *drm_edid_override_get(struct drm_connector *connector) in drm_edid_override_get()
2222 const struct drm_edid *override = NULL; in drm_edid_override_get()
2240 const struct drm_edid *drm_edid; in drm_edid_override_show() local
2244 drm_edid = connector->edid_override; in drm_edid_override_show()
2245 if (drm_edid) in drm_edid_override_show()
2246 seq_write(m, drm_edid->edid, drm_edid->size); in drm_edid_override_show()
2257 const struct drm_edid *drm_edid; in drm_edid_override_set() local
2259 drm_edid = drm_edid_alloc(edid, size); in drm_edid_override_set()
2260 if (!drm_edid_valid(drm_edid)) { in drm_edid_override_set()
2263 drm_edid_free(drm_edid); in drm_edid_override_set()
2273 connector->edid_override = drm_edid; in drm_edid_override_set()
2309 const struct drm_edid *override; in drm_edid_override_connector_update()
2369 const struct drm_edid *override; in _drm_do_get_edid()
2479 const struct edid *drm_edid_raw(const struct drm_edid *drm_edid) in drm_edid_raw() argument
2481 if (!drm_edid || !drm_edid->size) in drm_edid_raw()
2488 if (WARN_ON(edid_size(drm_edid->edid) > drm_edid->size)) in drm_edid_raw()
2491 return drm_edid->edid; in drm_edid_raw()
2496 static const struct drm_edid *_drm_edid_alloc(const void *edid, size_t size) in _drm_edid_alloc()
2498 struct drm_edid *drm_edid; in _drm_edid_alloc() local
2503 drm_edid = kzalloc(sizeof(*drm_edid), GFP_KERNEL); in _drm_edid_alloc()
2504 if (drm_edid) { in _drm_edid_alloc()
2505 drm_edid->edid = edid; in _drm_edid_alloc()
2506 drm_edid->size = size; in _drm_edid_alloc()
2509 return drm_edid; in _drm_edid_alloc()
2526 const struct drm_edid *drm_edid_alloc(const void *edid, size_t size) in drm_edid_alloc()
2528 const struct drm_edid *drm_edid; in drm_edid_alloc() local
2537 drm_edid = _drm_edid_alloc(edid, size); in drm_edid_alloc()
2538 if (!drm_edid) in drm_edid_alloc()
2541 return drm_edid; in drm_edid_alloc()
2553 const struct drm_edid *drm_edid_dup(const struct drm_edid *drm_edid) in drm_edid_dup() argument
2555 if (!drm_edid) in drm_edid_dup()
2558 return drm_edid_alloc(drm_edid->edid, drm_edid->size); in drm_edid_dup()
2566 void drm_edid_free(const struct drm_edid *drm_edid) in drm_edid_free() argument
2568 if (!drm_edid) in drm_edid_free()
2571 kfree(drm_edid->edid); in drm_edid_free()
2572 kfree(drm_edid); in drm_edid_free()
2641 const struct drm_edid *drm_edid_read_custom(struct drm_connector *connector, in drm_edid_read_custom()
2645 const struct drm_edid *drm_edid; in drm_edid_read_custom() local
2656 drm_edid = _drm_edid_alloc(edid, size); in drm_edid_read_custom()
2657 if (!drm_edid) in drm_edid_read_custom()
2660 return drm_edid; in drm_edid_read_custom()
2682 const struct drm_edid *drm_edid_read_ddc(struct drm_connector *connector, in drm_edid_read_ddc()
2685 const struct drm_edid *drm_edid; in drm_edid_read_ddc() local
2693 drm_edid = drm_edid_read_custom(connector, drm_do_probe_ddc_edid, adapter); in drm_edid_read_ddc()
2697 return drm_edid; in drm_edid_read_ddc()
2715 const struct drm_edid *drm_edid_read(struct drm_connector *connector) in drm_edid_read()
2729 void drm_edid_get_product_id(const struct drm_edid *drm_edid, in drm_edid_get_product_id() argument
2732 if (drm_edid && drm_edid->edid && drm_edid->size >= EDID_LENGTH) in drm_edid_get_product_id()
2733 memcpy(id, &drm_edid->edid->product_id, sizeof(*id)); in drm_edid_get_product_id()
2795 u32 drm_edid_get_panel_id(const struct drm_edid *drm_edid) in drm_edid_get_panel_id() argument
2797 const struct edid *edid = drm_edid->edid; in drm_edid_get_panel_id()
2799 if (drm_edid->size < EDID_LENGTH) in drm_edid_get_panel_id()
2845 const struct drm_edid *drm_edid_read_base_block(struct i2c_adapter *adapter) in drm_edid_read_base_block()
2908 const struct drm_edid *drm_edid_read_switcheroo(struct drm_connector *connector, in drm_edid_read_switcheroo()
2913 const struct drm_edid *drm_edid; in drm_edid_read_switcheroo() local
2919 drm_edid = drm_edid_read_ddc(connector, adapter); in drm_edid_read_switcheroo()
2922 return drm_edid; in drm_edid_read_switcheroo()
2951 static u32 edid_get_quirks(const struct drm_edid *drm_edid) in edid_get_quirks() argument
2958 if (drm_edid_match(drm_edid, &quirk->ident)) in edid_get_quirks()
3118 static void drm_for_each_detailed_block(const struct drm_edid *drm_edid, in drm_for_each_detailed_block() argument
3125 if (!drm_edid) in drm_for_each_detailed_block()
3129 cb(&drm_edid->edid->detailed_timings[i], closure); in drm_for_each_detailed_block()
3131 drm_edid_iter_begin(drm_edid, &edid_iter); in drm_for_each_detailed_block()
3165 drm_monitor_supports_rb(const struct drm_edid *drm_edid) in drm_monitor_supports_rb() argument
3167 if (drm_edid->edid->revision >= 4) { in drm_monitor_supports_rb()
3170 drm_for_each_detailed_block(drm_edid, is_rb, &ret); in drm_monitor_supports_rb()
3174 return drm_edid_is_digital(drm_edid); in drm_monitor_supports_rb()
3193 drm_gtf2_hbreak(const struct drm_edid *drm_edid) in drm_gtf2_hbreak() argument
3197 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor); in drm_gtf2_hbreak()
3205 drm_gtf2_2c(const struct drm_edid *drm_edid) in drm_gtf2_2c() argument
3209 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor); in drm_gtf2_2c()
3217 drm_gtf2_m(const struct drm_edid *drm_edid) in drm_gtf2_m() argument
3221 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor); in drm_gtf2_m()
3229 drm_gtf2_k(const struct drm_edid *drm_edid) in drm_gtf2_k() argument
3233 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor); in drm_gtf2_k()
3241 drm_gtf2_2j(const struct drm_edid *drm_edid) in drm_gtf2_2j() argument
3245 drm_for_each_detailed_block(drm_edid, find_gtf2, &descriptor); in drm_gtf2_2j()
3278 static int standard_timing_level(const struct drm_edid *drm_edid) in standard_timing_level() argument
3280 const struct edid *edid = drm_edid->edid; in standard_timing_level()
3289 drm_for_each_detailed_block(drm_edid, get_timing_level, &ret); in standard_timing_level()
3292 } else if (edid->revision >= 3 && drm_gtf2_hbreak(drm_edid)) { in standard_timing_level()
3323 const struct drm_edid *drm_edid, in drm_gtf2_mode() argument
3337 if (drm_mode_hsync(mode) > drm_gtf2_hbreak(drm_edid)) { in drm_gtf2_mode()
3341 drm_gtf2_m(drm_edid), in drm_gtf2_mode()
3342 drm_gtf2_2c(drm_edid), in drm_gtf2_mode()
3343 drm_gtf2_k(drm_edid), in drm_gtf2_mode()
3344 drm_gtf2_2j(drm_edid)); in drm_gtf2_mode()
3355 const struct drm_edid *drm_edid, in drm_mode_std() argument
3366 int timing_level = standard_timing_level(drm_edid); in drm_mode_std()
3377 if (drm_edid->edid->revision < 3) in drm_mode_std()
3420 if (drm_monitor_supports_rb(drm_edid)) { in drm_mode_std()
3438 mode = drm_gtf2_mode(dev, drm_edid, hsize, vsize, vrefresh_rate); in drm_mode_std()
3496 const struct drm_edid *drm_edid, in drm_mode_detailed() argument
3594 mode->width_mm = drm_edid->edid->width_cm * 10; in drm_mode_detailed()
3595 mode->height_mm = drm_edid->edid->height_cm * 10; in drm_mode_detailed()
3654 const struct drm_edid *drm_edid, in mode_in_range() argument
3657 const struct edid *edid = drm_edid->edid; in mode_in_range()
3677 if (mode_is_rb(mode) && !drm_monitor_supports_rb(drm_edid)) in mode_in_range()
3702 const struct drm_edid *drm_edid, in drm_dmt_modes_for_range() argument
3710 if (mode_in_range(drm_dmt_modes + i, drm_edid, timing) && in drm_dmt_modes_for_range()
3737 const struct drm_edid *drm_edid, in drm_gtf_modes_for_range() argument
3752 if (!mode_in_range(newmode, drm_edid, timing) || in drm_gtf_modes_for_range()
3766 const struct drm_edid *drm_edid, in drm_gtf2_modes_for_range() argument
3776 newmode = drm_gtf2_mode(dev, drm_edid, m->w, m->h, m->r); in drm_gtf2_modes_for_range()
3781 if (!mode_in_range(newmode, drm_edid, timing) || in drm_gtf2_modes_for_range()
3795 const struct drm_edid *drm_edid, in drm_cvt_modes_for_range() argument
3801 bool rb = drm_monitor_supports_rb(drm_edid); in drm_cvt_modes_for_range()
3811 if (!mode_in_range(newmode, drm_edid, timing) || in drm_cvt_modes_for_range()
3835 closure->drm_edid, in do_inferred_modes()
3838 if (closure->drm_edid->edid->revision < 2) in do_inferred_modes()
3844 closure->drm_edid, in do_inferred_modes()
3849 closure->drm_edid, in do_inferred_modes()
3853 if (closure->drm_edid->edid->revision < 4) in do_inferred_modes()
3857 closure->drm_edid, in do_inferred_modes()
3867 const struct drm_edid *drm_edid) in add_inferred_modes() argument
3871 .drm_edid = drm_edid, in add_inferred_modes()
3874 if (drm_edid->edid->revision >= 1) in add_inferred_modes()
3875 drm_for_each_detailed_block(drm_edid, do_inferred_modes, &closure); in add_inferred_modes()
3926 const struct drm_edid *drm_edid) in add_established_modes() argument
3929 const struct edid *edid = drm_edid->edid; in add_established_modes()
3936 .drm_edid = drm_edid, in add_established_modes()
3952 drm_for_each_detailed_block(drm_edid, do_established_modes, in add_established_modes()
3973 newmode = drm_mode_std(connector, closure->drm_edid, std); in do_standard_modes()
3987 const struct drm_edid *drm_edid) in add_standard_modes() argument
3992 .drm_edid = drm_edid, in add_standard_modes()
3998 newmode = drm_mode_std(connector, drm_edid, in add_standard_modes()
3999 &drm_edid->edid->standard_timings[i]); in add_standard_modes()
4006 if (drm_edid->edid->revision >= 1) in add_standard_modes()
4007 drm_for_each_detailed_block(drm_edid, do_standard_modes, in add_standard_modes()
4079 add_cvt_modes(struct drm_connector *connector, const struct drm_edid *drm_edid) in add_cvt_modes() argument
4083 .drm_edid = drm_edid, in add_cvt_modes()
4086 if (drm_edid->edid->revision >= 3) in add_cvt_modes()
4087 drm_for_each_detailed_block(drm_edid, do_cvt_mode, &closure); in add_cvt_modes()
4107 closure->drm_edid, timing); in do_detailed_mode()
4132 const struct drm_edid *drm_edid) in add_detailed_modes() argument
4136 .drm_edid = drm_edid, in add_detailed_modes()
4139 if (drm_edid->edid->revision >= 4) in add_detailed_modes()
4143 drm_edid->edid->features & DRM_EDID_FEATURE_PREFERRED_TIMING; in add_detailed_modes()
4145 drm_for_each_detailed_block(drm_edid, do_detailed_mode, &closure); in add_detailed_modes()
4176 const u8 *drm_edid_find_extension(const struct drm_edid *drm_edid, in drm_edid_find_extension() argument
4183 if (!drm_edid || !drm_edid_extension_block_count(drm_edid)) in drm_edid_find_extension()
4187 for (i = *ext_index; i < drm_edid_extension_block_count(drm_edid); i++) { in drm_edid_find_extension()
4188 edid_ext = drm_edid_extension_block_data(drm_edid, i); in drm_edid_find_extension()
4193 if (i >= drm_edid_extension_block_count(drm_edid)) in drm_edid_find_extension()
4202 static bool drm_edid_has_cta_extension(const struct drm_edid *drm_edid) in drm_edid_has_cta_extension() argument
4211 drm_edid_iter_begin(drm_edid, &edid_iter); in drm_edid_has_cta_extension()
4224 displayid_iter_edid_begin(drm_edid, &iter); in drm_edid_has_cta_extension()
4499 const struct drm_edid *drm_edid) in add_alternate_cea_modes() argument
4507 if (!drm_edid_has_cta_extension(drm_edid)) in add_alternate_cea_modes()
5030 static void cea_db_iter_edid_begin(const struct drm_edid *drm_edid, in cea_db_iter_edid_begin() argument
5035 drm_edid_iter_begin(drm_edid, &iter->edid_iter); in cea_db_iter_edid_begin()
5036 displayid_iter_edid_begin(drm_edid, &iter->displayid_iter); in cea_db_iter_edid_begin()
5322 const struct drm_edid *drm_edid) in add_cea_modes() argument
5331 cea_db_iter_edid_begin(drm_edid, &iter); in add_cea_modes()
5547 bool drm_edid_match(const struct drm_edid *drm_edid, in drm_edid_match() argument
5550 if (!drm_edid || drm_edid_get_panel_id(drm_edid) != ident->panel_id) in drm_edid_match()
5560 drm_for_each_detailed_block(drm_edid, match_identity, &closure); in drm_edid_match()
5580 static int get_monitor_name(const struct drm_edid *drm_edid, char name[13]) in get_monitor_name() argument
5585 if (!drm_edid || !name) in get_monitor_name()
5588 drm_for_each_detailed_block(drm_edid, monitor_name, &edid_name); in get_monitor_name()
5615 struct drm_edid drm_edid = { in drm_edid_get_monitor_name() local
5620 name_length = min(get_monitor_name(&drm_edid, buf), bufsize - 1); in drm_edid_get_monitor_name()
5672 const struct drm_edid *drm_edid) in drm_edid_to_eld() argument
5681 if (!drm_edid) in drm_edid_to_eld()
5686 mnl = get_monitor_name(drm_edid, &eld[DRM_ELD_MONITOR_NAME_STRING]); in drm_edid_to_eld()
5696 eld[DRM_ELD_MANUFACTURER_NAME0] = drm_edid->edid->mfg_id[0]; in drm_edid_to_eld()
5697 eld[DRM_ELD_MANUFACTURER_NAME1] = drm_edid->edid->mfg_id[1]; in drm_edid_to_eld()
5698 eld[DRM_ELD_PRODUCT_CODE0] = drm_edid->edid->prod_code[0]; in drm_edid_to_eld()
5699 eld[DRM_ELD_PRODUCT_CODE1] = drm_edid->edid->prod_code[1]; in drm_edid_to_eld()
5701 cea_db_iter_edid_begin(drm_edid, &iter); in drm_edid_to_eld()
5750 static int _drm_edid_to_sad(const struct drm_edid *drm_edid, in _drm_edid_to_sad() argument
5757 cea_db_iter_edid_begin(drm_edid, &iter); in _drm_edid_to_sad()
5793 struct drm_edid drm_edid; in drm_edid_to_sad() local
5795 return _drm_edid_to_sad(drm_edid_legacy_init(&drm_edid, edid), sads); in drm_edid_to_sad()
5799 static int _drm_edid_to_speaker_allocation(const struct drm_edid *drm_edid, in _drm_edid_to_speaker_allocation() argument
5806 cea_db_iter_edid_begin(drm_edid, &iter); in _drm_edid_to_speaker_allocation()
5839 struct drm_edid drm_edid; in drm_edid_to_speaker_allocation() local
5841 return _drm_edid_to_speaker_allocation(drm_edid_legacy_init(&drm_edid, edid), in drm_edid_to_speaker_allocation()
5887 static bool _drm_detect_hdmi_monitor(const struct drm_edid *drm_edid) in _drm_detect_hdmi_monitor() argument
5897 cea_db_iter_edid_begin(drm_edid, &iter); in _drm_detect_hdmi_monitor()
5922 struct drm_edid drm_edid; in drm_detect_hdmi_monitor() local
5924 return _drm_detect_hdmi_monitor(drm_edid_legacy_init(&drm_edid, edid)); in drm_detect_hdmi_monitor()
5928 static bool _drm_detect_monitor_audio(const struct drm_edid *drm_edid) in _drm_detect_monitor_audio() argument
5936 drm_edid_iter_begin(drm_edid, &edid_iter); in _drm_detect_monitor_audio()
5951 cea_db_iter_edid_begin(drm_edid, &iter); in _drm_detect_monitor_audio()
5984 struct drm_edid drm_edid; in drm_detect_monitor_audio() local
5986 return _drm_detect_monitor_audio(drm_edid_legacy_init(&drm_edid, edid)); in drm_detect_monitor_audio()
6402 const struct drm_edid *drm_edid) in drm_parse_cea_ext() argument
6411 drm_edid_iter_begin(drm_edid, &edid_iter); in drm_parse_cea_ext()
6437 cea_db_iter_edid_begin(drm_edid, &iter); in drm_parse_cea_ext()
6476 const struct edid *edid = closure->drm_edid->edid; in get_monitor_range()
6505 const struct drm_edid *drm_edid) in drm_get_monitor_range() argument
6510 .drm_edid = drm_edid, in drm_get_monitor_range()
6513 if (drm_edid->edid->revision < 4) in drm_get_monitor_range()
6516 if (!(drm_edid->edid->features & DRM_EDID_FEATURE_CONTINUOUS_FREQ)) in drm_get_monitor_range()
6519 drm_for_each_detailed_block(drm_edid, get_monitor_range, &closure); in drm_get_monitor_range()
6588 const struct drm_edid *drm_edid) in drm_update_mso() argument
6593 displayid_iter_edid_begin(drm_edid, &iter); in drm_update_mso()
6644 const struct drm_edid *drm_edid) in update_displayid_info() argument
6650 displayid_iter_edid_begin(drm_edid, &iter); in update_displayid_info()
6672 const struct drm_edid *drm_edid) in update_display_info() argument
6680 if (!drm_edid) in update_display_info()
6683 edid = drm_edid->edid; in update_display_info()
6685 info->quirks = edid_get_quirks(drm_edid); in update_display_info()
6690 drm_get_monitor_range(connector, drm_edid); in update_display_info()
6695 if (!drm_edid_is_digital(drm_edid)) in update_display_info()
6699 drm_parse_cea_ext(connector, drm_edid); in update_display_info()
6701 update_displayid_info(connector, drm_edid); in update_display_info()
6756 drm_update_mso(connector, drm_edid); in update_display_info()
6782 drm_edid_to_eld(connector, drm_edid); in update_display_info()
6920 const struct drm_edid *drm_edid) in add_displayid_detailed_modes() argument
6926 displayid_iter_edid_begin(drm_edid, &iter); in add_displayid_detailed_modes()
6941 const struct drm_edid *drm_edid) in _drm_edid_connector_add_modes() argument
6945 if (!drm_edid) in _drm_edid_connector_add_modes()
6962 num_modes += add_detailed_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6963 num_modes += add_cvt_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6964 num_modes += add_standard_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6965 num_modes += add_established_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6966 num_modes += add_cea_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6967 num_modes += add_alternate_cea_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6968 num_modes += add_displayid_detailed_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6969 if (drm_edid->edid->features & DRM_EDID_FEATURE_CONTINUOUS_FREQ) in _drm_edid_connector_add_modes()
6970 num_modes += add_inferred_modes(connector, drm_edid); in _drm_edid_connector_add_modes()
6980 const struct drm_edid *drm_edid);
6983 const struct drm_edid *drm_edid) in _drm_edid_connector_property_update() argument
6992 if (old_edid && !drm_edid_eq(drm_edid, old_edid, old_edid_size)) { in _drm_edid_connector_property_update()
7002 drm_edid ? drm_edid->size : 0, in _drm_edid_connector_property_update()
7003 drm_edid ? drm_edid->edid : NULL, in _drm_edid_connector_property_update()
7080 const struct drm_edid *drm_edid) in drm_edid_connector_update() argument
7082 update_display_info(connector, drm_edid); in drm_edid_connector_update()
7084 _drm_update_tile_info(connector, drm_edid); in drm_edid_connector_update()
7086 return _drm_edid_connector_property_update(connector, drm_edid); in drm_edid_connector_update()
7104 const struct drm_edid *drm_edid = NULL; in drm_edid_connector_add_modes() local
7108 drm_edid = drm_edid_alloc(connector->edid_blob_ptr->data, in drm_edid_connector_add_modes()
7111 count = _drm_edid_connector_add_modes(connector, drm_edid); in drm_edid_connector_add_modes()
7113 drm_edid_free(drm_edid); in drm_edid_connector_add_modes()
7138 struct drm_edid drm_edid; in drm_connector_update_edid_property() local
7140 return drm_edid_connector_update(connector, drm_edid_legacy_init(&drm_edid, edid)); in drm_connector_update_edid_property()
7159 struct drm_edid _drm_edid; in drm_add_edid_modes()
7160 const struct drm_edid *drm_edid; in drm_add_edid_modes() local
7168 drm_edid = drm_edid_legacy_init(&_drm_edid, edid); in drm_add_edid_modes()
7170 update_display_info(connector, drm_edid); in drm_add_edid_modes()
7172 return _drm_edid_connector_add_modes(connector, drm_edid); in drm_add_edid_modes()
7559 const struct drm_edid *drm_edid) in _drm_update_tile_info() argument
7566 displayid_iter_edid_begin(drm_edid, &iter); in _drm_update_tile_info()
7585 bool drm_edid_is_digital(const struct drm_edid *drm_edid) in drm_edid_is_digital() argument
7587 return drm_edid && drm_edid->edid && in drm_edid_is_digital()
7588 drm_edid->edid->input & DRM_EDID_INPUT_DIGITAL; in drm_edid_is_digital()