Lines Matching refs:info
2928 const struct drm_display_info *info = &connector->display_info;
2936 if (info->quirks & EDID_QUIRK_PREFER_LARGE_60)
2938 if (info->quirks & EDID_QUIRK_PREFER_LARGE_75)
3341 * rate (because it came from detailed or CVT info), use that
3435 * timing block contains enough info for us to create and return a new struct
3442 const struct drm_display_info *info = &connector->display_info;
3476 if (info->quirks & EDID_QUIRK_FORCE_REDUCED_BLANKING) {
3488 if (info->quirks & EDID_QUIRK_135_CLOCK_TOO_HIGH)
3519 if (info->quirks & EDID_QUIRK_DETAILED_SYNC_PP) {
3532 if (info->quirks & EDID_QUIRK_DETAILED_IN_CM) {
3537 if (info->quirks & EDID_QUIRK_DETAILED_USE_MAXIMUM_SIZE) {
4519 const struct drm_display_info *info = &connector->display_info;
4522 if (!info->vics || vic_index >= info->vics_len || !info->vics[vic_index])
4525 return drm_display_mode_from_cea_vic(dev, info->vics[vic_index]);
4592 const struct drm_display_info *info = &connector->display_info;
4595 if (!info->vics)
4598 for (i = 0; i < info->vics_len; i++) {
5218 struct drm_display_info *info = &connector->display_info;
5249 info->color_formats |= DRM_COLOR_FORMAT_YCBCR420;
5523 const struct drm_display_info *info = &connector->display_info;
5538 eld[DRM_ELD_CEA_EDID_VER_MNL] = info->cea_rev << DRM_ELD_CEA_EDID_VER_SHIFT;
5862 struct drm_display_info *info = &connector->display_info;
5871 vics = krealloc(info->vics, info->vics_len + len, GFP_KERNEL);
5875 vic_index = info->vics_len;
5876 info->vics_len += len;
5877 info->vics = vics;
5885 info->vics[vic_index++] = vic;
5897 struct drm_display_info *info = &connector->display_info;
5898 struct drm_hdmi_info *hdmi = &info->hdmi;
5899 int i, len = min_t(int, info->vics_len, BITS_PER_TYPE(y420cmdb_map));
5902 u8 vic = info->vics[i];
5911 const struct drm_display_info *info = &connector->display_info;
5914 if (!vic || !info->vics)
5917 for (i = 0; i < info->vics_len; i++) {
5918 if (info->vics[i] == vic)
5929 struct drm_display_info *info = &connector->display_info;
5930 struct drm_hdmi_info *hdmi = &info->hdmi;
5941 info->color_formats |= DRM_COLOR_FORMAT_YCBCR420;
5947 struct drm_display_info *info = &connector->display_info;
5953 info->rgb_quant_range_selectable = true;
6076 struct drm_display_info *info = &connector->display_info;
6077 struct drm_hdmi_info *hdmi = &info->hdmi;
6083 info->has_hdmi_infoframe = true;
6107 info->max_tmds_clock = max_tmds_clock;
6141 struct drm_display_info *info = &connector->display_info;
6145 info->bpc = 8;
6152 info->edid_hdmi_rgb444_dc_modes |= DRM_EDID_HDMI_DC_30;
6159 info->edid_hdmi_rgb444_dc_modes |= DRM_EDID_HDMI_DC_36;
6166 info->edid_hdmi_rgb444_dc_modes |= DRM_EDID_HDMI_DC_48;
6179 info->bpc = dc_bpc;
6183 info->edid_hdmi_ycbcr444_dc_modes = info->edid_hdmi_rgb444_dc_modes;
6202 struct drm_display_info *info = &connector->display_info;
6205 info->is_hdmi = true;
6208 info->dvi_dual = db[6] & 1;
6210 info->max_tmds_clock = db[7] * 5000;
6219 info->has_hdmi_infoframe = true;
6223 info->dvi_dual, info->max_tmds_clock);
6235 struct drm_display_info *info = &connector->display_info;
6241 info->non_desktop = true;
6251 struct drm_display_info *info = &connector->display_info;
6263 if (!info->cea_rev)
6264 info->cea_rev = edid_ext[1];
6266 if (info->cea_rev != edid_ext[1])
6270 info->cea_rev, edid_ext[1]);
6273 info->color_formats = DRM_COLOR_FORMAT_RGB444;
6275 info->color_formats |= DRM_COLOR_FORMAT_YCBCR444;
6277 info->color_formats |= DRM_COLOR_FORMAT_YCBCR422;
6279 info->has_audio = true;
6307 info->has_audio = true;
6319 struct drm_display_info *info = &closure->connector->display_info;
6320 struct drm_monitor_range_info *monitor_range = &info->monitor_range;
6354 const struct drm_display_info *info = &connector->display_info;
6371 info->monitor_range.min_vfreq, info->monitor_range.max_vfreq);
6379 struct drm_display_info *info = &connector->display_info;
6404 info->mso_stream_count = 0;
6407 info->mso_stream_count = 2; /* 2 or 4 links */
6410 info->mso_stream_count = 4; /* 4 links */
6414 if (!info->mso_stream_count) {
6415 info->mso_pixel_overlap = 0;
6419 info->mso_pixel_overlap = FIELD_GET(DISPLAYID_VESA_MSO_OVERLAP, vesa->mso);
6420 if (info->mso_pixel_overlap > 8) {
6424 info->mso_pixel_overlap);
6425 info->mso_pixel_overlap = 8;
6431 info->mso_stream_count, info->mso_pixel_overlap);
6453 struct drm_display_info *info = &connector->display_info;
6455 info->width_mm = 0;
6456 info->height_mm = 0;
6458 info->bpc = 0;
6459 info->color_formats = 0;
6460 info->cea_rev = 0;
6461 info->max_tmds_clock = 0;
6462 info->dvi_dual = false;
6463 info->is_hdmi = false;
6464 info->has_audio = false;
6465 info->has_hdmi_infoframe = false;
6466 info->rgb_quant_range_selectable = false;
6467 memset(&info->hdmi, 0, sizeof(info->hdmi));
6469 info->edid_hdmi_rgb444_dc_modes = 0;
6470 info->edid_hdmi_ycbcr444_dc_modes = 0;
6472 info->non_desktop = 0;
6473 memset(&info->monitor_range, 0, sizeof(info->monitor_range));
6474 memset(&info->luminance_range, 0, sizeof(info->luminance_range));
6476 info->mso_stream_count = 0;
6477 info->mso_pixel_overlap = 0;
6478 info->max_dsc_bpp = 0;
6480 kfree(info->vics);
6481 info->vics = NULL;
6482 info->vics_len = 0;
6484 info->quirks = 0;
6490 struct drm_display_info *info = &connector->display_info;
6499 info->non_desktop = true;
6513 struct drm_display_info *info = &connector->display_info;
6524 info->quirks = edid_get_quirks(drm_edid);
6526 info->width_mm = edid->width_cm * 10;
6527 info->height_mm = edid->height_cm * 10;
6537 info->color_formats |= DRM_COLOR_FORMAT_RGB444;
6549 if (info->bpc == 0 && edid->revision == 3 &&
6551 info->bpc = 8;
6554 connector->base.id, connector->name, info->bpc);
6563 info->bpc = 6;
6566 info->bpc = 8;
6569 info->bpc = 10;
6572 info->bpc = 12;
6575 info->bpc = 14;
6578 info->bpc = 16;
6582 info->bpc = 0;
6588 connector->base.id, connector->name, info->bpc);
6591 info->color_formats |= DRM_COLOR_FORMAT_YCBCR444;
6593 info->color_formats |= DRM_COLOR_FORMAT_YCBCR422;
6598 if (info->quirks & EDID_QUIRK_NON_DESKTOP) {
6601 info->non_desktop ? " (redundant quirk)" : "");
6602 info->non_desktop = true;
6605 if (info->quirks & EDID_QUIRK_CAP_DSC_15BPP)
6606 info->max_dsc_bpp = 15;
6608 if (info->quirks & EDID_QUIRK_FORCE_6BPC)
6609 info->bpc = 6;
6611 if (info->quirks & EDID_QUIRK_FORCE_8BPC)
6612 info->bpc = 8;
6614 if (info->quirks & EDID_QUIRK_FORCE_10BPC)
6615 info->bpc = 10;
6617 if (info->quirks & EDID_QUIRK_FORCE_12BPC)
6618 info->bpc = 12;
6620 /* Depends on info->cea_rev set by drm_parse_cea_ext() above */
6719 const struct drm_display_info *info = &connector->display_info;
6749 if (info->quirks & (EDID_QUIRK_PREFER_LARGE_60 | EDID_QUIRK_PREFER_LARGE_75))
6814 * Update the connector display info, ELD, HDR metadata, relevant properties,
7146 const struct drm_display_info *info = &connector->display_info;
7158 if (info->rgb_quant_range_selectable ||