diff options
author | Takashi Iwai <tiwai@suse.de> | 2008-11-27 08:17:01 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2008-11-27 08:17:01 -0500 |
commit | 529bd6c4a63f8468fd66f63fdc22d7070439b3cd (patch) | |
tree | 3a45f17bbd45ef3e4ea785ce0bb79e6afef3e438 /sound/pci/hda/hda_codec.h | |
parent | fee2fba3586f78762ecc5f432dfd3602765a31b3 (diff) |
ALSA: hda - Fix PCM reconfigure
The reconfiguration of PCM affected all PCM streams on the bus, but
this this should be done rather only for the target codec.
This patch does the following:
- introduce bitmap indicating the PCM device usages on a hda_bus
- refactor the PCM build functions
- fix __devinit prefix in some fucntions
- add a proper ifdef around HDA-reconfig-specific functions
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/hda_codec.h')
-rw-r--r-- | sound/pci/hda/hda_codec.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/pci/hda/hda_codec.h b/sound/pci/hda/hda_codec.h index 4034625b5997..9fe0b67bb1e4 100644 --- a/sound/pci/hda/hda_codec.h +++ b/sound/pci/hda/hda_codec.h | |||
@@ -617,6 +617,9 @@ struct hda_bus { | |||
617 | 617 | ||
618 | struct snd_info_entry *proc; | 618 | struct snd_info_entry *proc; |
619 | 619 | ||
620 | /* assigned PCMs */ | ||
621 | DECLARE_BITMAP(pcm_dev_bits, SNDRV_PCM_DEVICES); | ||
622 | |||
620 | /* misc op flags */ | 623 | /* misc op flags */ |
621 | unsigned int needs_damn_long_delay :1; | 624 | unsigned int needs_damn_long_delay :1; |
622 | unsigned int shutdown :1; /* being unloaded */ | 625 | unsigned int shutdown :1; /* being unloaded */ |
@@ -846,6 +849,7 @@ int snd_hda_codec_build_controls(struct hda_codec *codec); | |||
846 | * PCM | 849 | * PCM |
847 | */ | 850 | */ |
848 | int snd_hda_build_pcms(struct hda_bus *bus); | 851 | int snd_hda_build_pcms(struct hda_bus *bus); |
852 | int snd_hda_codec_build_pcms(struct hda_codec *codec); | ||
849 | void snd_hda_codec_setup_stream(struct hda_codec *codec, hda_nid_t nid, | 853 | void snd_hda_codec_setup_stream(struct hda_codec *codec, hda_nid_t nid, |
850 | u32 stream_tag, | 854 | u32 stream_tag, |
851 | int channel_id, int format); | 855 | int channel_id, int format); |