From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A8450FF8860 for ; Mon, 27 Apr 2026 13:01:53 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 5F68810E744; Mon, 27 Apr 2026 13:01:53 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="dAy8QVmQ"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.18]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7011510E744 for ; Mon, 27 Apr 2026 13:01:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1777294864; x=1808830864; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+TCUNbPL0/l1M6ZXPYE0MGlbASez7asDuhTMnRVNYmk=; b=dAy8QVmQQmhzFjdm9fXqOim7fMzaHnoAWOi5wlXn1/IDFFiEIZhvv7FG JZrCxNPAtBAkA/wtNpuRzdKyzKnbWyArU9B9Ja0Gfhms3p4PygN9vxp/u E23VXq7xrx6QGNRUUTBmzpyPvB0uyaI8KTjotrnhjGE3VOHPBb3QJuyeg PD5x8aBLKgJz4PlIFwfB2atLs0e257rFaN63WOG6TpVUypxCHYjhkBFg6 qVrRCnoHT+lrh/2ONpzjNq08puzU1IqD2Nxm5IqqRC5tJjfcTC5r1dMmq puWXYGHcf3zZ46RUfjC7T8V3mj4DYst2xLKXVXF34YYtGpPCRKKRvl7wD Q==; X-CSE-ConnectionGUID: TbfO7RSWTyOjhQjfyAzHmw== X-CSE-MsgGUID: moLYJan4Q1OgrIRTXHVqxA== X-IronPort-AV: E=McAfee;i="6800,10657,11768"; a="77339305" X-IronPort-AV: E=Sophos;i="6.23,202,1770624000"; d="scan'208";a="77339305" Received: from orviesa003.jf.intel.com ([10.64.159.143]) by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Apr 2026 06:01:04 -0700 X-CSE-ConnectionGUID: 1N0PnIUVT76UyEgvC8qubg== X-CSE-MsgGUID: AV03ZkH2RZyKT5GnxmBnVQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.23,202,1770624000"; d="scan'208";a="237597769" Received: from srr4-3-linux-103-aknautiy.iind.intel.com ([10.223.34.160]) by ORVIESA003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Apr 2026 06:01:01 -0700 From: Ankit Nautiyal To: igt-dev@lists.freedesktop.org Cc: kamil.konieczny@linux.intel.com, karthik.b.s@intel.com, ville.syrjala@linux.intel.com, jani.nikula@linux.intel.com, Ankit Nautiyal Subject: [PATCH i-g-t 6/8] tools/intel_vbt_decode: dump eDP data rate override field Date: Mon, 27 Apr 2026 18:16:05 +0530 Message-ID: <20260427124607.3115567-7-ankit.k.nautiyal@intel.com> X-Mailer: git-send-email 2.45.2 In-Reply-To: <20260427124607.3115567-1-ankit.k.nautiyal@intel.com> References: <20260427124607.3115567-1-ankit.k.nautiyal@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: igt-dev@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development mailing list for IGT GPU Tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" Add decoding support for the eDP data rate override field introduced in VBT version 263+. v2: Fix styling issue and use correct format specifier (%u) for uint32_t. (Karthik) Signed-off-by: Ankit Nautiyal Reviewed-by: Karthik B S --- tools/intel_vbt_decode.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/tools/intel_vbt_decode.c b/tools/intel_vbt_decode.c index 7785e9e82b1f..24f626ebb152 100644 --- a/tools/intel_vbt_decode.c +++ b/tools/intel_vbt_decode.c @@ -1121,6 +1121,39 @@ static const char * const hdmi_frl_rate_str[] = { [5] = "12 GT/s", }; +static void dump_edp_data_rate_override(uint32_t edp_data_rate_override) +{ + int i; + static const uint32_t link_rates[BDB_263_VBT_EDP_NUM_RATES][2] = { + { BDB_263_VBT_EDP_LINK_RATE_1_62, 162000 }, + { BDB_263_VBT_EDP_LINK_RATE_2_16, 216000 }, + { BDB_263_VBT_EDP_LINK_RATE_2_43, 243000 }, + { BDB_263_VBT_EDP_LINK_RATE_2_7, 270000 }, + { BDB_263_VBT_EDP_LINK_RATE_3_24, 324000 }, + { BDB_263_VBT_EDP_LINK_RATE_4_32, 432000 }, + { BDB_263_VBT_EDP_LINK_RATE_5_4, 540000 }, + { BDB_263_VBT_EDP_LINK_RATE_6_75, 675000 }, + { BDB_263_VBT_EDP_LINK_RATE_8_1, 810000 }, + { BDB_263_VBT_EDP_LINK_RATE_10, 1000000 }, + { BDB_263_VBT_EDP_LINK_RATE_13_5, 1350000 }, + { BDB_263_VBT_EDP_LINK_RATE_20, 2000000}, + }; + + edp_data_rate_override &= BDB_263_VBT_EDP_RATES_MASK; + + printf("\t\teDP data rate override:"); + + if (!edp_data_rate_override) { + printf(" (none)\n"); + return; + } + printf("\n"); + + for (i = 0; i < BDB_263_VBT_EDP_NUM_RATES; i++) + if (link_rates[i][0] & edp_data_rate_override) + printf("\t\t\t%u kbps\n", link_rates[i][1]); +} + static void dump_child_device(struct context *context, const struct child_device_config *child) { @@ -1281,6 +1314,9 @@ static void dump_child_device(struct context *context, if (context->bdb->version >= 256) printf("\t\tEFP panel index: %d\n", child->efp_index); + + if (context->bdb->version >= 263) + dump_edp_data_rate_override(child->edp_data_rate_override); } static void dump_child_devices(struct context *context, const uint8_t *devices, -- 2.45.2