Properly setup the channel count and layout in dw-hdmi i2s driver so
we are not limited to 2 channels.

Also correct the maximum channel reported by the DAI from 6 to 8 ch

Reviewed-by: Jonas Karlman <jo...@kwiboo.se>
Signed-off-by: Jerome Brunet <jbru...@baylibre.com>
---
 drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c 
b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c
index 2b624cff541d..caf8aed78fea 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c
@@ -84,6 +84,7 @@ static int dw_hdmi_i2s_hw_params(struct device *dev, void 
*data,
        }
 
        dw_hdmi_set_sample_rate(hdmi, hparms->sample_rate);
+       dw_hdmi_set_channel_count(hdmi, hparms->channels);
 
        hdmi_write(audio, inputclkfs, HDMI_AUD_INPUTCLKFS);
        hdmi_write(audio, conf0, HDMI_AUD_CONF0);
@@ -139,7 +140,7 @@ static int snd_dw_hdmi_probe(struct platform_device *pdev)
 
        pdata.ops               = &dw_hdmi_i2s_ops;
        pdata.i2s               = 1;
-       pdata.max_i2s_channels  = 6;
+       pdata.max_i2s_channels  = 8;
        pdata.data              = audio;
 
        memset(&pdevinfo, 0, sizeof(pdevinfo));
-- 
2.21.0

Reply via email to