Home
last modified time | relevance | path

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

12345

/linux/drivers/gpu/drm/
H A Ddrm_edid.c1609 const struct edid *edid; member
1612 static int edid_hfeeodb_extension_block_count(const struct edid *edid);
1614 static int edid_hfeeodb_block_count(const struct edid *edid) in edid_hfeeodb_block_count() argument
1616 int eeodb = edid_hfeeodb_extension_block_count(edid); in edid_hfeeodb_block_count()
1621 static int edid_extension_block_count(const struct edid *edid) in edid_extension_block_count() argument
1623 return edid->extensions; in edid_extension_block_count()
1626 static int edid_block_count(const struct edid *edid) in edid_block_count() argument
1628 return edid_extension_block_count(edid) + 1; in edid_block_count()
1636 static int edid_size(const struct edid *edid) in edid_size() argument
1638 return edid_size_by_blocks(edid_block_count(edid)); in edid_size()
[all …]
/linux/drivers/video/fbdev/core/
H A Dfbmon.c150 static int check_edid(unsigned char *edid) in check_edid() argument
152 unsigned char *block = edid + ID_MANUFACTURER_NAME, manufacturer[4]; in check_edid()
175 if (edid[i] != edid_v1_header[i]) { in check_edid()
182 b = edid + EDID_STRUCT_DISPLAY; in check_edid()
189 b = edid + DETAILED_TIMING_DESCRIPTIONS_START; in check_edid()
212 static void fix_edid(unsigned char *edid, int fix) in fix_edid() argument
220 memcpy(edid, edid_v1_header, 8); in fix_edid()
224 b = edid + EDID_STRUCT_DISPLAY; in fix_edid()
226 edid[127] += 0x80; in fix_edid()
230 b = edid + DETAILED_TIMING_DESCRIPTIONS_START; in fix_edid()
[all …]
/linux/drivers/media/cec/usb/extron-da-hd-4k-plus/
H A Dextron-da-hd-4k-plus.c253 const u8 *edid = port->edid; in extron_parse_edid() local
262 port->est_i = edid[0x23]; in extron_parse_edid()
263 port->est_ii = edid[0x24]; in extron_parse_edid()
267 const u8 *dtd = edid + 0x36 + i * 18; in extron_parse_edid()
293 edid += 128; in extron_parse_edid()
296 if (edid[0] != 0x02 || edid[1] != 0x03) in extron_parse_edid()
300 d = edid[2] & 0x7f; in extron_parse_edid()
309 u8 tag = edid[i] >> 5; in extron_parse_edid()
310 u8 len = edid[i] & 0x1f; in extron_parse_edid()
319 if (memchr(edid + i + 1, 97, len)) in extron_parse_edid()
[all …]
/linux/drivers/gpu/drm/gma500/
H A Dcdv_intel_hdmi.c132 struct edid *edid = NULL; in cdv_hdmi_detect() local
135 edid = drm_get_edid(connector, connector->ddc); 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()
213 struct edid *edid = NULL; in cdv_hdmi_get_modes() local
216 edid = drm_get_edid(connector, connector->ddc); in cdv_hdmi_get_modes()
217 if (edid) { in cdv_hdmi_get_modes()
[all …]
H A Doaktrail_lvds.c300 struct edid *edid; in oaktrail_lvds_init() local
360 edid = NULL; in oaktrail_lvds_init()
365 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()
386 if (edid) { in oaktrail_lvds_init()
387 drm_connector_update_edid_property(connector, edid); in oaktrail_lvds_init()
388 drm_add_edid_modes(connector, edid); in oaktrail_lvds_init()
389 kfree(edid); in oaktrail_lvds_init()
H A Dpsb_intel_sdvo.c1232 static struct edid *
1240 static struct edid *
1254 struct edid *edid; in psb_intel_sdvo_hdmi_sink_detect() local
1256 edid = psb_intel_sdvo_get_edid(connector); in psb_intel_sdvo_hdmi_sink_detect()
1258 if (edid == NULL && psb_intel_sdvo_multifunc_encoder(psb_intel_sdvo)) { in psb_intel_sdvo_hdmi_sink_detect()
1267 edid = psb_intel_sdvo_get_edid(connector); in psb_intel_sdvo_hdmi_sink_detect()
1268 if (edid) in psb_intel_sdvo_hdmi_sink_detect()
1275 if (edid == NULL) in psb_intel_sdvo_hdmi_sink_detect()
1283 if (edid == NULL) in psb_intel_sdvo_hdmi_sink_detect()
1284 edid = psb_intel_sdvo_get_analog_edid(connector); in psb_intel_sdvo_hdmi_sink_detect()
[all …]
/linux/drivers/gpu/drm/nouveau/
H A Dnouveau_connector.c400 kfree(nv_connector->edid); in nouveau_connector_destroy()
489 const void *edid = of_get_property(cn, "EDID", NULL); in nouveau_connector_of_detect() local
492 if (nv_encoder->dcb->i2c_index == idx && edid) { in nouveau_connector_of_detect()
493 nv_connector->edid = in nouveau_connector_of_detect()
494 kmemdup(edid, EDID_LENGTH, GFP_KERNEL); in nouveau_connector_of_detect()
551 struct edid *edid) in nouveau_connector_set_edid() argument
553 if (nv_connector->edid != edid) { in nouveau_connector_set_edid()
554 struct edid *old_edid = nv_connector->edid; in nouveau_connector_set_edid()
556 drm_connector_update_edid_property(&nv_connector->base, edid); in nouveau_connector_set_edid()
558 nv_connector->edid = edid; in nouveau_connector_set_edid()
[all …]
/linux/drivers/gpu/drm/amd/display/amdgpu_dm/
H A Damdgpu_dm_helpers.c52 static u32 edid_extract_panel_id(struct edid *edid) in edid_extract_panel_id() argument
54 return (u32)edid->mfg_id[0] << 24 | in edid_extract_panel_id()
55 (u32)edid->mfg_id[1] << 16 | in edid_extract_panel_id()
56 (u32)EDID_PRODUCT_ID(edid); in edid_extract_panel_id()
59 static void apply_edid_quirks(struct drm_device *dev, struct edid *edid, struct dc_edid_caps *edid_… in apply_edid_quirks() argument
61 uint32_t panel_id = edid_extract_panel_id(edid); in apply_edid_quirks()
106 const struct dc_edid *edid, in dm_helpers_parse_edid_caps() argument
112 struct edid *edid_buf = edid ? (struct edid *) edid->raw_edid : NULL; in dm_helpers_parse_edid_caps()
121 if (!edid_caps || !edid) in dm_helpers_parse_edid_caps()
147 sad_count = drm_edid_to_sad((struct edid *) edid->raw_edid, &sads); in dm_helpers_parse_edid_caps()
[all …]
/linux/include/media/
H A Dcec-notifier.h16 struct edid;
97 const struct edid *edid);
142 const struct edid *edid) in cec_notifier_set_phys_addr_from_edid() argument
/linux/drivers/video/fbdev/nvidia/
H A 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()
/linux/drivers/media/i2c/
H A Dtda1997x.c273 u8 edid[256]; member
276 } edid; member
572 state->edid.present = 1; in tda1997x_delayed_work_enable_hpd()
1841 static int tda1997x_get_edid(struct v4l2_subdev *sd, struct v4l2_edid *edid) in tda1997x_get_edid() argument
1845 v4l_dbg(1, debug, state->client, "%s pad=%d\n", __func__, edid->pad); in tda1997x_get_edid()
1846 memset(edid->reserved, 0, sizeof(edid->reserved)); in tda1997x_get_edid()
1848 if (edid->start_block == 0 && edid->blocks == 0) { in tda1997x_get_edid()
1849 edid->blocks = state->edid.blocks; in tda1997x_get_edid()
1853 if (!state->edid.present) in tda1997x_get_edid()
1856 if (edid->start_block >= state->edid.blocks) in tda1997x_get_edid()
[all …]
/linux/drivers/video/fbdev/savage/
H A 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()
/linux/drivers/media/cec/core/
H A Dcec-notifier.c205 const struct edid *edid) in cec_notifier_set_phys_addr_from_edid() argument
212 if (edid && edid->extensions) in cec_notifier_set_phys_addr_from_edid()
213 pa = cec_get_edid_phys_addr((const u8 *)edid, in cec_notifier_set_phys_addr_from_edid()
214 EDID_LENGTH * (edid->extensions + 1), NULL); in cec_notifier_set_phys_addr_from_edid()
/linux/drivers/video/fbdev/aty/
H A Dradeon_i2c.c144 u8 *edid; in radeon_probe_i2c_connector() local
146 edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter); in radeon_probe_i2c_connector()
149 *out_edid = edid; in radeon_probe_i2c_connector()
150 if (!edid) { in radeon_probe_i2c_connector()
154 if (edid[0x14] & 0x80) { in radeon_probe_i2c_connector()
/linux/drivers/media/v4l2-core/
H A Dv4l2-dv-timings.c1029 unsigned int v4l2_num_edid_blocks(const u8 *edid, unsigned int max_blocks) in v4l2_num_edid_blocks() argument
1033 if (!edid || !max_blocks) in v4l2_num_edid_blocks()
1042 blocks = edid[126] + 1; in v4l2_num_edid_blocks()
1046 edid[128] == 2 && // The first extension block is type CTA-861 in v4l2_num_edid_blocks()
1047 edid[133] == 0x78 && // Identifier for the EEODB in v4l2_num_edid_blocks()
1048 (edid[132] & 0xe0) == 0xe0 && // Tag Code == 7 in v4l2_num_edid_blocks()
1049 (edid[132] & 0x1f) >= 2 && // Length >= 2 in v4l2_num_edid_blocks()
1050 edid[134] > 1) // Number of extension blocks is sane in v4l2_num_edid_blocks()
1051 blocks = edid[134] + 1; in v4l2_num_edid_blocks()
1067 u16 v4l2_get_edid_phys_addr(const u8 *edid, unsigned int size, in v4l2_get_edid_phys_addr() argument
[all …]
/linux/drivers/firmware/efi/libstub/
H A Dgop.c417 static void setup_edid_info(struct edid_info *edid, u32 gop_size_of_edid, u8 *gop_edid) in setup_edid_info() argument
420 memset(edid->dummy, 0, sizeof(edid->dummy)); in setup_edid_info()
422 memcpy(edid->dummy, gop_edid, min(gop_size_of_edid, sizeof(edid->dummy))); in setup_edid_info()
481 efi_status_t efi_setup_graphics(struct screen_info *si, struct edid_info *edid) in efi_setup_graphics() argument
507 if (edid) { in efi_setup_graphics()
517 gop_edid = efi_table_attr(active_edid, edid); in efi_setup_graphics()
524 gop_edid = efi_table_attr(discovered_edid, edid); in efi_setup_graphics()
528 setup_edid_info(edid, gop_size_of_edid, gop_edid); in efi_setup_graphics()
/linux/drivers/gpu/drm/vboxvideo/
H A Dvbox_mode.c646 unsigned char edid[EDID_SIZE] = { in vbox_set_edid() local
691 edid[12] = width & 0xff; in vbox_set_edid()
692 edid[13] = width >> 8; in vbox_set_edid()
693 edid[14] = height & 0xff; in vbox_set_edid()
694 edid[15] = height >> 8; in vbox_set_edid()
695 edid[54] = clock & 0xff; in vbox_set_edid()
696 edid[55] = clock >> 8; in vbox_set_edid()
697 edid[56] = width & 0xff; in vbox_set_edid()
698 edid[58] = (width >> 4) & 0xf0; in vbox_set_edid()
699 edid[59] = height & 0xff; in vbox_set_edid()
[all …]
/linux/drivers/video/fbdev/i810/
H A 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()
/linux/drivers/video/fbdev/
H A Dudlfb.c785 static int dlfb_get_edid(struct dlfb_data *dlfb, char *edid, int len) in dlfb_get_edid() argument
805 edid[i] = rbuf[1]; in dlfb_get_edid()
824 void __user *edid = (void __user *)arg; in dlfb_ops_ioctl() local
825 if (copy_to_user(edid, dlfb->edid, dlfb->edid_size)) in dlfb_ops_ioctl()
962 kfree(dlfb->edid); in dlfb_ops_destroy()
1245 char *edid; in dlfb_setup_modes() local
1258 edid = kmalloc(EDID_LENGTH, GFP_KERNEL); in dlfb_setup_modes()
1259 if (!edid) { in dlfb_setup_modes()
1274 i = dlfb_get_edid(dlfb, edid, EDID_LENGTH); in dlfb_setup_modes()
1277 fb_edid_to_monspecs(edid, &info->monspecs); in dlfb_setup_modes()
[all …]
H A Dsmscufx.c102 u8 *edid; /* null until we read edid from hw or get from sysfs */ member
941 u8 __user *edid = (u8 __user *)arg; in ufx_ops_ioctl() local
942 if (copy_to_user(edid, dev->edid, dev->edid_size)) in ufx_ops_ioctl()
1398 static int ufx_read_edid(struct ufx_data *dev, u8 *edid, int edid_len) in ufx_read_edid() argument
1401 u32 *edid_u32 = (u32 *)edid; in ufx_read_edid()
1411 memset(edid, 0xff, EDID_LENGTH); in ufx_read_edid()
1435 if (edid[i] != 0xFF) { in ufx_read_edid()
1461 u8 *edid; in ufx_setup_modes() local
1467 edid = kmalloc(EDID_LENGTH, GFP_KERNEL); in ufx_setup_modes()
1468 if (!edid) { in ufx_setup_modes()
[all …]
/linux/Documentation/devicetree/bindings/powerpc/fsl/
H A Ddiu.txt13 - edid : verbatim EDID data block describing attached display.
31 edid = [edid-data];
/linux/drivers/video/fbdev/via/
H A Dvia_aux_edid.c21 unsigned char edid[EDID_LENGTH]; in query_edid() local
33 if (via_aux_read(drv, 0x00, edid, EDID_LENGTH)) { in query_edid()
34 fb_edid_to_monspecs(edid, spec); in query_edid()
/linux/Documentation/devicetree/bindings/display/
H A Dsm501fb.txt16 - edid : verbatim EDID data block describing attached display.
31 edid = [edid-data];
/linux/drivers/video/fbdev/riva/
H A 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/drivers/gpu/drm/bridge/
H A Dsil-sii8620.c85 struct edid *edid; member
496 if (!ctx->edid) { in sii8620_identify_sink()
503 if (drm_detect_hdmi_monitor(ctx->edid)) in sii8620_identify_sink()
508 drm_edid_get_monitor_name(ctx->edid, sink_name, ARRAY_SIZE(sink_name)); in sii8620_identify_sink()
771 u8 *edid; in sii8620_fetch_edid() local
796 edid = kmalloc(EDID_LENGTH, GFP_KERNEL); in sii8620_fetch_edid()
797 if (!edid) { in sii8620_fetch_edid()
823 kfree(edid); in sii8620_fetch_edid()
824 edid = NULL; in sii8620_fetch_edid()
837 kfree(edid); in sii8620_fetch_edid()
[all …]

12345