Enabling BT I2S config for muxed pins.

Signed-off-by: Akshu Agrawal <[email protected]>
Signed-off-by: Vijendar Mukunda <[email protected]>
Reviewed-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
index 0f17663..031c09e 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
@@ -76,6 +76,8 @@
 #define mmACP_CONTROL                          0x5131
 #define mmACP_STATUS                           0x5133
 #define mmACP_SOFT_RESET                       0x5134
+#define mmACP_BT_UART_PAD_SELECT               0x51D7
+#define ACP_BT_UART_PAD_SELECT_MASK            0x1
 #define ACP_CONTROL__ClkEn_MASK                0x1
 #define ACP_SOFT_RESET__SoftResetAud_MASK      0x100
 #define ACP_SOFT_RESET__SoftResetAudDone_MASK  0x1000000
@@ -510,6 +512,11 @@ static int acp_hw_init(void *handle)
        val = cgs_read_register(adev->acp.cgs_device, mmACP_SOFT_RESET);
        val &= ~ACP_SOFT_RESET__SoftResetAud_MASK;
        cgs_write_register(adev->acp.cgs_device, mmACP_SOFT_RESET, val);
+       /*For BT instance change pins from UART to BT */
+       val = cgs_read_register(adev->acp.cgs_device, mmACP_BT_UART_PAD_SELECT);
+       val |= ACP_BT_UART_PAD_SELECT_MASK;
+       cgs_write_register(adev->acp.cgs_device, mmACP_BT_UART_PAD_SELECT, val);
+
        return 0;
 }
 
-- 
2.7.4

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to