Bug 63204 - [sound] /dev/mixer broken with ESS Maestro-2E (still on 5.4)
Summary: [sound] /dev/mixer broken with ESS Maestro-2E (still on 5.4)
Status: Closed Overcome By Events
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: Unspecified
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-multimedia (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-22 03:10 UTC by Steven S
Modified: 2017-12-09 18:27 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Steven S 2004-02-22 03:10:16 UTC
kldload snd_driver (or kldload snd_maestro if your feeling less froggy)

errors generated:

pcm0: <ESS Technology Maestro-2E> port 0xfc00-0xfcff irq 11 at device 12.0 on pci0
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
<snip>
pcm0: <Asahi Kasei AK4540 AC97 Codec>
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: ac97 codec reports dac not ready.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_wrcodec() PROGLESS timed out.

$ mixer
Mixer rec           is currently set to 0:0
Recording source: mic

$

no other devices listed

$ pciconf -l -v 

pcm0@pci0:12:0: class=0x040100 card=0x00011179 chip=0x1978125d rev=0x10 hdr=0x00
vendor = 'ESS Technology'
device = 'ES1978 Maestro-2E Audiodrive, ES1970 Canyon3D'
class = multimedia
subclass = audio

any playback of audio results in no volume, specifically tested was audio cd's in the cdrom drive and mp3's.

this is a fresh from ISO install of 5.2.1-RC2 downloaded from ftp.freebsd.org on 19 Feb 2004. The snd driver worked fine under previous version. A clean install of 5.1 restored totaly mixer functionality.

Fix: 

nuke and pave. Install 5.1
How-To-Repeat: install 5.2.1-RC2 booting GENERIC with Maestro-2E sound card,
specifically Toshiba Satellite 2595XDVD laptop.
Comment 1 Nicholas Paufler 2004-02-27 20:25:45 UTC
I can confirm that I get the exact same behavior with a fresh install of
5.2.1-RELEASE on a Toshiba Satellite 2590CDT with the same sound chipset.
The card is detected as pcm0, I have the correct /dev/dsp* devices, but
mixer only reports a recording device and nothing for playback.

dmesg | grep pcm

pcm0: <ESS Technology Maestro-2E> port 0xfc00-0xfcff irq 11 at device 12.0
on pci0
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
---
Duplicate lines snipped
----
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: <Asahi Kasei AK4540 AC97 Codec>
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: ac97 codec reports dac not ready
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_wrcodec() PROGLESS timed out.

---
Nicholas Paufler
Systems Administrator
The Internet Centre
Comment 2 kenneth 2004-03-10 00:52:01 UTC
Seems to be fixed in FreeBSD5.2.1 - the sound is working without any
problems on my Compaq Armada E500 which uses ESS Maestro-2E for sound.
Comment 3 john fleming 2004-04-18 03:38:02 UTC
i just wanted to say i have a satellite 4090xdvd (toshiba) that is having
the same problem. I'm running current and the problem does not seem to be fixed
Same errors as above btw.

FreeBSD laptopwi.unixjunkie.com 5.2-CURRENT FreeBSD 5.2-CURRENT #6: Sun Mar 28 20:26:00 GMT 2004     root@localhost:/usr/obj/usr/src/sys/LAPTOP  i386


i'm updating to current as of today to test this out again.
Comment 4 john fleming 2004-04-20 05:28:57 UTC
yea, same problem.


pcm0: <ESS Technology Maestro-2E> port 0xfc00-0xfcff irq 11 at device 12.0 on pci0
pcm0: Reserved 0x100 bytes for rid 0x10 type 4 at 0xfc00
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: <Asahi Kasei AK4540 AC97 Codec>
pcm0: agg_rdcodec() PROGLESS timed out.
pcm0: agg_rdcodec() RW_DONE timed out.
pcm0: ac97 codec reports dac not ready
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: agg_wrcodec() PROGLESS timed out.
pcm0: [GIANT-LOCKED]

just a FYI i have tried booting in safe mode, and i have made a new kernel
with no smp/apic support. None of that helped.
Comment 5 john fleming 2004-06-15 22:16:20 UTC
i've started working on this a little more and seem to have found a pattern.
First off 4.10 has all the same problems that 5.2.1 and current have. I have not
tried 4.9, but someone told me they had the same problems with 4.9.
This is what i've noticed when i boot 4.8 kernel and run a 4.10 userland sound
works fine. I did notice this in the dmesg though which is different from the
others.

pcm0: <ESS Technology Maestro-2E> port 0xfc00-0xfcff irq 11 at device 12.0 on pci0
pcm0: agg_rdcodec() RW_DONE timed out.
-> pcm0: will perform cold reset. <-
pcm0: <Asahi Kasei AK4540 ac97 codec>


Note the will perform cold reset. I don't see this with 4.10 or current and
from looking at the bugreport no one else does either.
i tried removing this if statment (but nothing between it) from maestro.c

/* if (bus_space_read_1(ess->st, ess->sh, PORT_CODEC_STAT)
            & CODEC_STAT_MASK) { */
blablabl

}

but it still didn't work with 4.10. Well maybe this is enough info for someone
with a little more clue to look into this. Also could someone assign this to 
sound@ assuming that is the correct place for this.
Comment 6 Mark Linimon freebsd_committer freebsd_triage 2004-08-30 22:32:43 UTC
Responsible Changed
From-To: freebsd-bugs->sound

Assign to sound alias.
Comment 7 john fleming 2004-09-15 18:26:13 UTC
quick update, i'm running 5.3-beta4 still same issue.
Laptop is now dual booted. 
XP = sound works
FreeBSD 5.3-Beta4 != works.

Same error in dmesg.
Comment 8 n 2005-05-25 12:06:52 UTC
I would like to report that this is still a problem on 5.4

Laptop is a Toshiba Satellite 4030CDS.

lotus# uname -a
FreeBSD lotus 5.4-RELEASE FreeBSD 5.4-RELEASE #0: Sun May  8 10:21:06 UTC 2005    root@harlow.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  i386
lotus# cat /dev/sndstat
FreeBSD Audio Driver (newpcm)
Installed devices:
pcm0: <ESS Technology Maestro-2E> at I/O port 0xfc00 irq 11 kld snd_maestro (4p/0r/0v channels duplex default)
Comment 9 Steven S 2005-09-14 22:42:41 UTC
Confirmed this is still a problem. I think since this card is reported as 
supported the severity should be increased from non-critical and the 
priority higher.

same data as before so i wont repeat all that

build is fresh cvsup of 5.4-STABLE
Comment 10 Scott D Friedemann 2005-12-03 03:07:20 UTC
I would like to report that this is still a problem on 6.0.

My laptop is a Toshiba Satellite 4100XDVD.

Same symptoms as are in the bug report.

It worked in 5.1 or 5.2.
Comment 11 Scott D Friedemann 2006-04-23 18:56:42 UTC
Progress on 6.1 RC1, but no cigar, yet.

Previous to 6.1 RC1, the output of mixer was:
	Mixer rec      is currently set to   0:0

Now I get all of the devices
	Mixer vol      is currently set to  98:98
	Mixer pcm      is currently set to  75:75
	Mixer lne     is currently set to  75:75
	Mixer mic      is currently set to   0:0
	Mixer cd       is currently set to  75:75
	Mixer rec      is currently set to   0:0
	Mixer igain    is currently set to   0:0
	Recording source: mic

There is no sound, though.
(Booting a Linux live CD does give sound, so the hardware does work.)

No other changes noted, but I thought it was worth mentioning.

Scott
Comment 12 bslater 2008-04-17 03:44:57 UTC
I'm getting the same results as everyone else using version 7.0.  I'm 
using a Toshiba Portege 7020CT.  Sound worked when Windows 98 was 
installed on it. 

The output from dmesg | grep pcm is the same as what's reported above.