aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c21
1 files changed, 18 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
index 06879d1dcabd..2d3fb005355d 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
@@ -319,14 +319,29 @@ static int acp_hw_init(void *handle)
319 return -ENOMEM; 319 return -ENOMEM;
320 } 320 }
321 321
322 i2s_pdata[0].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET; 322 switch (adev->asic_type) {
323 case CHIP_STONEY:
324 i2s_pdata[0].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET |
325 DW_I2S_QUIRK_16BIT_IDX_OVERRIDE;
326 break;
327 default:
328 i2s_pdata[0].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET;
329 }
323 i2s_pdata[0].cap = DWC_I2S_PLAY; 330 i2s_pdata[0].cap = DWC_I2S_PLAY;
324 i2s_pdata[0].snd_rates = SNDRV_PCM_RATE_8000_96000; 331 i2s_pdata[0].snd_rates = SNDRV_PCM_RATE_8000_96000;
325 i2s_pdata[0].i2s_reg_comp1 = ACP_I2S_COMP1_PLAY_REG_OFFSET; 332 i2s_pdata[0].i2s_reg_comp1 = ACP_I2S_COMP1_PLAY_REG_OFFSET;
326 i2s_pdata[0].i2s_reg_comp2 = ACP_I2S_COMP2_PLAY_REG_OFFSET; 333 i2s_pdata[0].i2s_reg_comp2 = ACP_I2S_COMP2_PLAY_REG_OFFSET;
334 switch (adev->asic_type) {
335 case CHIP_STONEY:
336 i2s_pdata[1].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET |
337 DW_I2S_QUIRK_COMP_PARAM1 |
338 DW_I2S_QUIRK_16BIT_IDX_OVERRIDE;
339 break;
340 default:
341 i2s_pdata[1].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET |
342 DW_I2S_QUIRK_COMP_PARAM1;
343 }
327 344
328 i2s_pdata[1].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET |
329 DW_I2S_QUIRK_COMP_PARAM1;
330 i2s_pdata[1].cap = DWC_I2S_RECORD; 345 i2s_pdata[1].cap = DWC_I2S_RECORD;
331 i2s_pdata[1].snd_rates = SNDRV_PCM_RATE_8000_96000; 346 i2s_pdata[1].snd_rates = SNDRV_PCM_RATE_8000_96000;
332 i2s_pdata[1].i2s_reg_comp1 = ACP_I2S_COMP1_CAP_REG_OFFSET; 347 i2s_pdata[1].i2s_reg_comp1 = ACP_I2S_COMP1_CAP_REG_OFFSET;