Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Tobin Davis <tdavis@dsl-only.net>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@lists.sourceforge.net
Subject: Re: BUG in >=1.0.13rc1
Date: Thu, 28 Dec 2006 13:13:07 -0800	[thread overview]
Message-ID: <1167340387.9563.102.camel@localhost> (raw)
In-Reply-To: <1167330473.9563.83.camel@localhost>


[-- Attachment #1.1: Type: text/plain, Size: 2236 bytes --]

Nope, this didn't fix the problem.

Here is what my testers are seeing:

ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/hda_codec.c:216: hda_codec: invalid dep_range_val 0:7fff
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/hda_codec.c:216: hda_codec: invalid dep_range_val 0:7fff
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:623: hda-intel: get_response timeout: IRS=0x0
.
. # repeated multiple times
.
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/hda_codec.c:216: hda_codec: invalid dep_range_val 0:7fff
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:623: hda-intel: get_response timeout: IRS=0x0
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/../../alsa-kernel/pci/hda/hda_intel.c:623: hda-intel: get_response timeout: IRS=0x0
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/../../alsa-kernel/pci/hda/hda_generic.c:683: hda_generic: no proper input path found
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/../../alsa-kernel/pci/hda/hda_generic.c:431: hda_generic: no proper output path found
ALSA /home/arojasp/Drivers/alsa-driver-1.0.14rc1patch/pci/hda/../../alsa-kernel/pci/hda/hda_generic.c:1001: hda_generic: no PCM found

In further communications with one of the testers, a third phantom codec
is appearing with garbage data.

Codec: Generic ffff ID ffff
Address: 3
Vendor Id: 0xffffffff
Subsystem Id: 0xffffffff
Revision Id: 0xffffffff

They are getting this with and without my patch (even on
alsa-driver-1.0.13).  It appears that the system bios is adding this, as
it is there after a clean reboot.

Any ideas?

Tobin

On Thu, 2006-12-28 at 10:27 -0800, Tobin Davis wrote:

> This could also explain why my patch for the Stac9250 is breaking.
> 
> I've forwarded this fix to my testers.  Hope it fixes their systems.
> 
> On Thu, 2006-12-28 at 14:05 +0100, Takashi Iwai wrote:
> 
> > Could you try ALSA HG version?
> > There was a bug in hda_generic.c that may cause Oops, and got fixed
> > recently after 1.0.14rc1.
> > 
> > 
> > Takashi 
> 
> -- 
> Tobin Davis <tdavis@dsl-only.net>

-- 
Tobin Davis <tdavis@dsl-only.net>

[-- Attachment #1.2: Type: text/html, Size: 3374 bytes --]

[-- Attachment #2: gateway-mp6954.patch.7 --]
[-- Type: text/x-patch, Size: 5553 bytes --]

diff -r 9998aa91f5da pci/hda/patch_sigmatel.c
--- a/pci/hda/patch_sigmatel.c	Fri Dec 22 12:44:25 2006 +0100
+++ b/pci/hda/patch_sigmatel.c	Thu Dec 28 11:58:03 2006 -0800
@@ -48,6 +48,11 @@ enum {
 };
 
 enum {
+	STAC_925x_REF,
+	STAC_925x_MODELS
+};
+
+enum {
 	STAC_D945_REF,
 	STAC_D945GTP3,
 	STAC_D945GTP5,
@@ -129,6 +134,18 @@ static hda_nid_t stac9200_dac_nids[1] = 
         0x02,
 };
 
+static hda_nid_t stac925x_adc_nids[1] = {
+        0x03,
+};
+
+static hda_nid_t stac925x_mux_nids[1] = {
+        0x0f,
+};
+
+static hda_nid_t stac925x_dac_nids[1] = {
+        0x02,
+};
+
 static hda_nid_t stac922x_adc_nids[2] = {
         0x06, 0x07,
 };
@@ -160,6 +177,11 @@ static hda_nid_t stac9200_pin_nids[8] = 
 static hda_nid_t stac9200_pin_nids[8] = {
 	0x08, 0x09, 0x0d, 0x0e, 
 	0x0f, 0x10, 0x11, 0x12,
+};
+
+static hda_nid_t stac925x_pin_nids[8] = {
+	0x07, 0x08, 0x0a, 0x0b, 
+	0x0c, 0x0d, 0x10, 0x11,
 };
 
 static hda_nid_t stac922x_pin_nids[10] = {
@@ -238,6 +260,12 @@ static struct hda_verb stac9200_core_ini
 static struct hda_verb stac9200_core_init[] = {
 	/* set dac0mux for dac converter */
 	{ 0x07, AC_VERB_SET_CONNECT_SEL, 0x00},
+	{}
+};
+
+static struct hda_verb stac925x_core_init[] = {
+	/* set dac0mux for dac converter */
+	{ 0x06, AC_VERB_SET_CONNECT_SEL, 0x00},
 	{}
 };
 
@@ -283,6 +311,23 @@ static struct snd_kcontrol_new stac9200_
 	HDA_CODEC_VOLUME("Capture Volume", 0x0a, 0, HDA_OUTPUT),
 	HDA_CODEC_MUTE("Capture Switch", 0x0a, 0, HDA_OUTPUT),
 	HDA_CODEC_VOLUME("Capture Mux Volume", 0x0c, 0, HDA_OUTPUT),
+	{ } /* end */
+};
+
+static struct snd_kcontrol_new stac925x_mixer[] = {
+	HDA_CODEC_VOLUME("Master Playback Volume", 0xe, 0, HDA_OUTPUT),
+	HDA_CODEC_MUTE("Master Playback Switch", 0xe, 0, HDA_OUTPUT),
+	{
+		.iface = SNDRV_CTL_ELEM_IFACE_MIXER,
+		.name = "Input Source",
+		.count = 1,
+		.info = stac92xx_mux_enum_info,
+		.get = stac92xx_mux_enum_get,
+		.put = stac92xx_mux_enum_put,
+	},
+	HDA_CODEC_VOLUME("Capture Volume", 0x09, 0, HDA_OUTPUT),
+	HDA_CODEC_MUTE("Capture Switch", 0x09, 0, HDA_OUTPUT),
+	HDA_CODEC_VOLUME("Capture Mux Volume", 0x0f, 0, HDA_OUTPUT),
 	{ } /* end */
 };
 
@@ -408,6 +453,28 @@ static struct snd_pci_quirk stac9200_cfg
 		      "Dell Latitude D620", STAC_REF),
 	SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01cb,
 		      "Dell Latitude 120L", STAC_REF),
+	{} /* terminator */
+};
+
+static unsigned int ref925x_pin_configs[8] = {
+	0x40c003f0, 0x424503f2, 0x01813022, 0x02a19021,
+	0x90a70320, 0x02214210, 0x400003f1, 0x9033032e,
+};
+
+static unsigned int *stac925x_brd_tbl[STAC_925x_MODELS] = {
+	[STAC_REF] = ref925x_pin_configs,
+};
+
+static const char *stac925x_models[STAC_925x_MODELS] = {
+	[STAC_REF] = "ref",
+};
+
+static struct snd_pci_quirk stac925x_cfg_tbl[] = {
+	/* SigmaTel reference board */
+	SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0x2668, "DFI LanParty", STAC_REF),
+	SND_PCI_QUIRK(0x107b, 0x0366, "Gateway MP6954", STAC_REF),
+	SND_PCI_QUIRK(0x107b, 0x0461, "Gateway NX560XL", STAC_REF),
+	SND_PCI_QUIRK(0x1002, 0x437b, "Gateway MX6453", STAC_REF),
 	{} /* terminator */
 };
 
