OSDN Git Service

ALSA: hda/ca0132 - Clean up ca0132_init function.
authorConnor McAdams <conmanx360@gmail.com>
Wed, 8 Aug 2018 17:34:13 +0000 (13:34 -0400)
committerTakashi Iwai <tiwai@suse.de>
Wed, 8 Aug 2018 18:37:36 +0000 (20:37 +0200)
This patch cleans up ca0132_init by removing unnecessary commands and
ordering things better.

Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_ca0132.c

index 665142e..8b98d18 100644 (file)
@@ -7249,14 +7249,12 @@ static int ca0132_init(struct hda_codec *codec)
 
        ca0132_refresh_widget_caps(codec);
 
-       if (spec->quirk == QUIRK_SBZ)
-               ca0132_mmio_gpio_set(codec, 7, true);
-
        switch (spec->quirk) {
        case QUIRK_R3DI:
                r3di_setup_defaults(codec);
                break;
        case QUIRK_SBZ:
+               sbz_setup_defaults(codec);
                break;
        default:
                ca0132_setup_defaults(codec);
@@ -7287,20 +7285,12 @@ static int ca0132_init(struct hda_codec *codec)
                ca0132_gpio_setup(codec);
 
        snd_hda_sequence_write(codec, spec->spec_init_verbs);
-       switch (spec->quirk) {
-       case QUIRK_SBZ:
-               sbz_setup_defaults(codec);
-               ca0132_alt_select_out(codec);
-               ca0132_alt_select_in(codec);
-               break;
-       case QUIRK_R3DI:
+       if (spec->use_alt_functions) {
                ca0132_alt_select_out(codec);
                ca0132_alt_select_in(codec);
-               break;
-       default:
+       } else {
                ca0132_select_out(codec);
                ca0132_select_mic(codec);
-               break;
        }
 
        snd_hda_jack_report_sync(codec);