es1371 rev 7(patch)

Eric Lemar (elemar@cs.washington.edu)
Mon, 27 Dec 1999 00:08:54 -0800 (PST)


I have one of the SB128 Ensoniq 137rev 7 cards with the CT5880-DBQ and the
model number CT4750 which people seem to be having problems with.

es1371: found chip, vendor id 0x1274 device id 0x1371 revision 0x07

With the normal kernel drivers(as well as the alsa drivers) the card is
detected but non-functional(no audio devices).. The patch below against
2.3.34 seems to fix this for me for the kernel driver(the change just runs
the 5880_C init routines already in the driver). Curious whether this
works for others as well(i've only tried it for about 15 minutes, but both
mpg123 and quake3 now have sound). Using this also seems to get me the
"real" chip identification info:

es1371: version v0.22 time 23:34:30 Dec 26 1999
es1371: found chip, vendor id 0x1274 device id 0x1371 revision 0x07
es1371: found es1371 rev 7 at io 0xd400 irq 19
es1371: features: joystick 0x0
es1371: codec vendor v (0x838476) revision 8 (0x08)
es1371: codec features 18bit DAC 18bit ADC
es1371: stereo enhancement: SigmaTel SS3D

I'd appreciate it if someone more familiar with the versioning of these
cards could look and see if this patch breaks any other versions and i'd
be interested whether anyone else with this card find this works for them.

eric lemar
elemar@cs.washington.edu

--- /home/elemar/download/linux/drivers/sound/es1371.c Sun Dec 26 23:28:52 1999
+++ linux/drivers/sound/es1371.c Sun Dec 26 23:32:28 1999
@@ -3131,9 +3131,11 @@
outl(0, s->io+ES1371_REG_LEGACY);
pci_set_master(pcidev); /* enable bus mastering */
/* if we are a 5880 turn on the AC97 */
- if (s->vendor == PCI_VENDOR_ID_ENSONIQ &&
- s->device == PCI_DEVICE_ID_ENSONIQ_CT5880 &&
- s->rev == CT5880REV_CT5880_C) {
+ if (s->vendor == PCI_VENDOR_ID_ENSONIQ && (
+ (s->device == PCI_DEVICE_ID_ENSONIQ_CT5880 &&
+ s->rev == CT5880REV_CT5880_C) || (
+ s->device == PCI_DEVICE_ID_ENSONIQ_ES1371 &&
+ s->rev == ES1371REV_CT5880_A))) {
cssr |= CSTAT_5880_AC97_RST;
outl(cssr, s->io+ES1371_REG_STATUS);
/* need to delay around 20ms(bleech) to give

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/