Re: HDA Intel IDT 92HD71B7X - HP Pavilion DV7-1299EF - Only the left speaker is working

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Sat, 14 Nov 2009 13:46:37 +0100,
Wael Nasreddine (a.k.a eMxyzptlk) wrote:
> 
> [1  <multipart/alternative (7bit)>]
> [1.1  <text/plain; UTF-8 (7bit)>]
> On Thu, Nov 12, 2009 at 11:16, Takashi Iwai <tiwai@xxxxxxx> wrote:
> 
> > At Thu, 12 Nov 2009 10:46:24 +0100,
> > Wael Nasreddine (a.k.a eMxyzptlk) wrote:
> > >
> > > Takashi,
> > >
> > > I tried the snapshot from
> > >
> > ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-snapshot.tar.gz
> > > last night with and without options still no go, the options I've
> > > tried:
> > >
> > > - options snd-hda-intel enable_msi=
> > > - options snd-hda-intel enable_msi=1 single_cmd=0
> > > power_save_controller=0 power_save=0 model=hp-dv5
> >
> > power_save should be irrelevant.  And model=hp-dv5 and enable_msi=1
> > are already turned on as default in the recent version.
> >
> > The next would be model=auto to avoid hp-dv5 quirk.
> >
> > Also, it's helpful if you give a summary of your problems again.
> >
> >
> > Takashi
> >
> 
> Takashi,
> 
> I just tried 'options snd-hda-intel enable_msi=1 model=auto' Didn't
> have much effect, the same problem (sound only from left speaker),
> always the same result with 'speaker-test -c6 -twav' I can only hear
> 'Front Left'

OK.  But the headphone works, right?


> Summary:
> =======
> 
> I have an HP DV7-1299EF, BIOS (Version F.2C, F.2A and F.23) , Due to a BIOS
> BUG, the
> BIOS report only one speaker as an output so the driver does not know
> how to use pins in order to have a stereo output ( at least that's
> what you told me last month when you analysed the alsa-info output)... And
> so one speaker, the left speaker is the only speaker currently working under
> Linux.
> 
> 
> First I suspected a hardware problem so 2 days ago I restored Windows,
> tried the sound it works, and I updated my BIOS (it was version F.2A
> before) but sadly it has the same BUG, I also tried reverting back to F.2A
> and further back to F.23 same result...
> 
> Attached to this mail, my alsa-info.txt

The codec registers look OK through a quick look.

You can try GPIO pin up/down for each pin.  Also each pin has two
directions, so you'll have 8 x 2 x 2 trials.
For example, to test GPIO 3, pass 0x08 (= 1 << 3), try the commands
below and check aplay at each.  (the lines '//' are just my comments)

	// dir = 0, data = 1
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x08
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x00
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x08

	// dir = 0, data = 0
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x08
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x00
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x00

	// dir = 1, data = 0
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x08
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x08
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x00

	// dir = 1, data = 1
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x08
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x08
	hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x08

Repeat these for each GPIO pin, from 0 to 7.

One another possibility is to use the output pin NID 0x0f.
For testing this, build with the reconfig feature (usually enabled),
then change the pin 0x0f default config, such as

	echo 0x0f 0x90171111 > /sys/class/sound/hwC0D0/user_pin_configs

then quit all sound apps and reconfigure

	echo 1 > /sys/class/sound/hwC0D0/reconfig

Restore the mixer setup once via alsactl

	alsactl restore

Then check the mixer volumes again, try aplay.  With this setup,
try GPIO procedures above, too.


thanks,

Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux