At Thu, 5 Feb 2009 00:00:58 +0900, Kusanagi Kouichi wrote: > > A digital beep generator can be used via input layer. > > Signed-off-by: Kusanagi Kouichi <slash@xxxxxxxxxxxxxx> Thanks, applied now. Takashi > --- > sound/pci/hda/hda_beep.h | 2 +- > sound/pci/hda/patch_realtek.c | 62 +++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 63 insertions(+), 1 deletions(-) > > diff --git a/sound/pci/hda/hda_beep.h b/sound/pci/hda/hda_beep.h > index b9679f0..51bf6a5 100644 > --- a/sound/pci/hda/hda_beep.h > +++ b/sound/pci/hda/hda_beep.h > @@ -39,7 +39,7 @@ struct hda_beep { > int snd_hda_attach_beep_device(struct hda_codec *codec, int nid); > void snd_hda_detach_beep_device(struct hda_codec *codec); > #else > -#define snd_hda_attach_beep_device(...) > +#define snd_hda_attach_beep_device(...) 0 > #define snd_hda_detach_beep_device(...) > #endif > #endif > diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c > index 7884a4e..956b327 100644 > --- a/sound/pci/hda/patch_realtek.c > +++ b/sound/pci/hda/patch_realtek.c > @@ -30,6 +30,7 @@ > #include <sound/core.h> > #include "hda_codec.h" > #include "hda_local.h" > +#include "hda_beep.h" > > #define ALC880_FRONT_EVENT 0x01 > #define ALC880_DCVOL_EVENT 0x02 > @@ -3160,6 +3161,7 @@ static void alc_free(struct hda_codec *codec) > > alc_free_kctls(codec); > kfree(spec); > + snd_hda_detach_beep_device(codec); > codec->spec = NULL; /* to be sure */ > } > > @@ -4328,6 +4330,12 @@ static int patch_alc880(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC880_AUTO) > setup_preset(spec, &alc880_presets[board_config]); > > @@ -5855,6 +5863,12 @@ static int patch_alc260(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC260_AUTO) > setup_preset(spec, &alc260_presets[board_config]); > > @@ -7050,6 +7064,12 @@ static int patch_alc882(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC882_AUTO) > setup_preset(spec, &alc882_presets[board_config]); > > @@ -9024,6 +9044,12 @@ static int patch_alc883(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC883_AUTO) > setup_preset(spec, &alc883_presets[board_config]); > > @@ -10844,6 +10870,12 @@ static int patch_alc262(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC262_AUTO) > setup_preset(spec, &alc262_presets[board_config]); > > @@ -11896,6 +11928,12 @@ static int patch_alc268(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC268_AUTO) > setup_preset(spec, &alc268_presets[board_config]); > > @@ -12730,6 +12768,12 @@ static int patch_alc269(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC269_AUTO) > setup_preset(spec, &alc269_presets[board_config]); > > @@ -13823,6 +13867,12 @@ static int patch_alc861(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x23); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC861_AUTO) > setup_preset(spec, &alc861_presets[board_config]); > > @@ -14769,6 +14819,12 @@ static int patch_alc861vd(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x23); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC861VD_AUTO) > setup_preset(spec, &alc861vd_presets[board_config]); > > @@ -16578,6 +16634,12 @@ static int patch_alc662(struct hda_codec *codec) > } > } > > + err = snd_hda_attach_beep_device(codec, 0x1); > + if (err < 0) { > + alc_free(codec); > + return err; > + } > + > if (board_config != ALC662_AUTO) > setup_preset(spec, &alc662_presets[board_config]); > > -- > 1.5.6.5 > > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel