mirror of
https://github.com/Fishwaldo/build.git
synced 2025-03-30 02:31:46 +00:00
1: update meson 4K support patches: 2, HDMI i2s improvement patches: 3, update vdec patches: 4, update meson audio patches: 5, add meson crypto engine driver 6, remove disabled patches: 7 remove unknown patch or no need 8, remove merged patches: 9, remove unknown patches from khadas should be covered by patches set 2 10, rename patches for better grouping 11, update kernel config accordingly Signed-off-by: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
61 lines
2.1 KiB
Diff
61 lines
2.1 KiB
Diff
From 47ea50564e8e7e6eb4c6544e47e25ae92a7ec1ec Mon Sep 17 00:00:00 2001
|
|
From: Jerome Brunet <jbrunet@baylibre.com>
|
|
Date: Mon, 5 Aug 2019 15:41:01 +0200
|
|
Subject: [PATCH 7/8] drm/bridge: dw-hdmi-i2s: enable only the required i2s
|
|
lanes
|
|
|
|
Enable the i2s lanes depending on the number of channel in the stream
|
|
|
|
Cc: Jonas Karlman <jonas@kwiboo.se>
|
|
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
|
|
---
|
|
.../gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c | 15 ++++++++++++++-
|
|
drivers/gpu/drm/bridge/synopsys/dw-hdmi.h | 6 +++++-
|
|
2 files changed, 19 insertions(+), 2 deletions(-)
|
|
|
|
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 41bee0099578..b8ece9c1ba2c 100644
|
|
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c
|
|
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-i2s-audio.c
|
|
@@ -54,7 +54,20 @@ static int dw_hdmi_i2s_hw_params(struct device *dev, void *data,
|
|
hdmi_write(audio, (u8)~HDMI_MC_SWRSTZ_I2SSWRST_REQ, HDMI_MC_SWRSTZ);
|
|
|
|
inputclkfs = HDMI_AUD_INPUTCLKFS_64FS;
|
|
- conf0 = HDMI_AUD_CONF0_I2S_ALL_ENABLE;
|
|
+ conf0 = (HDMI_AUD_CONF0_I2S_SELECT | HDMI_AUD_CONF0_I2S_EN0);
|
|
+
|
|
+ /* Enable the required i2s lanes */
|
|
+ switch (hparms->channels) {
|
|
+ case 7 ... 8:
|
|
+ conf0 |= HDMI_AUD_CONF0_I2S_EN3;
|
|
+ /* Fall-thru */
|
|
+ case 5 ... 6:
|
|
+ conf0 |= HDMI_AUD_CONF0_I2S_EN2;
|
|
+ /* Fall-thru */
|
|
+ case 3 ... 4:
|
|
+ conf0 |= HDMI_AUD_CONF0_I2S_EN1;
|
|
+ /* Fall-thru */
|
|
+ }
|
|
|
|
switch (hparms->sample_width) {
|
|
case 16:
|
|
diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h
|
|
index a272fa393ae6..6988f12d89d9 100644
|
|
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h
|
|
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.h
|
|
@@ -865,7 +865,11 @@ enum {
|
|
|
|
/* AUD_CONF0 field values */
|
|
HDMI_AUD_CONF0_SW_RESET = 0x80,
|
|
- HDMI_AUD_CONF0_I2S_ALL_ENABLE = 0x2F,
|
|
+ HDMI_AUD_CONF0_I2S_SELECT = 0x20,
|
|
+ HDMI_AUD_CONF0_I2S_EN3 = 0x08,
|
|
+ HDMI_AUD_CONF0_I2S_EN2 = 0x04,
|
|
+ HDMI_AUD_CONF0_I2S_EN1 = 0x02,
|
|
+ HDMI_AUD_CONF0_I2S_EN0 = 0x01,
|
|
|
|
/* AUD_CONF1 field values */
|
|
HDMI_AUD_CONF1_MODE_I2S = 0x00,
|
|
--
|
|
2.20.1
|
|
|