diff options
author | Lo-an Chen <lo-an.chen@amd.com> | 2025-03-10 14:52:22 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-04-10 14:41:56 +0200 |
commit | 1c5de38938a7e2f977bdc6c9161ac4b81ae2fae2 (patch) | |
tree | f000247e746dd4525dd01e2bdea8fccecb8ddf17 | |
parent | 77ea648df20568198d0ce45531f93813f83b5c92 (diff) | |
download | linux-1c5de38938a7e2f977bdc6c9161ac4b81ae2fae2.tar.gz linux-1c5de38938a7e2f977bdc6c9161ac4b81ae2fae2.tar.bz2 linux-1c5de38938a7e2f977bdc6c9161ac4b81ae2fae2.zip |
drm/amd/display: Fix incorrect fw_state address in dmub_srv
[ Upstream commit d60073294cc3b46b73d6de247e0e5ae8684a6241 ]
[WHY]
The fw_state in dmub_srv was assigned with wrong address.
The address was pointed to the firmware region.
[HOW]
Fix the firmware state by using DMUB_DEBUG_FW_STATE_OFFSET
in dmub_cmd.h.
Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: Lo-an Chen <lo-an.chen@amd.com>
Signed-off-by: Alex Hung <alex.hung@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit f57b38ac85a01bf03020cc0a9761d63e5c0ce197)
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r-- | drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c b/drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c index a3f3ff5d49ac..9d2250d84f29 100644 --- a/drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c +++ b/drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c @@ -708,7 +708,7 @@ enum dmub_status dmub_srv_hw_init(struct dmub_srv *dmub, cw6.region.base = DMUB_CW6_BASE; cw6.region.top = cw6.region.base + fw_state_fb->size; - dmub->fw_state = fw_state_fb->cpu_addr; + dmub->fw_state = (void *)((uintptr_t)(fw_state_fb->cpu_addr) + DMUB_DEBUG_FW_STATE_OFFSET); region6.offset.quad_part = shared_state_fb->gpu_addr; region6.region.base = DMUB_CW6_BASE; |