Home
last modified time | relevance | path

Searched refs:edid (Results 1 – 130 of 130) sorted by relevance

/linux-4.1.27/drivers/gpu/drm/
Ddrm_edid_load.c155 static int edid_size(const u8 *edid, int data_size) in edid_size() argument
160 return (edid[0x7e] + 1) * EDID_LENGTH; in edid_size()
168 u8 *edid; in edid_load() local
209 edid = ERR_PTR(-EINVAL); in edid_load()
213 edid = kmemdup(fwdata, fwsize, GFP_KERNEL); in edid_load()
214 if (edid == NULL) { in edid_load()
215 edid = ERR_PTR(-ENOMEM); in edid_load()
219 if (!drm_edid_block_valid(edid, 0, print_bad_edid)) { in edid_load()
223 kfree(edid); in edid_load()
224 edid = ERR_PTR(-EINVAL); in edid_load()
[all …]
Ddrm_edid.c39 #define version_greater(edid, maj, min) \ argument
40 (((edid)->version > (maj)) || \
41 ((edid)->version == (maj) && (edid)->revision > (min)))
79 struct edid *edid; member
1019 struct edid *edid);
1053 struct edid *edid = (struct edid *)raw_edid; in drm_edid_block_valid() local
1086 if (edid->version != 1) { in drm_edid_block_valid()
1087 DRM_ERROR("EDID has major version %d, instead of 1\n", edid->version); in drm_edid_block_valid()
1091 if (edid->revision > 4) in drm_edid_block_valid()
1123 bool drm_edid_is_valid(struct edid *edid) in drm_edid_is_valid() argument
[all …]
Ddrm_debugfs.c310 struct drm_property_blob *edid = connector->edid_blob_ptr; in edid_show() local
312 if (connector->override_edid && edid) in edid_show()
313 seq_write(m, edid->data, edid->length); in edid_show()
331 struct edid *edid; in edid_write() local
338 edid = (struct edid *) buf; in edid_write()
344 EDID_LENGTH * (1 + edid->extensions) > len) in edid_write()
348 ret = drm_mode_connector_update_edid_property(connector, edid); in edid_write()
Ddrm_probe_helper.c174 struct edid *edid = (struct edid *) connector->edid_blob_ptr->data; in drm_helper_probe_single_connector_modes_merge_bits() local
176 count = drm_add_edid_modes(connector, edid); in drm_helper_probe_single_connector_modes_merge_bits()
177 drm_edid_to_eld(connector, edid); in drm_helper_probe_single_connector_modes_merge_bits()
Ddrm_sysfs.c262 unsigned char *edid; in edid_show() local
268 edid = connector->edid_blob_ptr->data; in edid_show()
270 if (!edid) in edid_show()
278 memcpy(buf, edid + off, count); in edid_show()
Ddrm_dp_mst_topology.c2413 struct edid *drm_dp_mst_get_edid(struct drm_connector *connector, struct drm_dp_mst_topology_mgr *m… in drm_dp_mst_get_edid()
2415 struct edid *edid = NULL; in drm_dp_mst_get_edid() local
2423 edid = drm_edid_duplicate(port->cached_edid); in drm_dp_mst_get_edid()
2425 edid = drm_get_edid(connector, &port->aux.ddc); in drm_dp_mst_get_edid()
2429 return edid; in drm_dp_mst_get_edid()
Ddrm_crtc.c4380 const struct edid *edid) in drm_mode_connector_update_edid_property() argument
4394 if (!edid) { in drm_mode_connector_update_edid_property()
4400 size = EDID_LENGTH * (1 + edid->extensions); in drm_mode_connector_update_edid_property()
4402 size, edid); in drm_mode_connector_update_edid_property()
/linux-4.1.27/drivers/gpu/drm/i915/
Dintel_modes.c40 struct edid *edid) in intel_connector_update_modes() argument
44 drm_mode_connector_update_edid_property(connector, edid); in intel_connector_update_modes()
45 ret = drm_add_edid_modes(connector, edid); in intel_connector_update_modes()
46 drm_edid_to_eld(connector, edid); in intel_connector_update_modes()
61 struct edid *edid; in intel_ddc_get_modes() local
64 edid = drm_get_edid(connector, adapter); in intel_ddc_get_modes()
65 if (!edid) in intel_ddc_get_modes()
68 ret = intel_connector_update_modes(connector, edid); in intel_ddc_get_modes()
69 kfree(edid); in intel_ddc_get_modes()
Dintel_crt.c469 static struct edid *intel_crt_get_edid(struct drm_connector *connector, in intel_crt_get_edid()
472 struct edid *edid; in intel_crt_get_edid() local
474 edid = drm_get_edid(connector, i2c); in intel_crt_get_edid()
476 if (!edid && !intel_gmbus_is_forced_bit(i2c)) { in intel_crt_get_edid()
479 edid = drm_get_edid(connector, i2c); in intel_crt_get_edid()
483 return edid; in intel_crt_get_edid()
490 struct edid *edid; in intel_crt_ddc_get_modes() local
493 edid = intel_crt_get_edid(connector, adapter); in intel_crt_ddc_get_modes()
494 if (!edid) in intel_crt_ddc_get_modes()
497 ret = intel_connector_update_modes(connector, edid); in intel_crt_ddc_get_modes()
[all …]
Dintel_lvds.c371 if (!IS_ERR_OR_NULL(lvds_connector->base.edid)) in intel_lvds_get_modes()
372 return drm_add_edid_modes(connector, lvds_connector->base.edid); in intel_lvds_get_modes()
481 if (!IS_ERR_OR_NULL(lvds_connector->base.edid)) in intel_lvds_destroy()
482 kfree(lvds_connector->base.edid); in intel_lvds_destroy()
921 struct edid *edid; in intel_lvds_init() local
1040 edid = drm_get_edid(connector, intel_gmbus_get_adapter(dev_priv, pin)); in intel_lvds_init()
1041 if (edid) { in intel_lvds_init()
1042 if (drm_add_edid_modes(connector, edid)) { in intel_lvds_init()
1044 edid); in intel_lvds_init()
1046 kfree(edid); in intel_lvds_init()
[all …]
Dintel_sdvo.c1651 static struct edid *
1659 static struct edid *
1674 struct edid *edid; in intel_sdvo_tmds_sink_detect() local
1676 edid = intel_sdvo_get_edid(connector); in intel_sdvo_tmds_sink_detect()
1678 if (edid == NULL && intel_sdvo_multifunc_encoder(intel_sdvo)) { in intel_sdvo_tmds_sink_detect()
1687 edid = intel_sdvo_get_edid(connector); in intel_sdvo_tmds_sink_detect()
1688 if (edid) in intel_sdvo_tmds_sink_detect()
1695 if (edid == NULL) in intel_sdvo_tmds_sink_detect()
1703 if (edid == NULL) in intel_sdvo_tmds_sink_detect()
1704 edid = intel_sdvo_get_analog_edid(connector); in intel_sdvo_tmds_sink_detect()
[all …]
Dintel_dp_mst.c285 struct edid *edid; in intel_dp_mst_get_ddc_modes() local
288 edid = drm_dp_mst_get_edid(connector, &intel_dp->mst_mgr, intel_connector->port); in intel_dp_mst_get_ddc_modes()
289 if (!edid) in intel_dp_mst_get_ddc_modes()
292 ret = intel_connector_update_modes(connector, edid); in intel_dp_mst_get_ddc_modes()
293 kfree(edid); in intel_dp_mst_get_ddc_modes()
320 if (!IS_ERR_OR_NULL(intel_connector->edid)) in intel_dp_mst_connector_destroy()
321 kfree(intel_connector->edid); in intel_dp_mst_connector_destroy()
Dintel_hdmi.c1079 struct edid *edid; in intel_hdmi_set_edid() local
1085 edid = drm_get_edid(connector, in intel_hdmi_set_edid()
1091 to_intel_connector(connector)->detect_edid = edid; in intel_hdmi_set_edid()
1092 if (edid && edid->input & DRM_EDID_INPUT_DIGITAL) { in intel_hdmi_set_edid()
1094 drm_rgb_quant_range_selectable(edid); in intel_hdmi_set_edid()
1096 intel_hdmi->has_audio = drm_detect_monitor_audio(edid); in intel_hdmi_set_edid()
1103 drm_detect_hdmi_monitor(edid); in intel_hdmi_set_edid()
1151 struct edid *edid; in intel_hdmi_get_modes() local
1153 edid = to_intel_connector(connector)->detect_edid; in intel_hdmi_get_modes()
1154 if (edid == NULL) in intel_hdmi_get_modes()
[all …]
Dintel_dp.c4234 static struct edid *
4240 if (intel_connector->edid) { in intel_dp_get_edid()
4242 if (IS_ERR(intel_connector->edid)) in intel_dp_get_edid()
4245 return drm_edid_duplicate(intel_connector->edid); in intel_dp_get_edid()
4255 struct edid *edid; in intel_dp_set_edid() local
4257 edid = intel_dp_get_edid(intel_dp); in intel_dp_set_edid()
4258 intel_connector->detect_edid = edid; in intel_dp_set_edid()
4263 intel_dp->has_audio = drm_detect_monitor_audio(edid); in intel_dp_set_edid()
4381 struct edid *edid; in intel_dp_get_modes() local
4383 edid = intel_connector->detect_edid; in intel_dp_get_modes()
[all …]
Dintel_drv.h220 struct edid *edid; member
221 struct edid *detect_edid;
1167 struct edid *edid);
/linux-4.1.27/drivers/video/fbdev/core/
Dfbmon.c145 static int check_edid(unsigned char *edid) in check_edid() argument
147 unsigned char *block = edid + ID_MANUFACTURER_NAME, manufacturer[4]; in check_edid()
170 if (edid[i] != edid_v1_header[i]) { in check_edid()
177 b = edid + EDID_STRUCT_DISPLAY; in check_edid()
184 b = edid + DETAILED_TIMING_DESCRIPTIONS_START; in check_edid()
207 static void fix_edid(unsigned char *edid, int fix) in fix_edid() argument
215 memcpy(edid, edid_v1_header, 8); in fix_edid()
219 b = edid + EDID_STRUCT_DISPLAY; in fix_edid()
221 edid[127] += 0x80; in fix_edid()
225 b = edid + DETAILED_TIMING_DESCRIPTIONS_START; in fix_edid()
[all …]
Dfb_ddc.c57 unsigned char *edid = NULL; in fb_ddc_read() local
86 edid = fb_do_probe_ddc_edid(adapter); in fb_ddc_read()
102 if (edid) in fb_ddc_read()
112 return edid; in fb_ddc_read()
/linux-4.1.27/drivers/gpu/drm/udl/
Dudl_connector.c60 struct edid *edid; in udl_get_modes() local
63 edid = (struct edid *)udl_get_edid(udl); in udl_get_modes()
64 if (!edid) { in udl_get_modes()
74 edid->checksum += edid->extensions; in udl_get_modes()
75 edid->extensions = 0; in udl_get_modes()
77 drm_mode_connector_update_edid_property(connector, edid); in udl_get_modes()
78 ret = drm_add_edid_modes(connector, edid); in udl_get_modes()
79 kfree(edid); in udl_get_modes()
/linux-4.1.27/drivers/gpu/drm/gma500/
Dpsb_intel_modes.c65 struct edid *edid; in psb_intel_ddc_get_modes() local
68 edid = drm_get_edid(connector, adapter); in psb_intel_ddc_get_modes()
69 if (edid) { in psb_intel_ddc_get_modes()
70 drm_mode_connector_update_edid_property(connector, edid); in psb_intel_ddc_get_modes()
71 ret = drm_add_edid_modes(connector, edid); in psb_intel_ddc_get_modes()
72 kfree(edid); in psb_intel_ddc_get_modes()
Dcdv_intel_hdmi.c132 struct edid *edid = NULL; in cdv_hdmi_detect() local
135 edid = drm_get_edid(connector, &gma_encoder->i2c_bus->adapter); in cdv_hdmi_detect()
139 if (edid) { in cdv_hdmi_detect()
140 if (edid->input & DRM_EDID_INPUT_DIGITAL) { in cdv_hdmi_detect()
143 drm_detect_hdmi_monitor(edid); in cdv_hdmi_detect()
145 drm_detect_monitor_audio(edid); in cdv_hdmi_detect()
147 kfree(edid); in cdv_hdmi_detect()
214 struct edid *edid = NULL; in cdv_hdmi_get_modes() local
217 edid = drm_get_edid(connector, &gma_encoder->i2c_bus->adapter); in cdv_hdmi_get_modes()
218 if (edid) { in cdv_hdmi_get_modes()
[all …]
Doaktrail_lvds.c306 struct edid *edid; in oaktrail_lvds_init() local
362 edid = NULL; in oaktrail_lvds_init()
366 edid = drm_get_edid(connector, i2c_adap); in oaktrail_lvds_init()
367 if (edid == NULL && dev_priv->lpc_gpio_base) { in oaktrail_lvds_init()
371 edid = drm_get_edid(connector, i2c_adap); in oaktrail_lvds_init()
378 if (edid) { in oaktrail_lvds_init()
379 drm_mode_connector_update_edid_property(connector, edid); in oaktrail_lvds_init()
380 drm_add_edid_modes(connector, edid); in oaktrail_lvds_init()
381 kfree(edid); in oaktrail_lvds_init()
Dpsb_intel_sdvo.c1300 static struct edid *
1308 static struct edid *
1322 struct edid *edid; in psb_intel_sdvo_hdmi_sink_detect() local
1324 edid = psb_intel_sdvo_get_edid(connector); in psb_intel_sdvo_hdmi_sink_detect()
1326 if (edid == NULL && psb_intel_sdvo_multifunc_encoder(psb_intel_sdvo)) { in psb_intel_sdvo_hdmi_sink_detect()
1335 edid = psb_intel_sdvo_get_edid(connector); in psb_intel_sdvo_hdmi_sink_detect()
1336 if (edid) in psb_intel_sdvo_hdmi_sink_detect()
1343 if (edid == NULL) in psb_intel_sdvo_hdmi_sink_detect()
1351 if (edid == NULL) in psb_intel_sdvo_hdmi_sink_detect()
1352 edid = psb_intel_sdvo_get_analog_edid(connector); in psb_intel_sdvo_hdmi_sink_detect()
[all …]
Dcdv_intel_dp.c1734 struct edid *edid = NULL; in cdv_intel_dp_detect() local
1751 edid = drm_get_edid(connector, &intel_dp->adapter); in cdv_intel_dp_detect()
1752 if (edid) { in cdv_intel_dp_detect()
1753 intel_dp->has_audio = drm_detect_monitor_audio(edid); in cdv_intel_dp_detect()
1754 kfree(edid); in cdv_intel_dp_detect()
1767 struct edid *edid = NULL; in cdv_intel_dp_get_modes() local
1772 edid = drm_get_edid(connector, &intel_dp->adapter); in cdv_intel_dp_get_modes()
1773 if (edid) { in cdv_intel_dp_get_modes()
1774 drm_mode_connector_update_edid_property(connector, edid); in cdv_intel_dp_get_modes()
1775 ret = drm_add_edid_modes(connector, edid); in cdv_intel_dp_get_modes()
[all …]
Doaktrail_hdmi.c563 struct edid *edid; in oaktrail_hdmi_get_modes() local
574 edid = (struct edid *)raw_edid; in oaktrail_hdmi_get_modes()
576 edid = (struct edid *)raw_edid; in oaktrail_hdmi_get_modes()
580 if (edid) { in oaktrail_hdmi_get_modes()
581 drm_mode_connector_update_edid_property(connector, edid); in oaktrail_hdmi_get_modes()
582 ret = drm_add_edid_modes(connector, edid); in oaktrail_hdmi_get_modes()
/linux-4.1.27/drivers/gpu/drm/tegra/
Doutput.c19 struct edid *edid = NULL; in tegra_output_connector_get_modes() local
32 if (output->edid) in tegra_output_connector_get_modes()
33 edid = kmemdup(output->edid, sizeof(*edid), GFP_KERNEL); in tegra_output_connector_get_modes()
35 edid = drm_get_edid(connector, output->ddc); in tegra_output_connector_get_modes()
37 drm_mode_connector_update_edid_property(connector, edid); in tegra_output_connector_get_modes()
39 if (edid) { in tegra_output_connector_get_modes()
40 err = drm_add_edid_modes(connector, edid); in tegra_output_connector_get_modes()
41 kfree(edid); in tegra_output_connector_get_modes()
115 output->edid = of_get_property(output->of_node, "nvidia,edid", &size); in tegra_output_probe()
Ddrm.h200 const struct edid *edid; member
Dhdmi.c765 struct edid *edid; in tegra_output_is_hdmi() local
770 edid = (struct edid *)output->connector.edid_blob_ptr->data; in tegra_output_is_hdmi()
772 return drm_detect_hdmi_monitor(edid); in tegra_output_is_hdmi()
/linux-4.1.27/drivers/media/i2c/
Dad9389b.c98 struct ad9389b_state_edid edid; member
356 struct ad9389b_state_edid *edid = &state->edid; in ad9389b_log_status() local
389 edid->segments ? "found" : "no", edid->blocks); in ad9389b_log_status()
677 static int ad9389b_get_edid(struct v4l2_subdev *sd, struct v4l2_edid *edid) in ad9389b_get_edid() argument
681 if (edid->pad != 0) in ad9389b_get_edid()
683 if (edid->blocks == 0 || edid->blocks > 256) in ad9389b_get_edid()
685 if (!state->edid.segments) { in ad9389b_get_edid()
689 if (edid->start_block >= state->edid.segments * 2) in ad9389b_get_edid()
691 if (edid->blocks + edid->start_block >= state->edid.segments * 2) in ad9389b_get_edid()
692 edid->blocks = state->edid.segments * 2 - edid->start_block; in ad9389b_get_edid()
[all …]
Dadv7511.c111 struct adv7511_state_edid edid; member
420 struct adv7511_state_edid *edid = &state->edid; in adv7511_log_status() local
448 edid->segments ? "found" : "no", in adv7511_log_status()
449 edid->blocks); in adv7511_log_status()
783 static int adv7511_get_edid(struct v4l2_subdev *sd, struct v4l2_edid *edid) in adv7511_get_edid() argument
787 memset(edid->reserved, 0, sizeof(edid->reserved)); in adv7511_get_edid()
789 if (edid->pad != 0) in adv7511_get_edid()
792 if (edid->start_block == 0 && edid->blocks == 0) { in adv7511_get_edid()
793 edid->blocks = state->edid.segments * 2; in adv7511_get_edid()
797 if (state->edid.segments == 0) in adv7511_get_edid()
[all …]
Dadv7604.c155 u8 edid[256]; member
158 } edid; member
556 adv76xx_set_hpd(state, state->edid.present); in adv76xx_delayed_work_enable_hotplug()
1924 static int adv76xx_get_edid(struct v4l2_subdev *sd, struct v4l2_edid *edid) in adv76xx_get_edid() argument
1929 memset(edid->reserved, 0, sizeof(edid->reserved)); in adv76xx_get_edid()
1931 switch (edid->pad) { in adv76xx_get_edid()
1936 if (state->edid.present & (1 << edid->pad)) in adv76xx_get_edid()
1937 data = state->edid.edid; in adv76xx_get_edid()
1943 if (edid->start_block == 0 && edid->blocks == 0) { in adv76xx_get_edid()
1944 edid->blocks = data ? state->edid.blocks : 0; in adv76xx_get_edid()
[all …]
Dadv7842.c77 u8 edid[256]; member
81 u8 edid[256]; member
609 const u8 *val = state->vga_edid.edid; in edid_write_vga_segment()
652 static int edid_spa_location(const u8 *edid) in edid_spa_location() argument
661 if ((edid[0x7e] != 1) || in edid_spa_location()
662 (edid[0x80] != 0x02) || in edid_spa_location()
663 (edid[0x81] != 0x03)) { in edid_spa_location()
669 d = edid[0x82] & 0x7f; in edid_spa_location()
674 u8 tag = edid[i]>>5; in edid_spa_location()
675 u8 len = edid[i] & 0x1f; in edid_spa_location()
[all …]
/linux-4.1.27/drivers/gpu/drm/bridge/
Dptn3460.c44 struct edid *edid; member
202 u8 *edid; in ptn3460_get_modes() local
208 if (ptn_bridge->edid) in ptn3460_get_modes()
209 return drm_add_edid_modes(connector, ptn_bridge->edid); in ptn3460_get_modes()
214 edid = kmalloc(EDID_LENGTH, GFP_KERNEL); in ptn3460_get_modes()
215 if (!edid) { in ptn3460_get_modes()
220 ret = ptn3460_read_bytes(ptn_bridge, PTN3460_EDID_ADDR, edid, in ptn3460_get_modes()
223 kfree(edid); in ptn3460_get_modes()
227 ptn_bridge->edid = (struct edid *)edid; in ptn3460_get_modes()
228 drm_mode_connector_update_edid_property(connector, ptn_bridge->edid); in ptn3460_get_modes()
[all …]
Ddw_hdmi.c120 u8 edid[HDMI_EDID_LEN]; member
1397 struct edid *edid; in dw_hdmi_connector_get_modes() local
1403 edid = drm_get_edid(connector, hdmi->ddc); in dw_hdmi_connector_get_modes()
1404 if (edid) { in dw_hdmi_connector_get_modes()
1406 edid->width_cm, edid->height_cm); in dw_hdmi_connector_get_modes()
1408 drm_mode_connector_update_edid_property(connector, edid); in dw_hdmi_connector_get_modes()
1409 ret = drm_add_edid_modes(connector, edid); in dw_hdmi_connector_get_modes()
1410 kfree(edid); in dw_hdmi_connector_get_modes()
/linux-4.1.27/drivers/gpu/drm/exynos/
Dexynos_drm_vidi.c44 struct edid *raw_edid;
284 ctx->raw_edid = (struct edid *)fake_edid_info; in vidi_store_connection()
287 if (ctx->raw_edid != (struct edid *)fake_edid_info) { in vidi_store_connection()
341 struct edid *raw_edid = (struct edid *)(uint32_t)vidi->edid; in vidi_connection_ioctl()
357 (struct edid *)fake_edid_info) { in vidi_connection_ioctl()
396 struct edid *edid; in vidi_get_modes() local
409 edid = kmemdup(ctx->raw_edid, edid_len, GFP_KERNEL); in vidi_get_modes()
410 if (!edid) { in vidi_get_modes()
415 drm_mode_connector_update_edid_property(connector, edid); in vidi_get_modes()
417 return drm_add_edid_modes(connector, edid); in vidi_get_modes()
[all …]
Dexynos_dp_core.c103 unsigned char edid[EDID_BLOCK_LENGTH * 2]; in exynos_dp_read_edid() local
129 &edid[EDID_HEADER_PATTERN]); in exynos_dp_read_edid()
134 sum = exynos_dp_calc_edid_check_sum(edid); in exynos_dp_read_edid()
145 &edid[EDID_BLOCK_LENGTH]); in exynos_dp_read_edid()
150 sum = exynos_dp_calc_edid_check_sum(&edid[EDID_BLOCK_LENGTH]); in exynos_dp_read_edid()
161 edid[EDID_BLOCK_LENGTH + EDID_CHECKSUM]); in exynos_dp_read_edid()
174 &edid[EDID_HEADER_PATTERN]); in exynos_dp_read_edid()
179 sum = exynos_dp_calc_edid_check_sum(edid); in exynos_dp_read_edid()
191 edid[EDID_CHECKSUM]); in exynos_dp_read_edid()
Dexynos_hdmi.c1062 struct edid *edid; in hdmi_get_modes() local
1067 edid = drm_get_edid(connector, hdata->ddc_adpt); in hdmi_get_modes()
1068 if (!edid) in hdmi_get_modes()
1071 hdata->dvi_mode = !drm_detect_hdmi_monitor(edid); in hdmi_get_modes()
1074 edid->width_cm, edid->height_cm); in hdmi_get_modes()
1076 drm_mode_connector_update_edid_property(connector, edid); in hdmi_get_modes()
1078 return drm_add_edid_modes(connector, edid); in hdmi_get_modes()
Dexynos_dp_core.h219 unsigned char edid[]);
Dexynos_dp_reg.c786 unsigned char edid[]) in exynos_dp_read_bytes_from_i2c() argument
848 edid[i + cur_data_idx] = (unsigned char)reg; in exynos_dp_read_bytes_from_i2c()
/linux-4.1.27/drivers/media/platform/vivid/
Dvivid-vid-common.c848 struct v4l2_edid *edid) in vidioc_g_edid() argument
853 memset(edid->reserved, 0, sizeof(edid->reserved)); in vidioc_g_edid()
855 if (edid->pad >= dev->num_inputs) in vidioc_g_edid()
857 if (dev->input_type[edid->pad] != HDMI) in vidioc_g_edid()
860 if (edid->pad >= dev->num_outputs) in vidioc_g_edid()
862 if (dev->output_type[edid->pad] != HDMI) in vidioc_g_edid()
865 if (edid->start_block == 0 && edid->blocks == 0) { in vidioc_g_edid()
866 edid->blocks = dev->edid_blocks; in vidioc_g_edid()
871 if (edid->start_block >= dev->edid_blocks) in vidioc_g_edid()
873 if (edid->start_block + edid->blocks > dev->edid_blocks) in vidioc_g_edid()
[all …]
Dvivid-vid-cap.c1691 struct v4l2_edid *edid) in vidioc_s_edid() argument
1695 memset(edid->reserved, 0, sizeof(edid->reserved)); in vidioc_s_edid()
1696 if (edid->pad >= dev->num_inputs) in vidioc_s_edid()
1698 if (dev->input_type[edid->pad] != HDMI || edid->start_block) in vidioc_s_edid()
1700 if (edid->blocks == 0) { in vidioc_s_edid()
1704 if (edid->blocks > dev->edid_max_blocks) { in vidioc_s_edid()
1705 edid->blocks = dev->edid_max_blocks; in vidioc_s_edid()
1708 dev->edid_blocks = edid->blocks; in vidioc_s_edid()
1709 memcpy(dev->edid, edid->edid, edid->blocks * 128); in vidioc_s_edid()
Dvivid-vid-common.h58 int vidioc_g_edid(struct file *file, void *_fh, struct v4l2_edid *edid);
Dvivid-vid-cap.h65 int vidioc_s_edid(struct file *file, void *_fh, struct v4l2_edid *edid);
Dvivid-core.c630 vfree(dev->edid); in vivid_dev_release()
843 dev->edid = vmalloc(256 * 128); in vivid_create_instance()
844 if (!dev->edid) in vivid_create_instance()
970 memcpy(dev->edid, vivid_hdmi_edid, sizeof(vivid_hdmi_edid)); in vivid_create_instance()
Dvivid-core.h308 u8 *edid; member
/linux-4.1.27/drivers/gpu/drm/nouveau/
Dnouveau_connector.c104 kfree(nv_connector->edid); in nouveau_connector_destroy()
181 const void *edid = of_get_property(cn, "EDID", NULL); in nouveau_connector_of_detect() local
184 if (nv_encoder->dcb->i2c_index == idx && edid) { in nouveau_connector_of_detect()
185 nv_connector->edid = in nouveau_connector_of_detect()
186 kmemdup(edid, EDID_LENGTH, GFP_KERNEL); in nouveau_connector_of_detect()
250 if (nv_connector->edid) { in nouveau_connector_detect()
252 kfree(nv_connector->edid); in nouveau_connector_detect()
253 nv_connector->edid = NULL; in nouveau_connector_detect()
262 nv_connector->edid = drm_get_edid(connector, &i2c->adapter); in nouveau_connector_detect()
264 nv_connector->edid); in nouveau_connector_detect()
[all …]
Dnouveau_connector.h81 struct edid *edid; member
Dnouveau_acpi.c403 void *edid; in nouveau_acpi_edid() local
422 ret = acpi_video_get_edid(acpidev, type, -1, &edid); in nouveau_acpi_edid()
426 return kmemdup(edid, EDID_LENGTH, GFP_KERNEL); in nouveau_acpi_edid()
Dnouveau_bios.h133 uint8_t *edid; member
Dnv50_display.c757 nv_connector->edid && in nv50_crtc_set_scale()
758 drm_detect_hdmi_monitor(nv_connector->edid)))) { in nv50_crtc_set_scale()
1727 if (!drm_detect_monitor_audio(nv_connector->edid)) in nv50_audio_mode_set()
1730 drm_edid_to_eld(&nv_connector->base, nv_connector->edid); in nv50_audio_mode_set()
1781 if (!drm_detect_hdmi_monitor(nv_connector->edid)) in nv50_hdmi_mode_set()
1959 if (((u8 *)nv_connector->edid)[121] == 2) in nv50_sor_mode_set()
Dnouveau_bios.c1988 if (bios->fp.edid) in nouveau_bios_embedded_edid()
1989 return bios->fp.edid; in nouveau_bios_embedded_edid()
2006 return bios->fp.edid = &bios->data[offset]; in nouveau_bios_embedded_edid()
/linux-4.1.27/include/drm/
Ddrm_edid.h269 struct edid { struct
325 void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid); argument
326 int drm_edid_to_sad(struct edid *edid, struct cea_sad **sads);
327 int drm_edid_to_speaker_allocation(struct edid *edid, u8 **sadb);
388 struct edid *drm_do_get_edid(struct drm_connector *connector,
Ddrm_crtc.h1290 extern struct edid *drm_get_edid(struct drm_connector *connector,
1292 extern struct edid *drm_edid_duplicate(const struct edid *edid);
1293 extern int drm_add_edid_modes(struct drm_connector *connector, struct edid *edid);
1302 const struct edid *edid);
1434 extern bool drm_detect_hdmi_monitor(struct edid *edid);
1435 extern bool drm_detect_monitor_audio(struct edid *edid);
1436 extern bool drm_rgb_quant_range_selectable(struct edid *edid);
1446 extern bool drm_edid_is_valid(struct edid *edid);
Ddrm_dp_mst_helper.h90 struct edid *cached_edid; /* for DP logical ports - make tiling work */
479 struct edid *drm_dp_mst_get_edid(struct drm_connector *connector, struct drm_dp_mst_topology_mgr *m…
/linux-4.1.27/drivers/video/fbdev/nvidia/
Dnv_i2c.c155 u8 *edid = NULL; in nvidia_probe_i2c_connector() local
158 edid = fb_ddc_read(&par->chan[conn - 1].adapter); in nvidia_probe_i2c_connector()
160 if (!edid && conn == 1) { in nvidia_probe_i2c_connector()
165 edid = kmemdup(e, EDID_LENGTH, GFP_KERNEL); in nvidia_probe_i2c_connector()
168 *out_edid = edid; in nvidia_probe_i2c_connector()
170 return (edid) ? 0 : 1; in nvidia_probe_i2c_connector()
Dnv_proto.h42 #define nvidia_probe_i2c_connector(p, c, edid) (-1) argument
/linux-4.1.27/drivers/gpu/drm/nouveau/nvkm/engine/disp/
Doutpdp.c43 ret = nv_rdaux(outp->base.edid, DPCD_LC00_LINK_BW_SET, link, 2); in nvkm_output_dp_train()
58 ret = nv_rdaux(outp->base.edid, DPCD_LS02, stat, 3); in nvkm_output_dp_train()
107 struct nvkm_i2c_port *port = outp->base.edid; in nvkm_output_dp_enable()
128 struct nvkm_i2c_port *port = outp->base.edid; in nvkm_output_dp_detect()
131 ret = nv_rdaux(outp->base.edid, DPCD_RC00_DPCD_REV, in nvkm_output_dp_detect()
234 if (!outp->base.edid) { in nvkm_output_dp_create_()
259 .port = outp->base.edid->index, in nvkm_output_dp_create_()
273 .port = outp->base.edid->index, in nvkm_output_dp_create_()
Dpiornv50.c53 outp->edid = i2c->find_type(i2c, NV_I2C_TYPE_EXTDDC(outp->info.extdev)); in nv50_pior_tmds_ctor()
75 struct nvkm_i2c_port *port = outp->base.edid; in nv50_pior_dp_pattern()
90 struct nvkm_i2c_port *port = outp->base.edid; in nv50_pior_dp_lnk_ctl()
99 struct nvkm_i2c_port *port = outp->base.edid; in nv50_pior_dp_drv_ctl()
120 outp->base.edid = i2c->find_type(i2c, NV_I2C_TYPE_EXTAUX( in nv50_pior_dp_ctor()
Ddport.c101 return nv_wraux(outp->base.edid, DPCD_LC00_LINK_BW_SET, sink, 2); in dp_set_link_config()
114 nv_rdaux(outp->base.edid, DPCD_LC02, &sink_tp, 1); in dp_set_training_pattern()
117 nv_wraux(outp->base.edid, DPCD_LC02, &sink_tp, 1); in dp_set_training_pattern()
153 ret = nv_wraux(outp->base.edid, DPCD_LC03(0), dp->conf, 4); in dp_link_train_commit()
158 ret = nv_wraux(outp->base.edid, DPCD_LC0F, dp->pc2conf, 2); in dp_link_train_commit()
177 ret = nv_rdaux(outp->base.edid, DPCD_LS02, dp->stat, 6); in dp_link_train_update()
182 ret = nv_rdaux(outp->base.edid, DPCD_LS0C, &dp->pc2stat, 1); in dp_link_train_update()
Doutp.h17 struct nvkm_i2c_port *edid; member
Doutp.c93 outp->edid = outp->port; in nvkm_output_create_()
/linux-4.1.27/drivers/video/fbdev/savage/
Dsavagefb-i2c.c221 u8 *edid; in savagefb_probe_i2c_connector() local
224 edid = fb_ddc_read(&par->chan.adapter); in savagefb_probe_i2c_connector()
226 edid = NULL; in savagefb_probe_i2c_connector()
228 if (!edid) { in savagefb_probe_i2c_connector()
233 edid = kmemdup(e, EDID_LENGTH, GFP_KERNEL); in savagefb_probe_i2c_connector()
236 *out_edid = edid; in savagefb_probe_i2c_connector()
238 return (edid) ? 0 : 1; in savagefb_probe_i2c_connector()
Dsavagefb.h198 unsigned char *edid; member
Dsavagefb_driver.c2226 savagefb_probe_i2c_connector(info, &par->edid); in savagefb_probe()
2227 fb_edid_to_monspecs(par->edid, &info->monspecs); in savagefb_probe()
2228 kfree(par->edid); in savagefb_probe()
/linux-4.1.27/drivers/video/fbdev/aty/
Dradeon_i2c.c143 u8 *edid; in radeon_probe_i2c_connector() local
145 edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter); in radeon_probe_i2c_connector()
148 *out_edid = edid; in radeon_probe_i2c_connector()
149 if (!edid) { in radeon_probe_i2c_connector()
153 if (edid[0x14] & 0x80) { in radeon_probe_i2c_connector()
Dradeon_base.c2091 static ssize_t radeon_show_one_edid(char *buf, loff_t off, size_t count, const u8 *edid) in radeon_show_one_edid() argument
2093 return memory_read_from_buffer(buf, count, &off, edid, EDID_LENGTH); in radeon_show_one_edid()
/linux-4.1.27/drivers/gpu/drm/i2c/
Dadv7511.c46 struct edid *edid; member
242 if (adv7511->edid) in adv7511_set_config_csc()
243 config.hdmi_mode = drm_detect_hdmi_monitor(adv7511->edid); in adv7511_set_config_csc()
565 struct edid *edid; in adv7511_get_modes() local
579 edid = drm_do_get_edid(connector, adv7511_get_edid_block, adv7511); in adv7511_get_modes()
586 kfree(adv7511->edid); in adv7511_get_modes()
587 adv7511->edid = edid; in adv7511_get_modes()
588 if (!edid) in adv7511_get_modes()
591 drm_mode_connector_update_edid_property(connector, edid); in adv7511_get_modes()
592 count = drm_add_edid_modes(connector, edid); in adv7511_get_modes()
[all …]
Dtda998x_drv.c1099 struct edid *edid; in tda998x_encoder_get_modes() local
1105 edid = drm_do_get_edid(connector, read_edid_block, priv); in tda998x_encoder_get_modes()
1110 if (!edid) { in tda998x_encoder_get_modes()
1115 drm_mode_connector_update_edid_property(connector, edid); in tda998x_encoder_get_modes()
1116 n = drm_add_edid_modes(connector, edid); in tda998x_encoder_get_modes()
1117 priv->is_hdmi_sink = drm_detect_hdmi_monitor(edid); in tda998x_encoder_get_modes()
1118 kfree(edid); in tda998x_encoder_get_modes()
/linux-4.1.27/drivers/media/v4l2-core/
Dv4l2-subdev.c167 static int check_edid(struct v4l2_subdev *sd, struct v4l2_subdev_edid *edid) in check_edid() argument
169 if (edid->pad >= sd->entity.num_pads) in check_edid()
172 if (edid->blocks && edid->edid == NULL) in check_edid()
403 struct v4l2_subdev_edid *edid = arg; in subdev_do_ioctl() local
405 rval = check_edid(sd, edid); in subdev_do_ioctl()
409 return v4l2_subdev_call(sd, pad, get_edid, edid); in subdev_do_ioctl()
413 struct v4l2_subdev_edid *edid = arg; in subdev_do_ioctl() local
415 rval = check_edid(sd, edid); in subdev_do_ioctl()
419 return v4l2_subdev_call(sd, pad, set_edid, edid); in subdev_do_ioctl()
Dv4l2-compat-ioctl32.c765 compat_caddr_t edid; member
776 get_user(tmp, &up->edid) || in get_v4l2_edid32()
779 kp->edid = (__force u8 *)compat_ptr(tmp); in get_v4l2_edid32()
785 u32 tmp = (u32)((unsigned long)kp->edid); in put_v4l2_edid32()
791 put_user(tmp, &up->edid) || in put_v4l2_edid32()
Dv4l2-ioctl.c2439 struct v4l2_edid *edid = parg; in check_array_args() local
2441 if (edid->blocks) { in check_array_args()
2442 if (edid->blocks > 256) { in check_array_args()
2446 *user_ptr = (void __user *)edid->edid; in check_array_args()
2447 *kernel_ptr = (void **)&edid->edid; in check_array_args()
2448 *array_size = edid->blocks * 128; in check_array_args()
/linux-4.1.27/drivers/video/fbdev/i810/
Di810-i2c.c158 u8 *edid = NULL; in i810_probe_i2c_connector() local
162 edid = fb_ddc_read(&par->chan[conn].adapter); in i810_probe_i2c_connector()
168 edid = kmemdup(e, EDID_LENGTH, GFP_KERNEL); in i810_probe_i2c_connector()
172 *out_edid = edid; in i810_probe_i2c_connector()
174 return (edid) ? 0 : 1; in i810_probe_i2c_connector()
Di810.h271 u8 *edid; member
Di810_main.c1912 err = i810_probe_i2c_connector(info, &par->edid, i); in i810fb_find_init_mode()
1920 fb_edid_to_monspecs(par->edid, specs); in i810fb_find_init_mode()
2112 kfree(par->edid); in i810fb_release_resource()
/linux-4.1.27/drivers/video/fbdev/via/
Dvia_aux_edid.c36 unsigned char edid[EDID_LENGTH]; in query_edid() local
48 if (via_aux_read(drv, 0x00, edid, EDID_LENGTH)) { in query_edid()
49 fb_edid_to_monspecs(edid, spec); in query_edid()
/linux-4.1.27/drivers/gpu/drm/tilcdc/
Dtilcdc_tfp410.c190 struct edid *edid; in tfp410_connector_get_modes() local
193 edid = drm_get_edid(connector, tfp410_connector->mod->i2c); in tfp410_connector_get_modes()
195 drm_mode_connector_update_edid_property(connector, edid); in tfp410_connector_get_modes()
197 if (edid) { in tfp410_connector_get_modes()
198 ret = drm_add_edid_modes(connector, edid); in tfp410_connector_get_modes()
199 kfree(edid); in tfp410_connector_get_modes()
/linux-4.1.27/drivers/gpu/drm/omapdrm/
Domap_connector.c166 void *edid = kzalloc(MAX_EDID, GFP_KERNEL); in omap_connector_get_modes() local
168 if ((dssdrv->read_edid(dssdev, edid, MAX_EDID) > 0) && in omap_connector_get_modes()
169 drm_edid_is_valid(edid)) { in omap_connector_get_modes()
171 connector, edid); in omap_connector_get_modes()
172 n = drm_add_edid_modes(connector, edid); in omap_connector_get_modes()
175 drm_detect_hdmi_monitor(edid); in omap_connector_get_modes()
181 kfree(edid); in omap_connector_get_modes()
/linux-4.1.27/Documentation/devicetree/bindings/powerpc/fsl/
Ddiu.txt15 - edid : verbatim EDID data block describing attached display.
33 edid = [edid-data];
/linux-4.1.27/drivers/gpu/drm/imx/
Dparallel-display.c34 void *edid; member
61 if (imxpd->edid) { in imx_pd_connector_get_modes()
62 drm_mode_connector_update_edid_property(connector, imxpd->edid); in imx_pd_connector_get_modes()
63 num_modes = drm_add_edid_modes(connector, imxpd->edid); in imx_pd_connector_get_modes()
223 imxpd->edid = kmemdup(edidp, imxpd->edid_len, GFP_KERNEL); in imx_pd_bind()
263 kfree(imxpd->edid); in imx_pd_unbind()
Dimx-tve.c232 struct edid *edid; in imx_tve_connector_get_modes() local
238 edid = drm_get_edid(connector, tve->ddc); in imx_tve_connector_get_modes()
239 if (edid) { in imx_tve_connector_get_modes()
240 drm_mode_connector_update_edid_property(connector, edid); in imx_tve_connector_get_modes()
241 ret = drm_add_edid_modes(connector, edid); in imx_tve_connector_get_modes()
242 kfree(edid); in imx_tve_connector_get_modes()
Dimx-ldb.c62 void *edid; member
109 if (imx_ldb_ch->edid) { in imx_ldb_connector_get_modes()
111 imx_ldb_ch->edid); in imx_ldb_connector_get_modes()
112 num_modes = drm_add_edid_modes(connector, imx_ldb_ch->edid); in imx_ldb_connector_get_modes()
607 channel->edid = kmemdup(edidp, channel->edid_len, in imx_ldb_bind()
656 kfree(channel->edid); in imx_ldb_unbind()
/linux-4.1.27/Documentation/devicetree/bindings/fb/
Dsm501fb.txt18 - edid : verbatim EDID data block describing attached display.
33 edid = [edid-data];
/linux-4.1.27/drivers/video/fbdev/
Dudlfb.c760 static int dlfb_get_edid(struct dlfb_data *dev, char *edid, int len) in dlfb_get_edid() argument
780 edid[i] = rbuf[1]; in dlfb_get_edid()
799 void __user *edid = (void __user *)arg; in dlfb_ops_ioctl() local
800 if (copy_to_user(edid, dev->edid, dev->edid_size)) in dlfb_ops_ioctl()
927 kfree(dev->edid); in dlfb_free()
1236 char *edid; in dlfb_setup_modes() local
1242 edid = kmalloc(EDID_LENGTH, GFP_KERNEL); in dlfb_setup_modes()
1243 if (!edid) { in dlfb_setup_modes()
1258 i = dlfb_get_edid(dev, edid, EDID_LENGTH); in dlfb_setup_modes()
1261 fb_edid_to_monspecs(edid, &info->monspecs); in dlfb_setup_modes()
[all …]
Dsmscufx.c106 u8 *edid; /* null until we read edid from hw or get from sysfs */ member
999 u8 __user *edid = (u8 __user *)arg; in ufx_ops_ioctl() local
1000 if (copy_to_user(edid, dev->edid, dev->edid_size)) in ufx_ops_ioctl()
1433 static int ufx_read_edid(struct ufx_data *dev, u8 *edid, int edid_len) in ufx_read_edid() argument
1436 u32 *edid_u32 = (u32 *)edid; in ufx_read_edid()
1446 memset(edid, 0xff, EDID_LENGTH); in ufx_read_edid()
1470 if (edid[i] != 0xFF) { in ufx_read_edid()
1496 u8 *edid; in ufx_setup_modes() local
1502 edid = kmalloc(EDID_LENGTH, GFP_KERNEL); in ufx_setup_modes()
1503 if (!edid) { in ufx_setup_modes()
[all …]
Dsh_mobile_hdmi.c853 u8 edid[128]; in sh_hdmi_read_edid() local
860 edid[i] = (hdmi->htop1) ? in sh_hdmi_read_edid()
866 printk(KERN_DEBUG "%02X | %02X", i, edid[i]); in sh_hdmi_read_edid()
868 printk(KERN_CONT " %02X", edid[i]); in sh_hdmi_read_edid()
877 fb_edid_to_monspecs(edid, &hdmi->monspec); in sh_hdmi_read_edid()
878 hdmi->edid_blocks = edid[126] + 1; in sh_hdmi_read_edid()
884 edid[0], edid[2]); in sh_hdmi_read_edid()
885 fb_edid_add_monspecs(edid, &hdmi->monspec); in sh_hdmi_read_edid()
Di740fb.c1015 u8 *edid; in i740fb_probe() local
1082 edid = fb_ddc_read(&par->ddc_adapter); in i740fb_probe()
1083 if (edid) { in i740fb_probe()
1084 fb_edid_to_monspecs(edid, &info->monspecs); in i740fb_probe()
1085 kfree(edid); in i740fb_probe()
Dtdfxfb.c1366 u8 *edid = NULL; in tdfxfb_probe_i2c_connector() local
1370 edid = fb_ddc_read(&par->chan[0].adapter); in tdfxfb_probe_i2c_connector()
1372 if (edid) { in tdfxfb_probe_i2c_connector()
1373 fb_edid_to_monspecs(edid, specs); in tdfxfb_probe_i2c_connector()
1374 kfree(edid); in tdfxfb_probe_i2c_connector()
Ds3fb.c1289 u8 *edid = fb_ddc_read(&par->ddc_adapter); in s3_pci_probe() local
1291 if (edid) { in s3_pci_probe()
1292 fb_edid_to_monspecs(edid, &info->monspecs); in s3_pci_probe()
1293 kfree(edid); in s3_pci_probe()
/linux-4.1.27/include/acpi/
Dvideo.h24 int device_id, void **edid);
31 int device_id, void **edid) in acpi_video_get_edid() argument
/linux-4.1.27/drivers/video/fbdev/riva/
Drivafb-i2c.c154 u8 *edid = NULL; in riva_probe_i2c_connector() local
157 edid = fb_ddc_read(&par->chan[conn].adapter); in riva_probe_i2c_connector()
160 *out_edid = edid; in riva_probe_i2c_connector()
161 if (!edid) in riva_probe_i2c_connector()
/linux-4.1.27/drivers/gpu/drm/msm/hdmi/
Dhdmi_connector.c331 struct edid *edid; in hdmi_connector_get_modes() local
338 edid = drm_get_edid(connector, hdmi->i2c); in hdmi_connector_get_modes()
342 drm_mode_connector_update_edid_property(connector, edid); in hdmi_connector_get_modes()
344 if (edid) { in hdmi_connector_get_modes()
345 ret = drm_add_edid_modes(connector, edid); in hdmi_connector_get_modes()
346 kfree(edid); in hdmi_connector_get_modes()
/linux-4.1.27/drivers/gpu/drm/radeon/
Dradeon_connectors.c302 struct edid *radeon_connector_edid(struct drm_connector *connector) in radeon_connector_edid()
307 if (radeon_connector->edid) { in radeon_connector_edid()
308 return radeon_connector->edid; in radeon_connector_edid()
310 struct edid *edid = kmemdup(edid_blob->data, edid_blob->length, GFP_KERNEL); in radeon_connector_edid() local
311 if (edid) in radeon_connector_edid()
312 radeon_connector->edid = edid; in radeon_connector_edid()
314 return radeon_connector->edid; in radeon_connector_edid()
323 if (radeon_connector->edid) in radeon_connector_get_edid()
333 radeon_connector->edid = drm_get_edid(connector, in radeon_connector_get_edid()
342 radeon_connector->edid = drm_get_edid(&radeon_connector->base, in radeon_connector_get_edid()
[all …]
Dradeon_dp_mst.c179 struct edid *edid; in radeon_dp_mst_get_ddc_modes() local
182 edid = drm_dp_mst_get_edid(connector, &master->mst_mgr, radeon_connector->port); in radeon_dp_mst_get_ddc_modes()
183 radeon_connector->edid = edid; in radeon_dp_mst_get_ddc_modes()
184 DRM_DEBUG_KMS("edid retrieved %p\n", edid); in radeon_dp_mst_get_ddc_modes()
185 if (radeon_connector->edid) { in radeon_dp_mst_get_ddc_modes()
186 drm_mode_connector_update_edid_property(&radeon_connector->base, radeon_connector->edid); in radeon_dp_mst_get_ddc_modes()
187 ret = drm_add_edid_modes(&radeon_connector->base, radeon_connector->edid); in radeon_dp_mst_get_ddc_modes()
188 drm_edid_to_eld(&radeon_connector->base, radeon_connector->edid); in radeon_dp_mst_get_ddc_modes()
Dradeon_mode.h268 struct edid *bios_hardcoded_edid;
552 struct edid *edid; member
741 extern struct edid *radeon_connector_edid(struct drm_connector *connector);
885 extern struct edid *
Dradeon_combios.c373 struct edid *edid; in radeon_combios_check_hardcoded_edid() local
381 edid = kmalloc(size, GFP_KERNEL); in radeon_combios_check_hardcoded_edid()
382 if (edid == NULL) in radeon_combios_check_hardcoded_edid()
385 memcpy((unsigned char *)edid, raw, size); in radeon_combios_check_hardcoded_edid()
387 if (!drm_edid_is_valid(edid)) { in radeon_combios_check_hardcoded_edid()
388 kfree(edid); in radeon_combios_check_hardcoded_edid()
392 rdev->mode_info.bios_hardcoded_edid = edid; in radeon_combios_check_hardcoded_edid()
398 struct edid *
401 struct edid *edid; in radeon_bios_get_hardcoded_edid() local
404 edid = kmalloc(rdev->mode_info.bios_hardcoded_edid_size, GFP_KERNEL); in radeon_bios_get_hardcoded_edid()
[all …]
Dradeon_atombios.c1728 struct edid *edid; in radeon_atombios_get_lvds_info() local
1731 edid = kmalloc(edid_size, GFP_KERNEL); in radeon_atombios_get_lvds_info()
1732 if (edid) { in radeon_atombios_get_lvds_info()
1733 memcpy((u8 *)edid, (u8 *)&fake_edid_record->ucFakeEDIDString[0], in radeon_atombios_get_lvds_info()
1736 if (drm_edid_is_valid(edid)) { in radeon_atombios_get_lvds_info()
1737 rdev->mode_info.bios_hardcoded_edid = edid; in radeon_atombios_get_lvds_info()
1740 kfree(edid); in radeon_atombios_get_lvds_info()
/linux-4.1.27/drivers/gpu/drm/msm/edp/
Dedp_ctrl.c100 struct edid *edid; member
1195 kfree(ctrl->edid); in msm_edp_ctrl_destroy()
1196 ctrl->edid = NULL; in msm_edp_ctrl_destroy()
1236 struct drm_connector *connector, struct edid **edid) in msm_edp_ctrl_get_panel_info() argument
1242 if (ctrl->edid) { in msm_edp_ctrl_get_panel_info()
1243 if (edid) { in msm_edp_ctrl_get_panel_info()
1245 *edid = ctrl->edid; in msm_edp_ctrl_get_panel_info()
1264 ctrl->edid = drm_get_edid(connector, &ctrl->drm_aux->ddc); in msm_edp_ctrl_get_panel_info()
1265 if (!ctrl->edid) { in msm_edp_ctrl_get_panel_info()
1270 if (edid) in msm_edp_ctrl_get_panel_info()
[all …]
Dedp.h77 struct drm_connector *connector, struct edid **edid);
Dedp_connector.c51 struct edid *drm_edid = NULL; in edp_connector_get_modes()
/linux-4.1.27/Documentation/devicetree/bindings/video/bridge/
Dptn3460.txt8 - edid-emulation: The EDID emulation entry to use
31 edid-emulation = <5>;
/linux-4.1.27/Documentation/devicetree/bindings/drm/imx/
Dfsl-imx-drm.txt65 - edid: verbatim EDID data block describing attached display.
75 edid = [edid-data];
/linux-4.1.27/drivers/video/fbdev/omap2/displays-new/
Dconnector-dvi.c178 u8 *edid, int len) in dvic_read_edid() argument
187 r = dvic_ddc_read(ddata->i2c_adapter, edid, l, 0); in dvic_read_edid()
194 if (len > EDID_LENGTH && edid[0x7e] > 0) { in dvic_read_edid()
197 r = dvic_ddc_read(ddata->i2c_adapter, edid + EDID_LENGTH, in dvic_read_edid()
Dconnector-hdmi.c154 u8 *edid, int len) in hdmic_read_edid() argument
159 return in->ops.hdmi->read_edid(in, edid, len); in hdmic_read_edid()
Dencoder-tpd12s015.c142 u8 *edid, int len) in tpd_read_edid() argument
154 r = in->ops.hdmi->read_edid(in, edid, len); in tpd_read_edid()
/linux-4.1.27/drivers/gpu/drm/sti/
Dsti_hdmi.c575 struct edid *edid; in sti_hdmi_connector_get_modes() local
580 edid = drm_get_edid(connector, hdmi->ddc_adapt); in sti_hdmi_connector_get_modes()
581 if (!edid) in sti_hdmi_connector_get_modes()
584 count = drm_add_edid_modes(connector, edid); in sti_hdmi_connector_get_modes()
585 drm_mode_connector_update_edid_property(connector, edid); in sti_hdmi_connector_get_modes()
587 kfree(edid); in sti_hdmi_connector_get_modes()
/linux-4.1.27/drivers/gpu/drm/ast/
Dast_mode.c763 struct edid *edid; in ast_get_modes() local
768 edid = kmalloc(128, GFP_KERNEL); in ast_get_modes()
769 if (!edid) in ast_get_modes()
772 flags = ast_dp501_read_edid(connector->dev, (u8 *)edid); in ast_get_modes()
776 kfree(edid); in ast_get_modes()
779 edid = drm_get_edid(connector, &ast_connector->i2c->adapter); in ast_get_modes()
780 if (edid) { in ast_get_modes()
781 drm_mode_connector_update_edid_property(&ast_connector->base, edid); in ast_get_modes()
782 ret = drm_add_edid_modes(connector, edid); in ast_get_modes()
783 kfree(edid); in ast_get_modes()
/linux-4.1.27/include/uapi/video/
DKbuild2 header-y += edid.h
/linux-4.1.27/include/uapi/linux/
Dv4l2-common.h80 __u8 *edid; member
/linux-4.1.27/drivers/gpu/drm/panel/
Dpanel-simple.c239 struct edid *edid = drm_get_edid(panel->connector, p->ddc); in panel_simple_get_modes() local
240 drm_mode_connector_update_edid_property(panel->connector, edid); in panel_simple_get_modes()
241 if (edid) { in panel_simple_get_modes()
242 num += drm_add_edid_modes(panel->connector, edid); in panel_simple_get_modes()
243 kfree(edid); in panel_simple_get_modes()
/linux-4.1.27/include/video/
Dudlfb.h48 char *edid; /* null until we read edid from hw or get from sysfs */ member
/linux-4.1.27/drivers/gpu/drm/mgag200/
Dmgag200_mode.c1444 struct edid *edid; in mga_vga_get_modes() local
1447 edid = drm_get_edid(connector, &mga_connector->i2c->adapter); in mga_vga_get_modes()
1448 if (edid) { in mga_vga_get_modes()
1449 drm_mode_connector_update_edid_property(connector, edid); in mga_vga_get_modes()
1450 ret = drm_add_edid_modes(connector, edid); in mga_vga_get_modes()
1451 kfree(edid); in mga_vga_get_modes()
/linux-4.1.27/drivers/video/fbdev/omap2/dss/
Dhdmi4_core.c171 int hdmi4_read_edid(struct hdmi_core_data *core, u8 *edid, int len) in hdmi4_read_edid() argument
182 r = hdmi_core_ddc_edid(core, edid, 0); in hdmi4_read_edid()
188 if (len >= 128 * 2 && edid[0x7e] > 0) { in hdmi4_read_edid()
189 r = hdmi_core_ddc_edid(core, edid + 0x80, 1); in hdmi4_read_edid()
Dhdmi5_core.c199 int hdmi5_read_edid(struct hdmi_core_data *core, u8 *edid, int len) in hdmi5_read_edid() argument
209 r = hdmi_core_ddc_edid(core, edid, 0); in hdmi5_read_edid()
213 n = edid[0x7e]; in hdmi5_read_edid()
219 r = hdmi_core_ddc_edid(core, edid + i * EDID_LENGTH, i); in hdmi5_read_edid()
Dhdmi4_core.h263 int hdmi4_read_edid(struct hdmi_core_data *core, u8 *edid, int len);
Dhdmi5_core.h295 int hdmi5_read_edid(struct hdmi_core_data *core, u8 *edid, int len);
Dhdmi4.c447 u8 *edid, int len) in hdmi_read_edid() argument
460 r = read_edid(edid, len); in hdmi_read_edid()
Dhdmi5.c475 u8 *edid, int len) in hdmi_read_edid() argument
488 r = read_edid(edid, len); in hdmi_read_edid()
/linux-4.1.27/include/linux/
Dfb.h712 extern int fb_parse_edid(unsigned char *edid, struct fb_var_screeninfo *var);
714 extern void fb_edid_to_monspecs(unsigned char *edid,
716 extern void fb_edid_add_monspecs(unsigned char *edid,
/linux-4.1.27/include/media/
Dv4l2-ioctl.h272 int (*vidioc_g_edid) (struct file *file, void *fh, struct v4l2_edid *edid);
273 int (*vidioc_s_edid) (struct file *file, void *fh, struct v4l2_edid *edid);
Dv4l2-subdev.h523 int (*get_edid)(struct v4l2_subdev *sd, struct v4l2_edid *edid);
524 int (*set_edid)(struct v4l2_subdev *sd, struct v4l2_edid *edid);
/linux-4.1.27/Documentation/devicetree/bindings/gpu/
Dnvidia,tegra20-host1x.txt130 - nvidia,edid: supplies a binary EDID blob
156 - nvidia,edid: supplies a binary EDID blob
192 - nvidia,edid: supplies a binary EDID blob
220 - nvidia,edid: supplies a binary EDID blob
/linux-4.1.27/include/uapi/drm/
Dexynos_drm.h61 uint64_t edid; member
/linux-4.1.27/Documentation/EDID/
DHOWTO.txt54 created, it must be checked with the "edid-decode" utility which will
/linux-4.1.27/drivers/acpi/
Dvideo.c671 union acpi_object **edid, ssize_t length) in acpi_video_device_EDID() argument
680 *edid = NULL; in acpi_video_device_EDID()
698 *edid = obj; in acpi_video_device_EDID()
1411 void **edid) in acpi_video_get_edid() argument
1470 *edid = buffer->buffer.pointer; in acpi_video_get_edid()
/linux-4.1.27/Documentation/fb/
Dudlfb.txt129 edid If a valid EDID blob is written to this file (typically
138 which can be passed to utilities like parse-edid.
/linux-4.1.27/include/xen/interface/
Dplatform.h246 GUEST_HANDLE(uchar) edid;
/linux-4.1.27/drivers/video/fbdev/omap2/omapfb/
Domapfb-main.c2251 u8 *edid; in omapfb_find_best_mode() local
2258 edid = kmalloc(len, GFP_KERNEL); in omapfb_find_best_mode()
2259 if (edid == NULL) in omapfb_find_best_mode()
2262 r = display->driver->read_edid(display, edid, len); in omapfb_find_best_mode()
2272 fb_edid_to_monspecs(edid, specs); in omapfb_find_best_mode()
2316 kfree(edid); in omapfb_find_best_mode()
/linux-4.1.27/drivers/gpu/drm/nouveau/dispnv04/
Ddfp.c345 if (nv_connector->edid && in nv04_dfp_mode_set()
347 duallink = (((u8 *)nv_connector->edid)[121] == 2); in nv04_dfp_mode_set()
/linux-4.1.27/arch/powerpc/boot/dts/
Dac14xx.dts260 edid = [00 FF FF FF FF FF FF 00 14 94 00 00 00 00 00 00
/linux-4.1.27/arch/arm/boot/dts/
Dexynos5250-snow.dts186 edid-emulation = <5>;
/linux-4.1.27/Documentation/
Dkernel-parameters.txt924 edid/1024x768.bin, edid/1280x1024.bin,
925 edid/1680x1050.bin, or edid/1920x1080.bin is given