Lines Matching refs:db
1921 u8 *db = &info->data[i + 1]; in cea_is_hdmi_vsdb_present() local
1922 u32 oui = db[0] | (db[1] << 8) | (db[2] << 16); in cea_is_hdmi_vsdb_present()
2521 cea_db_payload_len(const u8 *db) in cea_db_payload_len() argument
2523 return db[0] & 0x1f; in cea_db_payload_len()
2527 cea_db_extended_tag(const u8 *db) in cea_db_extended_tag() argument
2529 return db[1]; in cea_db_extended_tag()
2533 cea_db_tag(const u8 *db) in cea_db_tag() argument
2535 return db[0] >> 5; in cea_db_tag()
2579 static bool cea_db_is_hdmi_vsdb(const u8 *db) in cea_db_is_hdmi_vsdb() argument
2583 if (cea_db_tag(db) != EDID_CEA861_DB_VENDOR) in cea_db_is_hdmi_vsdb()
2586 if (cea_db_payload_len(db) < 5) in cea_db_is_hdmi_vsdb()
2589 hdmi_id = db[1] | (db[2] << 8) | (db[3] << 16); in cea_db_is_hdmi_vsdb()
2594 static bool cea_db_is_hdmi_forum_vsdb(const u8 *db) in cea_db_is_hdmi_forum_vsdb() argument
2598 if (cea_db_tag(db) != EDID_CEA861_DB_VENDOR) in cea_db_is_hdmi_forum_vsdb()
2601 if (cea_db_payload_len(db) < 7) in cea_db_is_hdmi_forum_vsdb()
2604 oui = db[3] << 16 | db[2] << 8 | db[1]; in cea_db_is_hdmi_forum_vsdb()
2609 static bool cea_db_is_y420cmdb(const u8 *db) in cea_db_is_y420cmdb() argument
2611 if (cea_db_tag(db) != EDID_CEA861_DB_USE_EXTENDED) in cea_db_is_y420cmdb()
2614 if (!cea_db_payload_len(db)) in cea_db_is_y420cmdb()
2617 if (cea_db_extended_tag(db) != EXT_VIDEO_CAP_BLOCK_Y420CMDB) in cea_db_is_y420cmdb()
2623 static bool cea_db_is_y420vdb(const u8 *db) in cea_db_is_y420vdb() argument
2625 if (cea_db_tag(db) != EDID_CEA861_DB_USE_EXTENDED) in cea_db_is_y420vdb()
2628 if (!cea_db_payload_len(db)) in cea_db_is_y420vdb()
2631 if (cea_db_extended_tag(db) != EXT_VIDEO_DATA_BLOCK_420) in cea_db_is_y420vdb()
2722 int do_cea_modes(struct hdmi_edid_data *data, const u8 *db, u8 len) in do_cea_modes() argument
2730 mode = drm_display_mode_from_vic_index(db, len, i); in do_cea_modes()
2742 drm_add_cmdb_modes(db[i], hdmi); in do_cea_modes()
2908 do_hdmi_vsdb_modes(const u8 *db, u8 len, const u8 *video_db, u8 video_len, in do_hdmi_vsdb_modes() argument
2920 if (!(db[8] & (1 << 5))) in do_hdmi_vsdb_modes()
2924 if (db[8] & (1 << 7)) in do_hdmi_vsdb_modes()
2928 if (db[8] & (1 << 6)) in do_hdmi_vsdb_modes()
2939 if (db[8 + offset] & (1 << 7)) { in do_hdmi_vsdb_modes()
2943 multi_present = (db[8 + offset] & 0x60) >> 5; in do_hdmi_vsdb_modes()
2947 vic_len = db[8 + offset] >> 5; in do_hdmi_vsdb_modes()
2948 hdmi_3d_len = db[8 + offset] & 0x1f; in do_hdmi_vsdb_modes()
2953 vic = db[9 + offset + i]; in do_hdmi_vsdb_modes()
2974 structure_all = (db[8 + offset] << 8) | db[9 + offset]; in do_hdmi_vsdb_modes()
2978 mask = (db[10 + offset] << 8) | db[11 + offset]; in do_hdmi_vsdb_modes()
2999 detail_present = ((db[8 + offset + i] & 0x0f) > 7); in do_hdmi_vsdb_modes()
3005 vic_index = db[8 + offset + i] >> 4; in do_hdmi_vsdb_modes()
3008 switch (db[8 + offset + i] & 0x0f) { in do_hdmi_vsdb_modes()
3017 if ((db[9 + offset + i] >> 4) == 1) in do_hdmi_vsdb_modes()
3067 const u8 *db) in drm_parse_y420cmdb_bitmap() argument
3071 u8 map_len = cea_db_payload_len(db) - 1; in drm_parse_y420cmdb_bitmap()
3098 map |= (u64)db[2 + count] << (8 * count); in drm_parse_y420cmdb_bitmap()
3142 const u8 *db) in drm_parse_ycbcr420_deep_color_info() argument
3147 dc_mask = db[7] & DRM_EDID_YCBCR420_DC_MASK; in drm_parse_ycbcr420_deep_color_info()
3352 static int cea_db_tag(const u8 *db);
3353 static int cea_db_payload_len(const u8 *db);
3354 static int cea_db_extended_tag(const u8 *db);
3356 static bool cea_db_is_extended_tag(const void *db, int tag) in cea_db_is_extended_tag() argument
3358 return cea_db_tag(db) == CTA_DB_EXTENDED_TAG && in cea_db_is_extended_tag()
3359 cea_db_payload_len(db) >= 1 && in cea_db_is_extended_tag()
3360 cea_db_extended_tag(db) == tag; in cea_db_is_extended_tag()
3363 static bool cea_db_is_hdmi_forum_eeodb(const void *db) in cea_db_is_hdmi_forum_eeodb() argument
3365 return cea_db_is_extended_tag(db, CTA_EXT_DB_HF_EEODB) && in cea_db_is_hdmi_forum_eeodb()
3366 cea_db_payload_len(db) >= 2; in cea_db_is_hdmi_forum_eeodb()
3528 drm_parse_hdmi_vsdb_video(struct hdmi_edid_data *data, const u8 *db) in drm_parse_hdmi_vsdb_video() argument
3531 u8 len = cea_db_payload_len(db); in drm_parse_hdmi_vsdb_video()
3534 info->dvi_dual = db[6] & 1; in drm_parse_hdmi_vsdb_video()
3536 info->max_tmds_clock = db[7] * 5000; in drm_parse_hdmi_vsdb_video()
3538 drm_parse_hdmi_deep_color_info(data, db); in drm_parse_hdmi_vsdb_video()
3544 static bool cea_db_is_scdb(const u8 *db) in cea_db_is_scdb() argument
3548 if (cea_db_tag(db) != USE_EXTENDED_TAG) in cea_db_is_scdb()
3551 if (cea_db_payload_len(db) < 7) in cea_db_is_scdb()
3554 oui = db[3] << 16 | db[2] << 8 | db[1]; in cea_db_is_scdb()
3583 const u8 *db = &edid_ext[i]; in drm_parse_cea_ext() local
3585 if (cea_db_is_hdmi_vsdb(db)) in drm_parse_cea_ext()
3586 drm_parse_hdmi_vsdb_video(data, db); in drm_parse_cea_ext()
3587 if (cea_db_is_hdmi_forum_vsdb(db) || cea_db_is_scdb(db)) in drm_parse_cea_ext()
3588 drm_parse_hdmi_forum_vsdb(data, db); in drm_parse_cea_ext()
3589 if (cea_db_is_y420cmdb(db)) in drm_parse_cea_ext()
3590 drm_parse_y420cmdb_bitmap(data, db); in drm_parse_cea_ext()
3709 const u8 *db, *hdmi = NULL, *video = NULL; in add_cea_modes() local
3729 db = &cea[i]; in add_cea_modes()
3730 dbl = cea_db_payload_len(db); in add_cea_modes()
3732 if (cea_db_tag(db) == EDID_CEA861_DB_VIDEO) { in add_cea_modes()
3733 video = db + 1; in add_cea_modes()
3736 } else if (cea_db_is_hdmi_vsdb(db)) { in add_cea_modes()
3737 hdmi = db; in add_cea_modes()
3739 } else if (cea_db_is_y420vdb(db)) { in add_cea_modes()
3740 const u8 *vdb420 = &db[2]; in add_cea_modes()