ALSA: Increase components array size
Increase the card components[] (and thus snd_card_info.components[], too) array size from 80 to 128 chars so that more strings can be stored. The 80 chars aren't enough for more than 2 HD-audio codecs, and this hits an ugly snd_BUG() as reported by Wu Fegguang for HP 2230s. The control protocol number is increased to 2.0.6 as well, in case it matters. Reported-by: Wu Fengguang <wfg@linux.intel.com> Acked-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
8ae23ec3ab
commit
ff33f2303b
2 changed files with 3 additions and 4 deletions
|
@ -707,7 +707,7 @@ struct snd_timer_tread {
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 5)
|
#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 6)
|
||||||
|
|
||||||
struct snd_ctl_card_info {
|
struct snd_ctl_card_info {
|
||||||
int card; /* card number */
|
int card; /* card number */
|
||||||
|
@ -718,8 +718,7 @@ struct snd_ctl_card_info {
|
||||||
unsigned char longname[80]; /* name + info text about soundcard */
|
unsigned char longname[80]; /* name + info text about soundcard */
|
||||||
unsigned char reserved_[16]; /* reserved for future (was ID of mixer) */
|
unsigned char reserved_[16]; /* reserved for future (was ID of mixer) */
|
||||||
unsigned char mixername[80]; /* visual mixer identification */
|
unsigned char mixername[80]; /* visual mixer identification */
|
||||||
unsigned char components[80]; /* card components / fine identification, delimited with one space (AC97 etc..) */
|
unsigned char components[128]; /* card components / fine identification, delimited with one space (AC97 etc..) */
|
||||||
unsigned char reserved[48]; /* reserved for future */
|
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef int __bitwise snd_ctl_elem_type_t;
|
typedef int __bitwise snd_ctl_elem_type_t;
|
||||||
|
|
|
@ -116,7 +116,7 @@ struct snd_card {
|
||||||
char shortname[32]; /* short name of this soundcard */
|
char shortname[32]; /* short name of this soundcard */
|
||||||
char longname[80]; /* name of this soundcard */
|
char longname[80]; /* name of this soundcard */
|
||||||
char mixername[80]; /* mixer name */
|
char mixername[80]; /* mixer name */
|
||||||
char components[80]; /* card components delimited with
|
char components[128]; /* card components delimited with
|
||||||
space */
|
space */
|
||||||
struct module *module; /* top-level module */
|
struct module *module; /* top-level module */
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue