[alsa-devel] Model for Toshiba Satellite L30 with Realtek ALC861-VD

Takashi Iwai tiwai at suse.de
Mon Apr 28 17:33:54 CEST 2008


At Sun, 27 Apr 2008 21:12:18 +0400,
Roman Rybalko wrote:
> 
> I have the Toshiba L30 laptop with ALC861-VD codec.
> Auto detection doesn't enables integrated speakers (and headphones are
> detected as line-out).
> The suitable models for it is "dallas" and "linovo",
> but they create unusable widgets and don't provide full functionality.
> So I decided to write own model.
> I've token some usable parts from dallas and linovo and place they in my
> model, "toshiba".
> It's in alsa-driver-1.0.16.diff
> 
> But I'd like to mute my microphone when it's unplugged (preferably by
> mixer),
> and also mute my speaker only by mixer when the HPs plugged in
> (now it is being muted by just disabling it's EAPD, as far as i understand),
> so I will be able to enable it any time even when HP is plugged.
> 
> I've tried to do the first task - alsa-driver-1.0.16-micmute.diff, but I
> failed to record anything from microphone then.
> 
> Could anyone give me an advice how should I do this?

The capture patch is independent from the widget 0x0b, so basically
the mic unsol event shouldn't do have any effect.

Usually comparing /proc/asound/card0/codec#* file between working and
non-working states helps to find out what got wrong.

BTW, does it have only one mic regardless of internal or external?
Most hardwares have separate pin widgets for internal and external
mics, and the driver is responsible to switch them appropriately...

Otherwise, your changes look almost good.  It'd be better to avoid
touching the widghet 0x0b as mic jack unsol because this would
conflict with the mixer setting (you change the mixer value
silently).  This could be fixed by adding a mixer notification, but
it's also annoying.  Try to toggle the pin-cap of the widget 0x18 per
jack detection, i.e. with input or no-input pincap.  This doesn't work
on all codecs, though...


thanks,

Takashi


> 
> -- 
> WBR,
> 
> Roman Rybalko
> 
> [2 alsa-driver-1.0.16.diff <text/x-patch (7bit)>]
> --- alsa-driver-1.0.16.orig/alsa-kernel/pci/hda/patch_realtek.c	2008-02-05 12:23:24.000000000 +0300
> +++ alsa-driver-1.0.16/alsa-kernel/pci/hda/patch_realtek.c	2008-04-27 20:40:52.000000000 +0400
> @@ -146,6 +146,7 @@
>  	ALC861VD_LENOVO,
>  	ALC861VD_DALLAS,
>  	ALC861VD_HP,
> +	ALC861VD_TOSHIBA,
>  	ALC861VD_AUTO,
>  	ALC861VD_MODEL_LAST,
>  };
> @@ -11865,6 +11866,13 @@
>  	},
>  };
>  
> +static struct hda_input_mux alc861vd_toshiba_capture_source = {
> +	.num_items = 1,
> +	.items = {
> +		{ "Mic", 0x0 },
> +	},
> +};
> +
>  #define alc861vd_mux_enum_info alc_mux_enum_info
>  #define alc861vd_mux_enum_get alc_mux_enum_get
>  
> @@ -12081,6 +12089,26 @@
>  	{ } /* end */
>  };
>  
> +/* Pin assignment: Front = 0x14, HP = 0x15,
> + *                 Mic = 0x18
> + */
> +static struct snd_kcontrol_new alc861vd_toshiba_mixer[] = {
> +	HDA_CODEC_VOLUME("Front Playback Volume", 0x02, 0x0, HDA_OUTPUT),
> +	HDA_BIND_MUTE("Front Playback Switch", 0x0c, 2, HDA_INPUT),
> +
> +	HDA_CODEC_VOLUME("Headphone Playback Volume", 0x03, 0x0, HDA_OUTPUT),
> +	HDA_BIND_MUTE("Headphone Playback Switch", 0x0d, 2, HDA_INPUT),
> +
> +	HDA_CODEC_VOLUME("PC Speaker Playback Volume", 0x0b, 0x05, HDA_INPUT),
> +	HDA_CODEC_MUTE("PC Speaker Playback Switch", 0x0b, 0x05, HDA_INPUT),
> +
> +	HDA_CODEC_VOLUME("Mic Boost", 0x18, 0, HDA_INPUT),
> +	HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT),
> +	HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT),
> +
> +	{ } /* end */
> +};
> +
>  /*
>   * generic initialization of ADC, input mixers and output mixers
>   */
> @@ -12348,6 +12376,7 @@
>  	[ALC861VD_LENOVO]	= "lenovo",
>  	[ALC861VD_DALLAS]	= "dallas",
>  	[ALC861VD_HP]		= "hp",
> +	[ALC861VD_TOSHIBA]	= "toshiba",
>  	[ALC861VD_AUTO]		= "auto",
>  };
>  
> @@ -12362,6 +12391,7 @@
>  	/*SND_PCI_QUIRK(0x1179, 0xff00, "DALLAS", ALC861VD_DALLAS),*/ /*lenovo*/
>  	SND_PCI_QUIRK(0x1179, 0xff01, "DALLAS", ALC861VD_DALLAS),
>  	SND_PCI_QUIRK(0x1179, 0xff03, "Toshiba P205", ALC861VD_LENOVO),
> +	SND_PCI_QUIRK(0x1179, 0xff31, "Toshiba L30", ALC861VD_TOSHIBA),
>  	SND_PCI_QUIRK(0x1565, 0x820d, "Biostar NF61S SE", ALC861VD_6ST_DIG),
>  	SND_PCI_QUIRK(0x17aa, 0x2066, "Lenovo", ALC861VD_LENOVO),
>  	SND_PCI_QUIRK(0x17aa, 0x3802, "Lenovo 3000 C200", ALC861VD_LENOVO),
> @@ -12470,6 +12500,19 @@
>  		.unsol_event = alc861vd_dallas_unsol_event,
>  		.init_hook = alc861vd_dallas_automute,
>  	},		
> +	[ALC861VD_TOSHIBA] = {
> +		.mixers = { alc861vd_toshiba_mixer },
> +		.init_verbs = { alc861vd_dallas_verbs },
> +		.num_dacs = ARRAY_SIZE(alc861vd_dac_nids),
> +		.dac_nids = alc861vd_dac_nids,
> +		.num_adc_nids = ARRAY_SIZE(alc861vd_adc_nids),
> +		.adc_nids = alc861vd_adc_nids,
> +		.num_channel_mode = ARRAY_SIZE(alc861vd_3stack_2ch_modes),
> +		.channel_mode = alc861vd_3stack_2ch_modes,
> +		.input_mux = &alc861vd_toshiba_capture_source,
> +		.unsol_event = alc861vd_dallas_unsol_event,
> +		.init_hook = alc861vd_dallas_automute,
> +	},
>  };
>  
>  /*
> [3 alsa-driver-1.0.16-micmute.diff <text/x-patch (7bit)>]
> --- alsa-driver-1.0.16.orig/alsa-kernel/pci/hda/patch_realtek.c	2008-02-05 12:23:24.000000000 +0300
> +++ alsa-driver-1.0.16/alsa-kernel/pci/hda/patch_realtek.c	2008-04-27 16:13:24.000000000 +0400
> @@ -146,6 +146,7 @@
>  	ALC861VD_LENOVO,
>  	ALC861VD_DALLAS,
>  	ALC861VD_HP,
> +	ALC861VD_TOSHIBA,
>  	ALC861VD_AUTO,
>  	ALC861VD_MODEL_LAST,
>  };
> @@ -11865,6 +11866,13 @@
>  	},
>  };
>  
> +static struct hda_input_mux alc861vd_toshiba_capture_source = {
> +	.num_items = 1,
> +	.items = {
> +		{ "Mic", 0x0 },
> +	},
> +};
> +
>  #define alc861vd_mux_enum_info alc_mux_enum_info
>  #define alc861vd_mux_enum_get alc_mux_enum_get
>  
> @@ -12081,6 +12089,26 @@
>  	{ } /* end */
>  };
>  
> +/* Pin assignment: Front = 0x14, HP = 0x15,
> + *                 Mic = 0x18
> + */
> +static struct snd_kcontrol_new alc861vd_toshiba_mixer[] = {
> +	HDA_CODEC_VOLUME("Front Playback Volume", 0x02, 0x0, HDA_OUTPUT),
> +	HDA_BIND_MUTE("Front Playback Switch", 0x0c, 2, HDA_INPUT),
> +
> +	HDA_CODEC_VOLUME("Headphone Playback Volume", 0x03, 0x0, HDA_OUTPUT),
> +	HDA_BIND_MUTE("Headphone Playback Switch", 0x0d, 2, HDA_INPUT),
> +
> +	HDA_CODEC_VOLUME("PC Speaker Playback Volume", 0x0b, 0x05, HDA_INPUT),
> +	HDA_CODEC_MUTE("PC Speaker Playback Switch", 0x0b, 0x05, HDA_INPUT),
> +
> +	HDA_CODEC_VOLUME("Mic Boost", 0x18, 0, HDA_INPUT),
> +	HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT),
> +	HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT),
> +
> +	{ } /* end */
> +};
> +
>  /*
>   * generic initialization of ADC, input mixers and output mixers
>   */
> @@ -12326,6 +12354,39 @@
>  		alc861vd_dallas_automute(codec);
>  }
>  
> +#define alc861vd_toshiba_hp_automute alc861vd_dallas_automute
> +
> +/* mute mic if it's unplugged */
> +static void alc861vd_toshiba_mic_automute(struct hda_codec *codec)
> +{
> +	unsigned int present;
> +	unsigned char bits;
> +
> +	present = snd_hda_codec_read(codec, 0x18, 0,
> +				     AC_VERB_GET_PIN_SENSE, 0) & 0x80000000;
> +	bits = present ? 0 : HDA_AMP_MUTE;
> +	snd_hda_codec_amp_stereo(codec, 0x0b, HDA_INPUT, 0,
> +				 HDA_AMP_MUTE, bits);
> +}
> +
> +static void alc861vd_toshiba_automute(struct hda_codec *codec)
> +{
> +	alc861vd_toshiba_hp_automute(codec);
> +	alc861vd_toshiba_mic_automute(codec);
> +}
> +
> +static void alc861vd_toshiba_unsol_event(struct hda_codec *codec, unsigned int res)
> +{
> +	switch (res >> 26) {
> +	case ALC880_HP_EVENT:
> +		alc861vd_toshiba_hp_automute(codec);
> +		break;
> +	case ALC880_MIC_EVENT:
> +		alc861vd_toshiba_mic_automute(codec);
> +		break;
> +	}
> +}
> +
>  #ifdef CONFIG_SND_HDA_POWER_SAVE
>  #define alc861vd_loopbacks	alc880_loopbacks
>  #endif
> @@ -12348,6 +12409,7 @@
>  	[ALC861VD_LENOVO]	= "lenovo",
>  	[ALC861VD_DALLAS]	= "dallas",
>  	[ALC861VD_HP]		= "hp",
> +	[ALC861VD_TOSHIBA]	= "toshiba",
>  	[ALC861VD_AUTO]		= "auto",
>  };
>  
> @@ -12362,6 +12424,7 @@
>  	/*SND_PCI_QUIRK(0x1179, 0xff00, "DALLAS", ALC861VD_DALLAS),*/ /*lenovo*/
>  	SND_PCI_QUIRK(0x1179, 0xff01, "DALLAS", ALC861VD_DALLAS),
>  	SND_PCI_QUIRK(0x1179, 0xff03, "Toshiba P205", ALC861VD_LENOVO),
> +	SND_PCI_QUIRK(0x1179, 0xff31, "Toshiba L30", ALC861VD_TOSHIBA),
>  	SND_PCI_QUIRK(0x1565, 0x820d, "Biostar NF61S SE", ALC861VD_6ST_DIG),
>  	SND_PCI_QUIRK(0x17aa, 0x2066, "Lenovo", ALC861VD_LENOVO),
>  	SND_PCI_QUIRK(0x17aa, 0x3802, "Lenovo 3000 C200", ALC861VD_LENOVO),
> @@ -12470,6 +12533,20 @@
>  		.unsol_event = alc861vd_dallas_unsol_event,
>  		.init_hook = alc861vd_dallas_automute,
>  	},		
> +	[ALC861VD_TOSHIBA] = {
> +		.mixers = { alc861vd_toshiba_mixer },
> +		.init_verbs = { alc861vd_dallas_verbs,
> +				alc861vd_lenovo_unsol_verbs },
> +		.num_dacs = ARRAY_SIZE(alc861vd_dac_nids),
> +		.dac_nids = alc861vd_dac_nids,
> +		.num_adc_nids = ARRAY_SIZE(alc861vd_adc_nids),
> +		.adc_nids = alc861vd_adc_nids,
> +		.num_channel_mode = ARRAY_SIZE(alc861vd_3stack_2ch_modes),
> +		.channel_mode = alc861vd_3stack_2ch_modes,
> +		.input_mux = &alc861vd_toshiba_capture_source,
> +		.unsol_event = alc861vd_toshiba_unsol_event,
> +		.init_hook = alc861vd_toshiba_automute,
> +	},
>  };
>  
>  /*
> [4 codec#0 <text/plain (base64)>]
> Codec: Realtek ALC861-VD
> Address: 0
> Vendor Id: 0x10ec0862
> Subsystem Id: 0x1179820d
> Revision Id: 0x100001
> No Modem Function Group found
> Default PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Default Amp-In caps: N/A
> Default Amp-Out caps: N/A
> Node 0x02 [Audio Output] wcaps 0x1d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x40, nsteps=0x40, stepsize=0x03, mute=0
>   Amp-Out vals:  [0x40 0x40]
>   PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x03 [Audio Output] wcaps 0x1d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x40, nsteps=0x40, stepsize=0x03, mute=0
>   Amp-Out vals:  [0x3c 0x40]
>   PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x04 [Audio Output] wcaps 0x1d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x40, nsteps=0x40, stepsize=0x03, mute=0
>   Amp-Out vals:  [0x00 0x00]
>   PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x05 [Audio Output] wcaps 0x1d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x40, nsteps=0x40, stepsize=0x03, mute=0
>   Amp-Out vals:  [0x00 0x00]
>   PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0xe]: 16 20 24
>     formats [0x1]: PCM
> Node 0x06 [Audio Output] wcaps 0x211: Stereo Digital
>   PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0x1e]: 16 20 24 32
>     formats [0x1]: PCM
> Node 0x07 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x08 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x09 [Audio Input] wcaps 0x10011b: Stereo Amp-In
>   Amp-In caps: ofs=0x09, nsteps=0x1f, stepsize=0x05, mute=1
>   Amp-In vals:  [0x1f 0x1f]
>   PCM:
>     rates [0x160]: 44100 48000 96000
>     bits [0x6]: 16 20
>     formats [0x1]: PCM
>   Connection: 1
>      0x22
> Node 0x0a [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x0b [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x17, nsteps=0x1f, stepsize=0x05, mute=1
>   Amp-In vals:  [0x99 0x99] [0x1f 0x1f] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x01 0x01]
>   Connection: 6
>      0x18 0x19 0x1a 0x1b 0x1c 0x1d
> Node 0x0c [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x00 0x00] [0x00 0x00]
>   Connection: 2
>      0x02 0x0b
> Node 0x0d [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x00 0x00] [0x00 0x00]
>   Connection: 2
>      0x03 0x0b
> Node 0x0e [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x80 0x80] [0x80 0x80]
>   Connection: 2
>      0x04 0x0b
> Node 0x0f [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x80 0x80] [0x80 0x80]
>   Connection: 2
>      0x05 0x0b
> Node 0x10 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x11 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x12 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x13 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x14 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x00 0x00]
>   Pincap 0x081003c: IN OUT HP EAPD Detect
>   Pin Default 0x99130110: [Fixed] Speaker at Int ATAPI
>     Conn = ATAPI, Color = Unknown
>   Pin-ctls: 0x40: OUT
>   Connection: 1
>      0x0c
> Node 0x15 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x00 0x00]
>   Pincap 0x0810034: IN OUT EAPD Detect
>   Pin Default 0x01014020: [Jack] Line Out at Ext Rear
>     Conn = 1/8, Color = Green
>   Pin-ctls: 0x40: OUT
>   Connection: 1
>      0x0d
> Node 0x16 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x00 0x00]
>   Pincap 0x0834: IN OUT Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x40: OUT
>   Connection: 1
>      0x0e
> Node 0x17 [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x00 0x00]
>   Pincap 0x0834: IN OUT Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x40: OUT
>   Connection: 1
>      0x0f
> Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
>   Amp-In vals:  [0x00 0x00]
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x081734: IN OUT Detect
>   Pin Default 0x01a19830: [Jack] Mic at Ext Rear
>     Conn = 1/8, Color = Pink
>   Pin-ctls: 0x21: IN
>   Connection: 1
>      0x0e
> Node 0x19 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
>   Amp-In vals:  [0x00 0x00] [0x00 0x00]
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x08173c: IN OUT HP Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x21: IN
>   Connection: 2
>      0x0c* 0x0f
> Node 0x1a [Pin Complex] wcaps 0x40018d: Stereo Amp-Out
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x0834: IN OUT Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x20: IN
>   Connection: 1
>      0x0d
> Node 0x1b [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
>   Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
>   Amp-In vals:  [0x00 0x00] [0x00 0x00]
>   Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-Out vals:  [0x80 0x80]
>   Pincap 0x08173c: IN OUT HP Detect
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x20: IN
>   Connection: 2
>      0x0c* 0x0f
> Node 0x1c [Pin Complex] wcaps 0x400001: Stereo
>   Pincap 0x0820: IN
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x20: IN
> Node 0x1d [Pin Complex] wcaps 0x400000: Mono
>   Pincap 0x0820: IN
>   Pin Default 0x4014820d: [N/A] Speaker at Ext N/A
>     Conn = RCA, Color = Purple
>   Pin-ctls: 0x20: IN
> Node 0x1e [Pin Complex] wcaps 0x400300: Mono Digital
>   Pincap 0x0810: OUT
>   Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
>     Conn = 1/8, Color = Black
>   Pin-ctls: 0x40: OUT
>   Connection: 1
>      0x06
> Node 0x1f [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x20 [Vendor Defined Widget] wcaps 0xf00040: Mono
> Node 0x21 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x22 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
>   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
>   Amp-In vals:  [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
>   Connection: 11
>      0x18 0x19 0x1a 0x1b 0x1c 0x1d 0x14 0x15 0x16 0x17 0x0b
> Node 0x23 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x24 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x25 [Vendor Defined Widget] wcaps 0xf00000: Mono
> Node 0x26 [Vendor Defined Widget] wcaps 0xf00000: Mono
> [5 codec#0.svg.gz <application/x-gzip (base64)>]
> 
> [6 lspci.txt <text/plain (base64)>]
> 00:00.0 Host bridge [0600]: ATI Technologies Inc Unknown device [1002:5a31] (rev 01)
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
> 	Latency: 64
> 
> 00:01.0 PCI bridge [0604]: ATI Technologies Inc RS480 PCI Bridge [1002:5a3f] (prog-if 00 [Normal decode])
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64
> 	Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
> 	I/O behind bridge: 00009000-00009fff
> 	Memory behind bridge: c0000000-c00fffff
> 	Prefetchable memory behind bridge: d0000000-dfffffff
> 	Secondary status: 66MHz+ FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
> 	BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-
> 	Capabilities: <access denied>
> 
> 00:12.0 IDE interface [0101]: ATI Technologies Inc 4379 Serial ATA Controller [1002:4379] (rev 80) (prog-if 8f [Master SecP SecO PriP PriO])
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64, Cache Line Size: 32 bytes
> 	Interrupt: pin A routed to IRQ 18
> 	Region 0: I/O ports at 8440 [size=8]
> 	Region 1: I/O ports at 8430 [size=4]
> 	Region 2: I/O ports at 8420 [size=8]
> 	Region 3: I/O ports at 8410 [size=4]
> 	Region 4: I/O ports at 8400 [size=16]
> 	Region 5: Memory at c0407000 (32-bit, non-prefetchable) [size=512]
> 	[virtual] Expansion ROM at 44000000 [disabled] [size=512K]
> 	Capabilities: <access denied>
> 
> 00:13.0 USB Controller [0c03]: ATI Technologies Inc IXP SB400 USB Host Controller [1002:4374] (rev 80) (prog-if 10 [OHCI])
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64, Cache Line Size: 32 bytes
> 	Interrupt: pin A routed to IRQ 17
> 	Region 0: Memory at c0404000 (32-bit, non-prefetchable) [size=4K]
> 
> 00:13.1 USB Controller [0c03]: ATI Technologies Inc IXP SB400 USB Host Controller [1002:4375] (rev 80) (prog-if 10 [OHCI])
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64, Cache Line Size: 32 bytes
> 	Interrupt: pin A routed to IRQ 17
> 	Region 0: Memory at c0405000 (32-bit, non-prefetchable) [size=4K]
> 
> 00:13.2 USB Controller [0c03]: ATI Technologies Inc IXP SB400 USB2 Host Controller [1002:4373] (rev 80) (prog-if 20 [EHCI])
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64, Cache Line Size: 32 bytes
> 	Interrupt: pin A routed to IRQ 17
> 	Region 0: Memory at c0406000 (32-bit, non-prefetchable) [size=4K]
> 	Capabilities: <access denied>
> 
> 00:14.0 SMBus [0c05]: ATI Technologies Inc IXP SB400 SMBus Controller [1002:4372] (rev 82)
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Region 0: I/O ports at 8040 [size=16]
> 	Region 1: Memory at c0407400 (32-bit, non-prefetchable) [size=1K]
> 
> 00:14.1 IDE interface [0101]: ATI Technologies Inc Standard Dual Channel PCI IDE Controller [1002:4376] (rev 80) (prog-if 88 [Master SecP])
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 0
> 	Interrupt: pin A routed to IRQ 19
> 	Region 0: I/O ports at 01f0 [size=8]
> 	Region 1: I/O ports at 03f4 [size=1]
> 	Region 2: I/O ports at 0170 [size=8]
> 	Region 3: I/O ports at 0374 [size=1]
> 	Region 4: I/O ports at 8460 [size=16]
> 	Capabilities: <access denied>
> 
> 00:14.2 Audio device [0403]: ATI Technologies Inc SB450 HDA Audio [1002:437b] (rev 01)
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64, Cache Line Size: 32 bytes
> 	Interrupt: pin ? routed to IRQ 19
> 	Region 0: Memory at c0400000 (64-bit, non-prefetchable) [size=16K]
> 	Capabilities: <access denied>
> 
> 00:14.3 ISA bridge [0601]: ATI Technologies Inc IXP SB400 PCI-ISA Bridge [1002:4377] (rev 80)
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 0
> 
> 00:14.4 PCI bridge [0604]: ATI Technologies Inc IXP SB400 PCI-PCI Bridge [1002:4371] (rev 80) (prog-if 01 [Subtractive decode])
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64
> 	Bus: primary=00, secondary=09, subordinate=0e, sec-latency=64
> 	I/O behind bridge: 0000a000-0000afff
> 	Memory behind bridge: c0100000-c01fffff
> 	Prefetchable memory behind bridge: 40000000-43ffffff
> 	Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR-
> 	BridgeCtl: Parity- SERR+ NoISA- VGA- MAbort- >Reset- FastB2B-
> 
> 01:05.0 VGA compatible controller [0300]: ATI Technologies Inc RC410 [Radeon Xpress 200M] [1002:5a62] (prog-if 00 [VGA])
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 255 (2000ns min), Cache Line Size: 32 bytes
> 	Interrupt: pin A routed to IRQ 20
> 	Region 0: Memory at d0000000 (32-bit, prefetchable) [size=256M]
> 	Region 1: I/O ports at 9000 [size=256]
> 	Region 2: Memory at c0000000 (32-bit, non-prefetchable) [size=64K]
> 	[virtual] Expansion ROM at c0020000 [disabled] [size=128K]
> 	Capabilities: <access denied>
> 
> 09:01.0 CardBus bridge [0607]: ENE Technology Inc CB1410 Cardbus Controller [1524:1410] (rev 01)
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 168, Cache Line Size: 128 bytes
> 	Interrupt: pin A routed to IRQ 16
> 	Region 0: Memory at c0101000 (32-bit, non-prefetchable) [size=4K]
> 	Bus: primary=09, secondary=0a, subordinate=0d, sec-latency=176
> 	Memory window 0: 40000000-43fff000 (prefetchable)
> 	Memory window 1: 48000000-4bfff000
> 	I/O window 0: 0000a400-0000a4ff
> 	I/O window 1: 0000a800-0000a8ff
> 	BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt+ PostWrite+
> 	16-bit legacy interface ports at 0001
> 
> 09:02.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ [10ec:8139] (rev 10)
> 	Subsystem: Toshiba America Info Systems Unknown device [1179:ff31]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 64 (8000ns min, 16000ns max)
> 	Interrupt: pin A routed to IRQ 21
> 	Region 0: I/O ports at a000 [size=256]
> 	Region 1: Memory at c0100000 (32-bit, non-prefetchable) [size=256]
> 	Capabilities: <access denied>
> 
> 09:04.0 Ethernet controller [0200]: Atheros Communications, Inc. AR2413 802.11bg NIC [168c:001a] (rev 01)
> 	Subsystem: Askey Computer Corp. Unknown device [144f:7094]
> 	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
> 	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> 	Latency: 168 (2500ns min, 7000ns max), Cache Line Size: 32 bytes
> 	Interrupt: pin A routed to IRQ 18
> 	Region 0: Memory at c0110000 (32-bit, non-prefetchable) [size=64K]
> 	Capabilities: <access denied>
> 
> [7  <text/plain; us-ascii (7bit)>]
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel


More information about the Alsa-devel mailing list