brcm2708: add kernel 4.14 support
[openwrt/staging/chunkeey.git] / target / linux / brcm2708 / patches-4.14 / 950-0213-ASoC-dionaudio_loco-v2-fix-S24_LE-format.patch
diff --git a/target/linux/brcm2708/patches-4.14/950-0213-ASoC-dionaudio_loco-v2-fix-S24_LE-format.patch b/target/linux/brcm2708/patches-4.14/950-0213-ASoC-dionaudio_loco-v2-fix-S24_LE-format.patch
new file mode 100644 (file)
index 0000000..3d9fb8a
--- /dev/null
@@ -0,0 +1,50 @@
+From 12e578b16bb6aa097a6d451a371fd6ade3d07b5d Mon Sep 17 00:00:00 2001
+From: Matthias Reichl <hias@horus.com>
+Date: Fri, 2 Feb 2018 20:30:42 +0100
+Subject: [PATCH 213/454] ASoC: dionaudio_loco-v2: fix S24_LE format
+
+Remove set_bclk_ratio call so 24-bit data is transmitted in
+24 bclk cycles.
+
+Also remove hw_params and ops as they are no longer needed.
+
+Signed-off-by: Matthias Reichl <hias@horus.com>
+---
+ sound/soc/bcm/dionaudio_loco-v2.c | 19 -------------------
+ 1 file changed, 19 deletions(-)
+
+--- a/sound/soc/bcm/dionaudio_loco-v2.c
++++ b/sound/soc/bcm/dionaudio_loco-v2.c
+@@ -41,24 +41,6 @@ static int snd_rpi_dionaudio_loco_v2_ini
+       return 0;
+ }
+-static int snd_rpi_dionaudio_loco_v2_hw_params(
+-      struct snd_pcm_substream *substream,
+-      struct snd_pcm_hw_params *params)
+-{
+-      struct snd_soc_pcm_runtime *rtd = substream->private_data;
+-      struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
+-
+-      unsigned int sample_bits =
+-              snd_pcm_format_physical_width(params_format(params));
+-
+-      return snd_soc_dai_set_bclk_ratio(cpu_dai, sample_bits * 2);
+-}
+-
+-/* machine stream operations */
+-static struct snd_soc_ops snd_rpi_dionaudio_loco_v2_ops = {
+-      .hw_params = snd_rpi_dionaudio_loco_v2_hw_params,
+-};
+-
+ static struct snd_soc_dai_link snd_rpi_dionaudio_loco_v2_dai[] = {
+ {
+       .name           = "DionAudio LOCO-V2",
+@@ -69,7 +51,6 @@ static struct snd_soc_dai_link snd_rpi_d
+       .codec_name     = "pcm512x.1-004d",
+       .dai_fmt        = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
+                         SND_SOC_DAIFMT_CBS_CFS,
+-      .ops            = &snd_rpi_dionaudio_loco_v2_ops,
+       .init           = snd_rpi_dionaudio_loco_v2_init,
+ },};