Just load the driver with the ez8=1 option to enable EZ8 support.
Takashi Iwai wrote:
At Thu, 05 Feb 2004 03:50:30 -0500, Doug wrote:
Here is what I have done to the ice1712.c file in order to add support for my EZ8 card. It's a temporary hack (emphesis on 'hack') until I add code to reliably identify the ez8 from the hoontech (both cards share the same subvendorid).
/* EZ8 Hack */ int ez8=0; MODULE_PARM(ez8, "i");
I added this at the end of all ofthe MODULE_PARM() definitions.
On line 2505, I made this change:
for (tbl = card_tables+(ez8 ? 1 : 0); *tbl; tbl++) { /* EZ8 Hack */
Just a quick and dirty way to skip over the hoontech card_table entry so that my EZ8 is recognized as a generic device, while still correctly detecting my Delta 1010LT card when ez8=1 is added as argument to the snd-ice1712 module. Module functions normally if ez8 is not added to command line (or is set to 0). This would not work if an ez8 and hoontech were used together.
i'd suggest to check ez8 option in hoontech.c rather than in the ice1712.c routine.
This, of course, is only a temporary fix for my own use, while I work on code to correctly differentiate between the ez8 and the hoontech card. In addition, there are a few EZ8 specific features that don't seem to be implemented with the generic driver. Since ADAT is fully functional, though, I now will spend much more time using the card/driver (with ardour/jack) and less finishing support. I don't think there will be any objection here, since I think I am the only linux using EZ8/EZBus owner on the planet :)
Does anyone have the ICE1712 chip documentation?
ice1712 chip spec is open. you can find it on ALSA's ftp.
maybe mirrored on somewhere else, too.
but usually it's not enough for writing the complete driver, since the choice and connection of codec chips depends on the board.
How were the drivers for the other ice1712 based cards written?
in most cases, we have contact with the hardware vendor, and get some information about the hardware.
Were the manufacturers contacted and data released under some sort of non-disclosure agreement?
depends.
Takashi
-- http://nostar.isa-geek.com/
Index: alsa-kernel/pci/ice1712/hoontech.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/hoontech.c,v retrieving revision 1.3 diff -c -r1.3 hoontech.c *** alsa-kernel/pci/ice1712/hoontech.c 5 Mar 2004 09:08:39 -0000 1.3 --- alsa-kernel/pci/ice1712/hoontech.c 1 Apr 2004 03:31:52 -0000 *************** *** 32,37 **** --- 32,40 ---- #include "ice1712.h" #include "hoontech.h"
+ /* EZ8 Hack: pass ez8=1 for EZ8 card */ + int ez8=0; + MODULE_PARM(ez8, "i"); static void __devinit snd_ice1712_stdsp24_gpio_write(ice1712_t *ice, unsigned char byte) { *************** *** 151,156 **** --- 154,173 ---- static int __devinit snd_ice1712_hoontech_init(ice1712_t *ice) { int box, chn; + + /* EZ8 Hack: Change shortname and subvendor id, Recall functions called in + * snd_ice1712_chip_init when it still thinks it is a Hoontech DSP24 card. + */ + if (ez8) { + strcpy(ice->card->shortname, "Event Electronics EZ8"); + ice->eeprom.subvendor = 0; + ice->gpio.write_mask = ice->eeprom.gpiomask; + ice->gpio.direction = ice->eeprom.gpiodir; + snd_ice1712_write(ice, ICE1712_IREG_GPIO_WRITE_MASK, ice->eeprom.gpiomask); + snd_ice1712_write(ice, ICE1712_IREG_GPIO_DIRECTION, ice->eeprom.gpiodir); + snd_ice1712_write(ice, ICE1712_IREG_GPIO_DATA, ice->eeprom.gpiostate); + return 0; + } ice->num_total_dacs = 8; ice->num_total_adcs = 8; Index: alsa-kernel/pci/ice1712/ice1712.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/ice1712.c,v retrieving revision 1.47 diff -c -r1.47 ice1712.c *** alsa-kernel/pci/ice1712/ice1712.c 26 Mar 2004 12:25:51 -0000 1.47 --- alsa-kernel/pci/ice1712/ice1712.c 1 Apr 2004 03:31:55 -0000 *************** *** 41,46 **** --- 41,49 ---- * 2003.02.20 Taksahi Iwai <[EMAIL PROTECTED]> * Split vt1724 part to an independent driver. * The GPIO is accessed through the callback functions now. + * + * 2004.03.31 Doug McLain <[EMAIL PROTECTED]> + * Added support for Event Electronics EZ8 card to hoontech.c. */