I have an old, wheezing Dell Lattitude LM with an ESS1688 sound chip.
(specs at http://support.dell.com/docs/systems/pespmmx/specs.htm)
I have managed to get newpcm to find the 1688 via 'options PNPBIOS'
and the following patch:
Index: sys/dev/sound/isa/sbc.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/sound/isa/sbc.c,v
retrieving revision 1.7
diff -u -r1.7 sbc.c
--- sbc.c 1999/12/12 02:30:19 1.7
+++ sbc.c 1999/12/14 04:47:41
@@ -187,6 +187,7 @@
{0x01100001, "Avance Asound 110"},
{0x01200001, "Avance Logic ALS120"},
+ {0x02017316, "ESS ES1688"}, /* ESS1688 */
{0x68187316, "ESS ES1868"}, /* ESS1868 */
{0x69187316, "ESS ES1869"}, /* ESS1869 */
{0xacb0110e, "ESS ES1869 (Compaq OEM)"},
However, the machine now panics on boot in sbchan_init(), at line 821
of sb.c with a page fault on access to virtual address 0x14:
810 static void *
811 sbchan_init(void *devinfo, snd_dbuf *b, pcm_channel *c, int dir)
812 {
813 struct sb_info *sb = devinfo;
814 struct sb_chinfo *ch = (dir == PCMDIR_PLAY)? &sb->pch : &sb->rch;
815
816 ch->parent = sb;
817 ch->channel = c;
818 ch->buffer = b;
819 ch->buffer->bufsize = DSP_BUFFSIZE;
820 if (chn_allocbuf(ch->buffer, sb->parent_dmat) == -1) return NULL;
821 ch->buffer->chan = (dir == PCMDIR_PLAY)? rman_get_start(sb->drq2)
822 : rman_get_start(sb->drq1);
823 return ch;
824 }
I strongly suspect that this is due to the fact that this card has
only 1 dma channel. I suspect the panic is caused by
rman_get_start(sb->drq2) when sb->drq2 is null.
Does newpcm even support simplex operations on soundblaster chips? I
ask because I simply could not get simplex operations to work on my
wss cards, so I suspect that simplex operation is simply not well
tested.
Can anybody who is more familiar with newpcm please point me in the
right direction?
Thanks,
Drew
------------------------------------------------------------------------------
Andrew Gallatin, Sr Systems Programmer http://www.cs.duke.edu/~gallatin
Duke University Email: [EMAIL PROTECTED]
Department of Computer Science Phone: (919) 660-6590
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message