It is found that all usages of snd_hda_parse_pin_defcfg() are followed
with snd_hda_gen_parse_auto_config() except here.
This should be a miss and needs to add the missed call.
Signed-off-by: Chuhong Yuan <[email protected]>
---
sound/pci/hda/patch_ca0132.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
index b7a1abb3e231..ea1187a13241 100644
--- a/sound/pci/hda/patch_ca0132.c
+++ b/sound/pci/hda/patch_ca0132.c
@@ -24,6 +24,7 @@
#include "hda_local.h"
#include "hda_auto_parser.h"
#include "hda_jack.h"
+#include "hda_generic.h"
#include "ca0132_regs.h"
@@ -8844,6 +8845,10 @@ static int patch_ca0132(struct hda_codec *codec)
if (err < 0)
goto error;
+ err = snd_hda_gen_parse_auto_config(codec, &spec->autocfg);
+ if (err < 0)
+ goto error;
+
return 0;
error:
--
2.24.0
On Mon, 09 Dec 2019 17:21:19 +0100,
Chuhong Yuan wrote:
>
> It is found that all usages of snd_hda_parse_pin_defcfg() are followed
> with snd_hda_gen_parse_auto_config() except here.
> This should be a miss and needs to add the missed call.
No, this will break things badly.
CA0132 codec driver has own configurator, and the pincfg parser is
called there because the initialization function requires the pincfg
information for the digital audio pins.
thanks,
Takashi
>
> Signed-off-by: Chuhong Yuan <[email protected]>
> ---
> sound/pci/hda/patch_ca0132.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
> index b7a1abb3e231..ea1187a13241 100644
> --- a/sound/pci/hda/patch_ca0132.c
> +++ b/sound/pci/hda/patch_ca0132.c
> @@ -24,6 +24,7 @@
> #include "hda_local.h"
> #include "hda_auto_parser.h"
> #include "hda_jack.h"
> +#include "hda_generic.h"
>
> #include "ca0132_regs.h"
>
> @@ -8844,6 +8845,10 @@ static int patch_ca0132(struct hda_codec *codec)
> if (err < 0)
> goto error;
>
> + err = snd_hda_gen_parse_auto_config(codec, &spec->autocfg);
> + if (err < 0)
> + goto error;
> +
> return 0;
>
> error:
> --
> 2.24.0
>