Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 133059
b: refs/heads/master
c: 7e0e44d
h: refs/heads/master
i:
  133057: 223d83a
  133055: 46c542a
v: v3
  • Loading branch information
Takashi Iwai committed Feb 19, 2009
1 parent 52a27d2 commit 8934939
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 7 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: ab9fec099b796b002b6996c4c5845167d8fe6dbd
refs/heads/master: 7e0e44d430281d398769f1d7864e161203252760
19 changes: 13 additions & 6 deletions trunk/sound/pci/hda/patch_realtek.c
Original file line number Diff line number Diff line change
Expand Up @@ -11824,9 +11824,14 @@ static int alc268_parse_auto_config(struct hda_codec *codec)
alc268_ignore);
if (err < 0)
return err;
if (!spec->autocfg.line_outs)
if (!spec->autocfg.line_outs) {
if (spec->autocfg.dig_outs || spec->autocfg.dig_in_pin) {
spec->multiout.max_channels = 2;
spec->no_analog = 1;
goto dig_only;
}
return 0; /* can't find valid BIOS pin config */

}
err = alc268_auto_create_multi_out_ctls(spec, &spec->autocfg);
if (err < 0)
return err;
Expand All @@ -11836,10 +11841,12 @@ static int alc268_parse_auto_config(struct hda_codec *codec)

spec->multiout.max_channels = 2;

dig_only:
/* digital only support output */
if (spec->autocfg.dig_outs)
if (spec->autocfg.dig_outs) {
spec->multiout.dig_out_nid = ALC268_DIGOUT_NID;

spec->dig_out_type = spec->autocfg.dig_out_type[0];
}
if (spec->kctls.list)
add_mixer(spec, spec->kctls.list);

Expand Down Expand Up @@ -12140,7 +12147,7 @@ static int patch_alc268(struct hda_codec *codec)
(0 << AC_AMPCAP_MUTE_SHIFT));
}

if (!spec->adc_nids && spec->input_mux) {
if (!spec->no_analog && !spec->adc_nids && spec->input_mux) {
/* check whether NID 0x07 is valid */
unsigned int wcap = get_wcaps(codec, 0x07);
int i;
Expand Down Expand Up @@ -12764,7 +12771,7 @@ static int alc269_parse_auto_config(struct hda_codec *codec)
if (err < 0)
return err;

if (!spec->cap_mixer)
if (!spec->cap_mixer && !spec->no_analog)
set_capture_mixer(spec);

store_pin_configs(codec);
Expand Down

0 comments on commit 8934939

Please sign in to comment.