@@ -1699,6 +1766,58 @@ static int patch_stac9200(struct hda_cod
 	return 0;
 }
 
+static int patch_stac925x(struct hda_codec *codec)
+{
+	struct sigmatel_spec *spec;
+	int err;
+
+	spec  = kzalloc(sizeof(*spec), GFP_KERNEL);
+	if (spec == NULL)
+		return -ENOMEM;
+
+	codec->spec = spec;
+	spec->num_pins = 8;
+	spec->pin_nids = stac925x_pin_nids;
+	spec->board_config = snd_hda_check_board_config(codec, STAC_925x_MODELS,
+							stac925x_models,
+							stac925x_cfg_tbl);
+	if (spec->board_config < 0) {
+		snd_printdd(KERN_INFO "hda_codec: Unknown model for STAC925x, using BIOS defaults\n");
+		err = stac92xx_save_bios_config_regs(codec);
+		if (err < 0) {
+			stac92xx_free(codec);
+			return err;
+		}
+		spec->pin_configs = spec->bios_pin_configs;
+	} else if (stac925x_brd_tbl[spec->board_config] != NULL) {
+		spec->pin_configs = stac925x_brd_tbl[spec->board_config];
+		snd_printdd(KERN_INFO "STAC925x: setting config regs\n");
+		stac92xx_set_config_regs(codec);
+	}
+
+	spec->adc_nids = stac925x_adc_nids;
+	spec->mux_nids = stac925x_mux_nids;
+	spec->num_muxes = 1;
+	spec->num_dmics = 0;
+
+	snd_printdd(KERN_INFO "STAC925x: Init.\n");
+	spec->init = stac925x_core_init;
+	spec->mixer = stac925x_mixer;
+
+	spec->multiout.dac_nids = spec->dac_nids;
+
+	snd_printdd(KERN_INFO "STAC925x: Parsing autoconfig.\n");
+	err = stac92xx_parse_auto_config(codec, 0x8, 0x7);
+	if (err < 0) {
+		stac92xx_free(codec);
+		return err;
+	}
+
+	codec->patch_ops = stac92xx_patch_ops;
+
+	return 0;
+}
+
 static int patch_stac922x(struct hda_codec *codec)
 {
 	struct sigmatel_spec *spec;
@@ -2149,6 +2268,12 @@ struct hda_codec_preset snd_hda_preset_s
  	{ .id = 0x83847627, .name = "STAC9271D", .patch = patch_stac927x },
  	{ .id = 0x83847628, .name = "STAC9274X5NH", .patch = patch_stac927x },
  	{ .id = 0x83847629, .name = "STAC9274D5NH", .patch = patch_stac927x },
+	{ .id = 0x83847632, .name = "STAC9202",  .patch = patch_stac925x },
+	{ .id = 0x83847633, .name = "STAC9202D", .patch = patch_stac925x },
+	{ .id = 0x83847634, .name = "STAC9250",  .patch = patch_stac925x },
+	{ .id = 0x83847635, .name = "STAC9250D", .patch = patch_stac925x },
+	{ .id = 0x83847636, .name = "STAC9251",  .patch = patch_stac925x },
+	{ .id = 0x83847637, .name = "STAC9250D", .patch = patch_stac925x },
  	/* The following does not take into account .id=0x83847661 when subsys =
  	 * 104D0C00 which is STAC9225s. Because of this, some SZ Notebooks are
  	 * currently not fully supported.

[-- Attachment #3: Type: text/plain, Size: 347 bytes --]

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

[-- Attachment #4: Type: text/plain, Size: 161 bytes --]

_______________________________________________
Alsa-devel mailing list
Alsa-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/alsa-devel

      reply	other threads:[~2006-12-28 21:13 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-12-27 22:00 BUG in >=1.0.13rc1 risc
2006-12-27 22:32 ` Tobin Davis
2006-12-27 23:54   ` risc
2007-02-16  1:27     ` risc
     [not found]       ` <200702160335.20228.sjakub@gmail.com>
2007-02-16 20:57         ` risc
2007-02-17  5:19           ` Jakub Schmidtke
2007-02-22 16:19             ` Takashi Iwai
2006-12-28 13:05 ` Takashi Iwai
2006-12-28 18:05   ` risc
2006-12-28 18:27   ` Tobin Davis
2006-12-28 21:13     ` Tobin Davis [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1167340387.9563.102.camel@localhost \
    --to=tdavis@dsl-only.net \
    --cc=alsa-devel@lists.sourceforge.net \
    --cc=tiwai@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox