mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-06 02:50:43 +00:00
Merge series "ASoC: mediatek: mt8183-mt6358: support machine driver for rt1015p" from Tzung-Bi Shih <tzungbi@google.com>:
The series reuses mt8183-mt6358-ts3a227-max98357.c for supporting machine driver with rt1015p speaker amplifier. The 1st patch adds document for the new proposed compatible string. The 2nd patch changes the machine driver to support "RT1015P" codec. Tzung-Bi Shih (2): ASoC: dt-bindings: mt8183: add compatible string for using rt1015p ASoC: mediatek: mt8183: support machine driver with rt1015p .../sound/mt8183-mt6358-ts3a227-max98357.txt | 1 + sound/soc/mediatek/Kconfig | 1 + .../mt8183/mt8183-mt6358-ts3a227-max98357.c | 29 +++++++++++++++++++ 3 files changed, 31 insertions(+) -- 2.31.0.rc2.261.g7f71774620-goog
This commit is contained in:
commit
0befe3a0c6
3 changed files with 31 additions and 0 deletions
|
@ -4,6 +4,7 @@ Required properties:
|
|||
- compatible : "mediatek,mt8183_mt6358_ts3a227_max98357" for MAX98357A codec
|
||||
"mediatek,mt8183_mt6358_ts3a227_max98357b" for MAX98357B codec
|
||||
"mediatek,mt8183_mt6358_ts3a227_rt1015" for RT1015 codec
|
||||
"mediatek,mt8183_mt6358_ts3a227_rt1015p" for RT1015P codec
|
||||
- mediatek,platform: the phandle of MT8183 ASoC platform
|
||||
|
||||
Optional properties:
|
||||
|
|
|
@ -124,6 +124,7 @@ config SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A
|
|||
select SND_SOC_MT6358
|
||||
select SND_SOC_MAX98357A
|
||||
select SND_SOC_RT1015
|
||||
select SND_SOC_RT1015P
|
||||
select SND_SOC_BT_SCO
|
||||
select SND_SOC_TS3A227E
|
||||
select SND_SOC_CROS_EC_CODEC if CROS_EC
|
||||
|
|
|
@ -284,6 +284,11 @@ SND_SOC_DAILINK_DEFS(i2s3_rt1015,
|
|||
COMP_CODEC(RT1015_DEV1_NAME, RT1015_CODEC_DAI)),
|
||||
DAILINK_COMP_ARRAY(COMP_EMPTY()));
|
||||
|
||||
SND_SOC_DAILINK_DEFS(i2s3_rt1015p,
|
||||
DAILINK_COMP_ARRAY(COMP_CPU("I2S3")),
|
||||
DAILINK_COMP_ARRAY(COMP_CODEC("rt1015p", "HiFi")),
|
||||
DAILINK_COMP_ARRAY(COMP_EMPTY()));
|
||||
|
||||
SND_SOC_DAILINK_DEFS(i2s5,
|
||||
DAILINK_COMP_ARRAY(COMP_CPU("I2S5")),
|
||||
DAILINK_COMP_ARRAY(COMP_CODEC("bt-sco", "bt-sco-pcm")),
|
||||
|
@ -590,6 +595,13 @@ static struct snd_soc_card mt8183_mt6358_ts3a227_rt1015_card = {
|
|||
.num_configs = ARRAY_SIZE(mt8183_mt6358_ts3a227_rt1015_amp_conf),
|
||||
};
|
||||
|
||||
static struct snd_soc_card mt8183_mt6358_ts3a227_rt1015p_card = {
|
||||
.name = "mt8183_mt6358_ts3a227_rt1015p",
|
||||
.owner = THIS_MODULE,
|
||||
.dai_link = mt8183_mt6358_ts3a227_dai_links,
|
||||
.num_links = ARRAY_SIZE(mt8183_mt6358_ts3a227_dai_links),
|
||||
};
|
||||
|
||||
static int
|
||||
mt8183_mt6358_ts3a227_max98357_headset_init(struct snd_soc_component *component)
|
||||
{
|
||||
|
@ -686,6 +698,19 @@ mt8183_mt6358_ts3a227_max98357_dev_probe(struct platform_device *pdev)
|
|||
dai_link->platforms = i2s3_rt1015_platforms;
|
||||
dai_link->num_platforms =
|
||||
ARRAY_SIZE(i2s3_rt1015_platforms);
|
||||
} else if (card == &mt8183_mt6358_ts3a227_rt1015p_card) {
|
||||
dai_link->be_hw_params_fixup =
|
||||
mt8183_rt1015_i2s_hw_params_fixup;
|
||||
dai_link->ops = &mt8183_mt6358_i2s_ops;
|
||||
dai_link->cpus = i2s3_rt1015p_cpus;
|
||||
dai_link->num_cpus =
|
||||
ARRAY_SIZE(i2s3_rt1015p_cpus);
|
||||
dai_link->codecs = i2s3_rt1015p_codecs;
|
||||
dai_link->num_codecs =
|
||||
ARRAY_SIZE(i2s3_rt1015p_codecs);
|
||||
dai_link->platforms = i2s3_rt1015p_platforms;
|
||||
dai_link->num_platforms =
|
||||
ARRAY_SIZE(i2s3_rt1015p_platforms);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -772,6 +797,10 @@ static const struct of_device_id mt8183_mt6358_ts3a227_max98357_dt_match[] = {
|
|||
.compatible = "mediatek,mt8183_mt6358_ts3a227_rt1015",
|
||||
.data = &mt8183_mt6358_ts3a227_rt1015_card,
|
||||
},
|
||||
{
|
||||
.compatible = "mediatek,mt8183_mt6358_ts3a227_rt1015p",
|
||||
.data = &mt8183_mt6358_ts3a227_rt1015p_card,
|
||||
},
|
||||
{}
|
||||
};
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue