]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
soundwire: amd: fix for clearing command status register
authorVijendar Mukunda <Vijendar.Mukunda@amd.com>
Fri, 20 Jun 2025 10:25:19 +0000 (15:55 +0530)
committerVinod Koul <vkoul@kernel.org>
Thu, 26 Jun 2025 20:55:18 +0000 (13:55 -0700)
To clear the valid result status, 1 should be written to
ACP_SDW_IMM_CMD_STS register. Update the ACP_SW_IMM_CMD_STS register value
as 1.

Fixes: d8f48fbdfd9a ("soundwire: amd: Add support for AMD Manager driver")
Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda@amd.com>
Link: https://lore.kernel.org/r/20250620102617.73437-1-Vijendar.Mukunda@amd.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/soundwire/amd_manager.c

index a9a57cb6257cc2b88785b4f9f5c18ab21a73e137..7a671a7861979c4d7febcaa0869684d5f717bcca 100644 (file)
@@ -238,7 +238,7 @@ static u64 amd_sdw_send_cmd_get_resp(struct amd_sdw_manager *amd_manager, u32 lo
 
        if (sts & AMD_SDW_IMM_RES_VALID) {
                dev_err(amd_manager->dev, "SDW%x manager is in bad state\n", amd_manager->instance);
-               writel(0x00, amd_manager->mmio + ACP_SW_IMM_CMD_STS);
+               writel(AMD_SDW_IMM_RES_VALID, amd_manager->mmio + ACP_SW_IMM_CMD_STS);
        }
        writel(upper_data, amd_manager->mmio + ACP_SW_IMM_CMD_UPPER_WORD);
        writel(lower_data, amd_manager->mmio + ACP_SW_IMM_CMD_LOWER_QWORD);