* [BUG] ali5451 not resumed properly under 2.6.7 ( fine under 2.6.6 )
@ 2004-06-23 17:04 Fedor Karpelevitch
2004-06-24 9:23 ` Takashi Iwai
0 siblings, 1 reply; 3+ messages in thread
From: Fedor Karpelevitch @ 2004-06-23 17:04 UTC (permalink / raw)
To: linux-kernel; +Cc: matt_wu
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
I upgraded to 2.6.7 recently and noticed that my ali5451 souncard
stopped behaving properly after resuming.
Basically after resume it produces no sound even though everything
pretends that the card is working properly (mixer "changes" volume
etc...).
I found that executing something like 'alsactl -F power A5451 D1'
makes it produce sound again although the volume is noticably lower
than it should be.
2.6.6 works just fine.
I looked at the diff for ali5451.c and noticed that in ali_suspend a
call to snd_pcm_suspend_all(chip->pcm) was added, but in ali_resume
no call to resume pcm was added. Could that be the cause of the
problem?
I will try adding that call and see if that fixes the problem.
here is that part of the diff:
+static int ali_suspend(snd_card_t *card, unsigned int state)
{
+ ali_t *chip = snd_magic_cast(ali_t, card->pm_private_data,
return -EINVAL);
ali_image_t *im;
int i, j;
im = chip->image;
if (! im)
- - return;
+ return 0;
+
+ snd_pcm_suspend_all(chip->pcm);
+ snd_ac97_suspend(chip->ac97);
spin_lock_irq(&chip->reg_lock);
@@ -1940,16 +1943,18 @@
outl(0xffffffff, ALI_REG(chip, ALI_STOP));
spin_unlock_irq(&chip->reg_lock);
+ return 0;
}
- -static void ali_resume(ali_t *chip)
+static int ali_resume(snd_card_t *card, unsigned int state)
{
+ ali_t *chip = snd_magic_cast(ali_t, card->pm_private_data,
return -EINVAL);
ali_image_t *im;
int i, j;
im = chip->image;
if (! im)
- - return;
+ return 0;
pci_enable_device(chip->pci);
@@ -1967,27 +1972,15 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFA2bgYw4m50RG4juoRAqTqAJ4+oHXRvOjz6NZLUS82oxIh+d7SIACgl65l
hCtld2qftBglwS0V0gYNHAw=
=ZLy7
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [BUG] ali5451 not resumed properly under 2.6.7 ( fine under 2.6.6 )
2004-06-23 17:04 [BUG] ali5451 not resumed properly under 2.6.7 ( fine under 2.6.6 ) Fedor Karpelevitch
@ 2004-06-24 9:23 ` Takashi Iwai
2004-06-24 20:34 ` Fedor Karpelevitch
0 siblings, 1 reply; 3+ messages in thread
From: Takashi Iwai @ 2004-06-24 9:23 UTC (permalink / raw)
To: linux-kernel
At Wed, 23 Jun 2004 10:04:17 -0700,
Fedor Karpelevitch wrote:
>
> Hi,
>
> I upgraded to 2.6.7 recently and noticed that my ali5451 souncard
> stopped behaving properly after resuming.
>
> Basically after resume it produces no sound even though everything
> pretends that the card is working properly (mixer "changes" volume
> etc...).
> I found that executing something like 'alsactl -F power A5451 D1'
> makes it produce sound again although the volume is noticably lower
> than it should be.
>
> 2.6.6 works just fine.
>
> I looked at the diff for ali5451.c and noticed that in ali_suspend a
> call to snd_pcm_suspend_all(chip->pcm) was added, but in ali_resume
> no call to resume pcm was added. Could that be the cause of the
> problem?
No, the resume is done either in pcm_oss.c or by calling the resume
ioctl explicitly from ALSA-native apps later on.
> I will try adding that call and see if that fixes the problem.
There is no function such as snd_pcm_resume_pcm().
Maybe you can remove the calls of snd_pcm_suspend_all(),
snd_ac97_suspend() in suspend callback, and snd_ac97_resume() in
resume callback.
--
Takashi Iwai <tiwai@suse.de> ALSA Developer - www.alsa-project.org
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [BUG] ali5451 not resumed properly under 2.6.7 ( fine under 2.6.6 )
2004-06-24 9:23 ` Takashi Iwai
@ 2004-06-24 20:34 ` Fedor Karpelevitch
0 siblings, 0 replies; 3+ messages in thread
From: Fedor Karpelevitch @ 2004-06-24 20:34 UTC (permalink / raw)
To: linux-kernel; +Cc: Takashi Iwai, matt_wu, Andrew Morton
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Takashi Iwai wrote:
> At Wed, 23 Jun 2004 10:04:17 -0700,
>
> Fedor Karpelevitch wrote:
> > Hi,
> >
> > I upgraded to 2.6.7 recently and noticed that my ali5451 souncard
> > stopped behaving properly after resuming.
> >
> > Basically after resume it produces no sound even though
> > everything pretends that the card is working properly (mixer
> > "changes" volume etc...).
> > I found that executing something like 'alsactl -F power A5451 D1'
> > makes it produce sound again although the volume is noticably
> > lower than it should be.
> >
> > 2.6.6 works just fine.
> >
> > I looked at the diff for ali5451.c and noticed that in
> > ali_suspend a call to snd_pcm_suspend_all(chip->pcm) was added,
> > but in ali_resume no call to resume pcm was added. Could that be
> > the cause of the problem?
>
> No, the resume is done either in pcm_oss.c or by calling the resume
> ioctl explicitly from ALSA-native apps later on.
>
> > I will try adding that call and see if that fixes the problem.
>
> There is no function such as snd_pcm_resume_pcm().
yeh, I figured that out... Should there be one?
>
> Maybe you can remove the calls of snd_pcm_suspend_all(),
> snd_ac97_suspend() in suspend callback, and snd_ac97_resume() in
> resume callback.
>
I tried this but it did not help, same result - no sound after resume,
tweaking PCM volume does make sound come back, but it is noticably
quieter than before suspend. I am back to 2.6.6 for now... :-(
Fedor
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFA2zrlw4m50RG4juoRAr5jAKClrmdZDMOKf12WVWQ5qmoyIv+z5ACfZit2
sBRBksHIVbqGF/Yljk1v/XY=
=eFiQ
-----END PGP SIGNATURE-----
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2004-06-24 20:35 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-06-23 17:04 [BUG] ali5451 not resumed properly under 2.6.7 ( fine under 2.6.6 ) Fedor Karpelevitch
2004-06-24 9:23 ` Takashi Iwai
2004-06-24 20:34 ` Fedor Karpelevitch
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox