diff options
author | He Yangxuan <yangxuan8282@gmail.com> | 2018-11-16 23:09:10 +0800 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2018-11-26 15:26:48 +0000 |
commit | 8dc0e43d5a410a6f173c14caaa625adaf45f11f4 (patch) | |
tree | 8818259554accdf24310ae8aef8a0ed4a06427d5 /testing/linux-amlogic/0014-snd-meson-activate-HDMI-audio-path.patch | |
parent | 9a88176c5408adb5321fa11300cb63e4dbea80ed (diff) | |
download | aports-8dc0e43d5a410a6f173c14caaa625adaf45f11f4.tar.bz2 aports-8dc0e43d5a410a6f173c14caaa625adaf45f11f4.tar.xz |
testing/linux-amlogic: new aport
This kernel package add support for Amlogic S9xxx device.
Supported devices include many android box and some SBC like
Odroid C2, Khadas Vim, Nanopi K2. This package based on mainline
kernel, and apply some patches from mainline amlogic developer.
Diffstat (limited to 'testing/linux-amlogic/0014-snd-meson-activate-HDMI-audio-path.patch')
-rw-r--r-- | testing/linux-amlogic/0014-snd-meson-activate-HDMI-audio-path.patch | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/testing/linux-amlogic/0014-snd-meson-activate-HDMI-audio-path.patch b/testing/linux-amlogic/0014-snd-meson-activate-HDMI-audio-path.patch new file mode 100644 index 0000000000..26dedf3d20 --- /dev/null +++ b/testing/linux-amlogic/0014-snd-meson-activate-HDMI-audio-path.patch @@ -0,0 +1,52 @@ +From 69d2f200d91fbd48e2388a8c5346f10d889a2928 Mon Sep 17 00:00:00 2001 +From: Jerome Brunet <jbrunet@baylibre.com> +Date: Fri, 7 Jul 2017 17:39:21 +0200 +Subject: [PATCH] snd: meson: activate HDMI audio path + +Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> +--- + sound/soc/meson/i2s-dai.c | 22 ++++++++++++++++++++++ + 1 file changed, 22 insertions(+) + +diff --git a/sound/soc/meson/i2s-dai.c b/sound/soc/meson/i2s-dai.c +index 1008af8..63fe098 100644 +--- a/sound/soc/meson/i2s-dai.c ++++ b/sound/soc/meson/i2s-dai.c +@@ -56,8 +56,19 @@ struct meson_i2s_dai { + #define AIU_CLK_CTRL_ALRCLK_RIGHT_J (2 << 8) + #define AIU_CLK_CTRL_MORE_I2S_DIV_MASK GENMASK(5, 0) + #define AIU_CLK_CTRL_MORE_I2S_DIV(div) (((div) - 1) << 0) ++#define AIU_CLK_CTRL_MORE_HDMI_TX_SEL_MASK BIT(6) ++#define AIU_CLK_CTRL_MORE_HDMI_TX_I958_CLK (0 << 6) ++#define AIU_CLK_CTRL_MORE_HDMI_TX_INT_CLK (1 << 6) + #define AIU_CODEC_DAC_LRCLK_CTRL_DIV_MASK GENMASK(11, 0) + #define AIU_CODEC_DAC_LRCLK_CTRL_DIV(div) (((div) - 1) << 0) ++#define AIU_HDMI_CLK_DATA_CTRL_CLK_SEL_MASK GENMASK(1, 0) ++#define AIU_HDMI_CLK_DATA_CTRL_CLK_DISABLE (0 << 0) ++#define AIU_HDMI_CLK_DATA_CTRL_CLK_PCM (1 << 0) ++#define AIU_HDMI_CLK_DATA_CTRL_CLK_I2S (2 << 0) ++#define AIU_HDMI_CLK_DATA_CTRL_DATA_SEL_MASK GENMASK(5, 4) ++#define AIU_HDMI_CLK_DATA_CTRL_DATA_MUTE (0 << 4) ++#define AIU_HDMI_CLK_DATA_CTRL_DATA_PCM (1 << 4) ++#define AIU_HDMI_CLK_DATA_CTRL_DATA_I2S (2 << 4) + #define AIU_I2S_DAC_CFG_PAYLOAD_SIZE_MASK GENMASK(1, 0) + #define AIU_I2S_DAC_CFG_AOCLK_32 (0 << 0) + #define AIU_I2S_DAC_CFG_AOCLK_48 (2 << 0) +@@ -221,6 +232,17 @@ static int meson_i2s_dai_hw_params(struct snd_pcm_substream *substream, + return ret; + } + ++ /* Quick and dirty hack for HDMI */ ++ regmap_update_bits(priv->core->aiu, AIU_HDMI_CLK_DATA_CTRL, ++ AIU_HDMI_CLK_DATA_CTRL_CLK_SEL_MASK | ++ AIU_HDMI_CLK_DATA_CTRL_DATA_SEL_MASK, ++ AIU_HDMI_CLK_DATA_CTRL_CLK_I2S | ++ AIU_HDMI_CLK_DATA_CTRL_DATA_I2S); ++ ++ regmap_update_bits(priv->core->aiu, AIU_CLK_CTRL_MORE, ++ AIU_CLK_CTRL_MORE_HDMI_TX_SEL_MASK, ++ AIU_CLK_CTRL_MORE_HDMI_TX_INT_CLK); ++ + return 0; + } + |