Skip to content

Commit 5a38466

Browse files
Wayne Linalexdeucher
authored andcommitted
drm/amd/display: Shift DMUB AUX reply command if necessary
[Why] Defined value of dmub AUX reply command field get updated but didn't adjust dm receiving side accordingly. [How] Check the received reply command value to see if it's updated version or not. Adjust it if necessary. Fixes: ead08b9 ("drm/amd/display: Fix race condition in DPIA AUX transfer") Cc: Mario Limonciello <[email protected]> Cc: Alex Deucher <[email protected]> Reviewed-by: Ray Wu <[email protected]> Signed-off-by: Wayne Lin <[email protected]> Signed-off-by: Ray Wu <[email protected]> Tested-by: Daniel Wheeler <[email protected]> Signed-off-by: Alex Deucher <[email protected]> (cherry picked from commit d5c9ade) Cc: [email protected]
1 parent eba692c commit 5a38466

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12758,8 +12758,11 @@ int amdgpu_dm_process_dmub_aux_transfer_sync(
1275812758
goto out;
1275912759
}
1276012760

12761+
payload->reply[0] = adev->dm.dmub_notify->aux_reply.command & 0xF;
12762+
if (adev->dm.dmub_notify->aux_reply.command & 0xF0)
12763+
/* The reply is stored in the top nibble of the command. */
12764+
payload->reply[0] = (adev->dm.dmub_notify->aux_reply.command >> 4) & 0xF;
1276112765

12762-
payload->reply[0] = adev->dm.dmub_notify->aux_reply.command;
1276312766
if (!payload->write && p_notify->aux_reply.length &&
1276412767
(payload->reply[0] == AUX_TRANSACTION_REPLY_AUX_ACK)) {
1276512768

0 commit comments

Comments
 (0)