AMD-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Anson Jacob <Anson.Jacob@amd.com>
To: <amd-gfx@lists.freedesktop.org>
Cc: Eryk.Brol@amd.com, Sunpeng.Li@amd.com, Harry.Wentland@amd.com,
	Qingqing.Zhuo@amd.com, Rodrigo.Siqueira@amd.com,
	Anson Jacob <anson.jacob@amd.com>,
	Aurabindo.Pillai@amd.com, Wyatt Wood <wyatt.wood@amd.com>,
	Bhawanpreet.Lakha@amd.com,
	Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com>,
	bindu.r@amd.com
Subject: [PATCH 10/16] drm/amd/display: Allow dmu_stg to support cached inbox for dmub
Date: Fri, 15 Jan 2021 12:27:12 -0500	[thread overview]
Message-ID: <20210115172714.126866-11-Anson.Jacob@amd.com> (raw)
In-Reply-To: <20210115172714.126866-1-Anson.Jacob@amd.com>

From: Wyatt Wood <wyatt.wood@amd.com>

[Why]
FW version check doesn't allow dmu_stg to support cached inbox,
which yields much better performance than region 4.

[How]
Check a range of fw versions, rather than a simple greater than check.

Signed-off-by: Wyatt Wood <wyatt.wood@amd.com>
Reviewed-by: Nicholas Kazlauskas <Nicholas.Kazlauskas@amd.com>
Acked-by: Anson Jacob <anson.jacob@amd.com>
---
 drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c b/drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c
index cafba1d23c6a..26716c41786a 100644
--- a/drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c
+++ b/drivers/gpu/drm/amd/display/dmub/src/dmub_dcn20.c
@@ -81,6 +81,13 @@ static inline void dmub_dcn20_translate_addr(const union dmub_addr *addr_in,
 	addr_out->quad_part = addr_in->quad_part - fb_base + fb_offset;
 }
 
+static inline bool dmub_dcn20_use_cached_inbox(struct dmub_srv *dmub)
+{
+	/* Cached inbox is not supported in this fw version range */
+	return !(dmub->fw_version >= DMUB_FW_VERSION(1, 0, 0) &&
+		 dmub->fw_version <= DMUB_FW_VERSION(1, 10, 0));
+}
+
 void dmub_dcn20_reset(struct dmub_srv *dmub)
 {
 	union dmub_gpint_data_register cmd;
@@ -216,7 +223,7 @@ void dmub_dcn20_setup_windows(struct dmub_srv *dmub,
 	dmub_dcn20_translate_addr(&cw4->offset, fb_base, fb_offset, &offset);
 
 	/* New firmware can support CW4. */
-	if (dmub->fw_version > DMUB_FW_VERSION(1, 0, 10)) {
+	if (dmub_dcn20_use_cached_inbox(dmub)) {
 		REG_WRITE(DMCUB_REGION3_CW4_OFFSET, offset.u.low_part);
 		REG_WRITE(DMCUB_REGION3_CW4_OFFSET_HIGH, offset.u.high_part);
 		REG_WRITE(DMCUB_REGION3_CW4_BASE_ADDRESS, cw4->region.base);
@@ -255,7 +262,7 @@ void dmub_dcn20_setup_mailbox(struct dmub_srv *dmub,
 			      const struct dmub_region *inbox1)
 {
 	/* New firmware can support CW4 for the inbox. */
-	if (dmub->fw_version > DMUB_FW_VERSION(1, 0, 10))
+	if (dmub_dcn20_use_cached_inbox(dmub))
 		REG_WRITE(DMCUB_INBOX1_BASE_ADDRESS, inbox1->base);
 	else
 		REG_WRITE(DMCUB_INBOX1_BASE_ADDRESS, 0x80000000);
-- 
2.25.1

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

  parent reply	other threads:[~2021-01-15 17:31 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-15 17:26 [PATCH 00/16] DC Patches January 15, 2020 Anson Jacob
2021-01-15 17:27 ` [PATCH 01/16] drm/amd/display: Fixed corruptions on HPDRX link loss restore Anson Jacob
2021-01-15 17:27 ` [PATCH 02/16] drm/amd/display: disable FEC while using eDP Anson Jacob
2021-01-15 17:27 ` [PATCH 03/16] drm/amd/display: DCN2X Find Secondary Pipe properly in MPO + ODM Case Anson Jacob
2021-01-15 17:27 ` [PATCH 04/16] drm/amd/display: Use hardware sequencer functions for PG control Anson Jacob
2021-01-15 17:27 ` [PATCH 05/16] drm/amd/display: Report Freesync to vrr_range debugfs entry in DRM Anson Jacob
2021-01-15 17:27 ` [PATCH 06/16] drm/amd/display: Allow dmub srv hardware reset before HW init Anson Jacob
2021-01-15 17:27 ` [PATCH 07/16] drm/amd/display: Guard against NULL pointer deref when get_i2c_info fails Anson Jacob
2021-01-15 17:27 ` [PATCH 08/16] drm/amd/display: Fix reset sequence with driver direct DMCUB fw load Anson Jacob
2021-01-15 17:27 ` [PATCH 09/16] drm/amd/display: Change function decide_dp_link_settings to avoid infinite looping Anson Jacob
2021-01-15 17:27 ` Anson Jacob [this message]
2021-01-15 17:27 ` [PATCH 11/16] drm/amd/display: Log link/connector info provided in BIOS object table Anson Jacob
2021-01-15 17:27 ` [PATCH 12/16] drm/amd/display: Fix dml20v2_ModeSupportAndSystemConfigurationFull() to check DesiredBPP Anson Jacob
2021-01-15 17:27 ` [PATCH 13/16] drm/amd/display: Allow PSTATE chnage when no displays are enabled Anson Jacob
2021-01-15 17:27 ` [PATCH 14/16] drm/amd/display: Update dram_clock_change_latency for DCN2.1 Anson Jacob
2021-01-15 17:27 ` [PATCH 15/16] drm/amd/display: [FW Promotion] Release 0.0.48 Anson Jacob
2021-01-15 17:27 ` [PATCH 16/16] drm/amd/display: 3.2.119 Anson Jacob
2021-01-18 12:04   ` Paul Menzel
2021-01-15 22:36 ` [PATCH 00/16] DC Patches January 15, 2020 Wheeler, Daniel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210115172714.126866-11-Anson.Jacob@amd.com \
    --to=anson.jacob@amd.com \
    --cc=Aurabindo.Pillai@amd.com \
    --cc=Bhawanpreet.Lakha@amd.com \
    --cc=Eryk.Brol@amd.com \
    --cc=Harry.Wentland@amd.com \
    --cc=Nicholas.Kazlauskas@amd.com \
    --cc=Qingqing.Zhuo@amd.com \
    --cc=Rodrigo.Siqueira@amd.com \
    --cc=Sunpeng.Li@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bindu.r@amd.com \
    --cc=wyatt.wood@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox