Skip to content

Commit e04aab9

Browse files
Chancel Liubroonie
authored andcommitted
ASoC: fsl_micfil: Add default quality for different platforms
Add a default quality flag in soc data. For i.MX8MP/93/943 platforms on which range control is constrained, set medium quality by default to achieve better audio performance and wider adjustable range control. Signed-off-by: Chancel Liu <chancel.liu@nxp.com> Acked-by: Shengjiu Wang <shengjiu.wang@gmail.com> Link: https://patch.msgid.link/20251127022652.674574-2-chancel.liu@nxp.com Signed-off-by: Mark Brown <broonie@kernel.org>
1 parent a76e1d9 commit e04aab9

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

sound/soc/fsl/fsl_micfil.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ struct fsl_micfil_soc_data {
9292
bool volume_sx;
9393
u64 formats;
9494
int fifo_offset;
95+
enum quality default_quality;
9596
};
9697

9798
static struct fsl_micfil_soc_data fsl_micfil_imx8mm = {
@@ -102,6 +103,7 @@ static struct fsl_micfil_soc_data fsl_micfil_imx8mm = {
102103
.formats = SNDRV_PCM_FMTBIT_S16_LE,
103104
.volume_sx = true,
104105
.fifo_offset = 0,
106+
.default_quality = QUALITY_VLOW0,
105107
};
106108

107109
static struct fsl_micfil_soc_data fsl_micfil_imx8mp = {
@@ -112,6 +114,7 @@ static struct fsl_micfil_soc_data fsl_micfil_imx8mp = {
112114
.formats = SNDRV_PCM_FMTBIT_S32_LE,
113115
.volume_sx = false,
114116
.fifo_offset = 0,
117+
.default_quality = QUALITY_MEDIUM,
115118
};
116119

117120
static struct fsl_micfil_soc_data fsl_micfil_imx93 = {
@@ -124,6 +127,7 @@ static struct fsl_micfil_soc_data fsl_micfil_imx93 = {
124127
.use_verid = true,
125128
.volume_sx = false,
126129
.fifo_offset = 0,
130+
.default_quality = QUALITY_MEDIUM,
127131
};
128132

129133
static struct fsl_micfil_soc_data fsl_micfil_imx943 = {
@@ -136,6 +140,7 @@ static struct fsl_micfil_soc_data fsl_micfil_imx943 = {
136140
.use_verid = true,
137141
.volume_sx = false,
138142
.fifo_offset = -4,
143+
.default_quality = QUALITY_MEDIUM,
139144
};
140145

141146
static const struct of_device_id fsl_micfil_dt_ids[] = {
@@ -892,7 +897,7 @@ static int fsl_micfil_dai_probe(struct snd_soc_dai *cpu_dai)
892897
unsigned int val = 0;
893898
int ret, i;
894899

895-
micfil->quality = QUALITY_VLOW0;
900+
micfil->quality = micfil->soc->default_quality;
896901
micfil->card = cpu_dai->component->card;
897902

898903
/* set default gain to 2 */

0 commit comments

Comments
 (0)