134 lines
6.8 KiB
Diff
134 lines
6.8 KiB
Diff
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: Piotr Szczepanik <piter75@gmail.com>
|
||
|
Date: Sun, 5 Apr 2020 18:15:06 +0200
|
||
|
Subject: [ARCHEOLOGY] Fixed sound from rt5651 on OrangePi 4 (#1870)
|
||
|
|
||
|
> X-Git-Archeology: - Revision e14a61c229db1216fedc397e351c4bed15df820e: https://github.com/armbian/build/commit/e14a61c229db1216fedc397e351c4bed15df820e
|
||
|
> X-Git-Archeology: Date: Sun, 05 Apr 2020 18:15:06 +0200
|
||
|
> X-Git-Archeology: From: Piotr Szczepanik <piter75@gmail.com>
|
||
|
> X-Git-Archeology: Subject: Fixed sound from rt5651 on OrangePi 4 (#1870)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 0cdffb29b07305209efb12cf3b5ac6032d3a1153: https://github.com/armbian/build/commit/0cdffb29b07305209efb12cf3b5ac6032d3a1153
|
||
|
> X-Git-Archeology: Date: Wed, 24 Mar 2021 19:01:53 +0100
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Renaming DEV branch to EDGE (#2704)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision e7377248b3cae186e24e2be781cd3365b43246f0: https://github.com/armbian/build/commit/e7377248b3cae186e24e2be781cd3365b43246f0
|
||
|
> X-Git-Archeology: Date: Thu, 22 Jul 2021 00:15:54 +0200
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Second part of EDGE bumping to 5.13.y (#3045)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 744ea89a589d62cb6f409baab60fc6664520bc39: https://github.com/armbian/build/commit/744ea89a589d62cb6f409baab60fc6664520bc39
|
||
|
> X-Git-Archeology: Date: Wed, 08 Sep 2021 17:51:34 +0200
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Bumping EDGE kernel to 5.14.y (#3125)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision dd51f9f2afcbc83a3e10b32eb6a5061d91d1558e: https://github.com/armbian/build/commit/dd51f9f2afcbc83a3e10b32eb6a5061d91d1558e
|
||
|
> X-Git-Archeology: Date: Tue, 09 Nov 2021 18:06:34 +0100
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Bump imx6, xu4, rockchip64 and jetson-nano to 5.15 (#3238)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision ac8fc4385594d59257ee9dffd9efa85e3497fa7d: https://github.com/armbian/build/commit/ac8fc4385594d59257ee9dffd9efa85e3497fa7d
|
||
|
> X-Git-Archeology: Date: Sat, 26 Feb 2022 07:46:44 +0100
|
||
|
> X-Git-Archeology: From: Piotr Szczepanik <piter75@gmail.com>
|
||
|
> X-Git-Archeology: Subject: Switch rockchip64 current to linux 5.15.y (#3489)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 897674aa74bce0326ed7fe06f5336bf4709a8a1f: https://github.com/armbian/build/commit/897674aa74bce0326ed7fe06f5336bf4709a8a1f
|
||
|
> X-Git-Archeology: Date: Tue, 03 May 2022 08:27:32 +0200
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Bump and freeze kernel at last known working versions (#3736)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 597d2dac11f00d9070a4e49d6bad1b2244e36cb3: https://github.com/armbian/build/commit/597d2dac11f00d9070a4e49d6bad1b2244e36cb3
|
||
|
> X-Git-Archeology: Date: Sat, 28 May 2022 07:56:22 +0200
|
||
|
> X-Git-Archeology: From: Jianfeng Liu <liujianfeng1994@gmail.com>
|
||
|
> X-Git-Archeology: Subject: update rockchip64-edge to 5.18 (#3814)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 8c6641e7b79f0d50acdc306d140e586a4e923cf0: https://github.com/armbian/build/commit/8c6641e7b79f0d50acdc306d140e586a4e923cf0
|
||
|
> X-Git-Archeology: Date: Wed, 03 Aug 2022 22:22:55 +0200
|
||
|
> X-Git-Archeology: From: Jianfeng Liu <liujianfeng1994@gmail.com>
|
||
|
> X-Git-Archeology: Subject: update rockchip64 edge to 5.19 (#4039)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 6765f734cc4a22aeaa9f99a3ad28c8c322de26f6: https://github.com/armbian/build/commit/6765f734cc4a22aeaa9f99a3ad28c8c322de26f6
|
||
|
> X-Git-Archeology: Date: Tue, 25 Oct 2022 11:26:51 +0200
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Bump rockchip64 edge to 6.0.y (#4337)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: https://github.com/armbian/build/commit/92f1a22d76b987afa7ba555d5b509adc51d689e7
|
||
|
> X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100
|
||
|
> X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com>
|
||
|
> X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575)
|
||
|
> X-Git-Archeology:
|
||
|
> X-Git-Archeology: - Revision 34ae84fac5d0b66a1ab2d1e51534b7beb13ef245: https://github.com/armbian/build/commit/34ae84fac5d0b66a1ab2d1e51534b7beb13ef245
|
||
|
> X-Git-Archeology: Date: Fri, 05 May 2023 14:22:00 +0200
|
||
|
> X-Git-Archeology: From: amazingfate <liujianfeng1994@gmail.com>
|
||
|
> X-Git-Archeology: Subject: bump rockchip64 edge to v6.3
|
||
|
> X-Git-Archeology:
|
||
|
---
|
||
|
sound/soc/codecs/rt5651.c | 16 ++++++++++
|
||
|
sound/soc/codecs/rt5651.h | 1 +
|
||
|
2 files changed, 17 insertions(+)
|
||
|
|
||
|
diff --git a/sound/soc/codecs/rt5651.c b/sound/soc/codecs/rt5651.c
|
||
|
index df90af906563..28e5b6fb9d8f 100644
|
||
|
--- a/sound/soc/codecs/rt5651.c
|
||
|
+++ b/sound/soc/codecs/rt5651.c
|
||
|
@@ -24,6 +24,7 @@
|
||
|
#include <sound/initval.h>
|
||
|
#include <sound/tlv.h>
|
||
|
#include <sound/jack.h>
|
||
|
+#include <linux/clk.h>
|
||
|
|
||
|
#include "rl6231.h"
|
||
|
#include "rt5651.h"
|
||
|
@@ -1511,6 +1512,7 @@ static int rt5651_set_dai_pll(struct snd_soc_dai *dai, int pll_id, int source,
|
||
|
static int rt5651_set_bias_level(struct snd_soc_component *component,
|
||
|
enum snd_soc_bias_level level)
|
||
|
{
|
||
|
+ struct rt5651_priv *rt5651 = snd_soc_component_get_drvdata(component);
|
||
|
switch (level) {
|
||
|
case SND_SOC_BIAS_PREPARE:
|
||
|
if (SND_SOC_BIAS_STANDBY == snd_soc_component_get_bias_level(component)) {
|
||
|
@@ -1518,6 +1520,13 @@ static int rt5651_set_bias_level(struct snd_soc_component *component,
|
||
|
snd_soc_component_update_bits(component, RT5651_D_MISC,
|
||
|
0xc00, 0xc00);
|
||
|
}
|
||
|
+ if (!IS_ERR(rt5651->mclk)){
|
||
|
+ if (snd_soc_component_get_bias_level(component) == SND_SOC_BIAS_ON) {
|
||
|
+ clk_disable_unprepare(rt5651->mclk);
|
||
|
+ } else {
|
||
|
+ clk_prepare_enable(rt5651->mclk);
|
||
|
+ }
|
||
|
+ }
|
||
|
break;
|
||
|
case SND_SOC_BIAS_STANDBY:
|
||
|
if (SND_SOC_BIAS_OFF == snd_soc_component_get_bias_level(component)) {
|
||
|
@@ -2059,6 +2068,13 @@ static int rt5651_probe(struct snd_soc_component *component)
|
||
|
{
|
||
|
struct rt5651_priv *rt5651 = snd_soc_component_get_drvdata(component);
|
||
|
|
||
|
+ /* Check if MCLK provided */
|
||
|
+ rt5651->mclk = devm_clk_get(component->dev, "mclk");
|
||
|
+ if (PTR_ERR(rt5651->mclk) == -EPROBE_DEFER){
|
||
|
+ dev_err(component->dev, "unable to get mclk\n");
|
||
|
+ return -EPROBE_DEFER;
|
||
|
+ }
|
||
|
+
|
||
|
rt5651->component = component;
|
||
|
|
||
|
snd_soc_component_update_bits(component, RT5651_PWR_ANLG1,
|
||
|
diff --git a/sound/soc/codecs/rt5651.h b/sound/soc/codecs/rt5651.h
|
||
|
index 20c33a3ece37..17524fa9fdfc 100644
|
||
|
--- a/sound/soc/codecs/rt5651.h
|
||
|
+++ b/sound/soc/codecs/rt5651.h
|
||
|
@@ -2097,6 +2097,7 @@ struct rt5651_priv {
|
||
|
|
||
|
int dmic_en;
|
||
|
bool hp_mute;
|
||
|
+ struct clk *mclk;
|
||
|
};
|
||
|
|
||
|
#endif /* __RT5651_H__ */
|
||
|
--
|
||
|
Armbian
|
||
|
|