Update of /cvsroot/alsa/alsa-kernel/pci/ice1712
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26409

Modified Files:
        hoontech.c ice1712.c ice1712.h 
Log Message:
added Event Electronics EZ8 support by Doug McLain <[EMAIL PROTECTED]>


Index: hoontech.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/hoontech.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- hoontech.c  5 Mar 2004 09:08:39 -0000       1.3
+++ hoontech.c  13 Apr 2004 15:39:21 -0000      1.4
@@ -152,6 +152,20 @@
 {
        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 (ice->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: ice1712.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/ice1712.c,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- ice1712.c   13 Apr 2004 14:59:01 -0000      1.49
+++ ice1712.c   13 Apr 2004 15:39:21 -0000      1.50
@@ -41,6 +41,9 @@
  *  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.
  */
 
 
@@ -81,8 +84,9 @@
 static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX;     /* Index 0-MAX */
 static char *id[SNDRV_CARDS] = SNDRV_DEFAULT_STR;      /* ID for this card */
 static int enable[SNDRV_CARDS] = SNDRV_DEFAULT_ENABLE_PNP;             /* Enable this 
card */
-static int omni[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = 0};  /* Delta44 & 66 Omni 
I/O support */
+static int omni[SNDRV_CARDS];  /* Delta44 & 66 Omni I/O support */
 static int cs8427_timeout[SNDRV_CARDS] = {[0 ... (SNDRV_CARDS-1)] = 500}; /* CS8427 
S/PDIF transciever reset timeout value in msec */
+static int ez8[SNDRV_CARDS];   /* EZ8 card */
 static int boot_devs;
 
 module_param_array(index, int, boot_devs, 0444);
@@ -100,6 +104,9 @@
 module_param_array(cs8427_timeout, int, boot_devs, 0444);
 MODULE_PARM_DESC(cs8427_timeout, "Define reset timeout for cs8427 chip in msec 
resolution.");
 MODULE_PARM_SYNTAX(cs8427_timeout, SNDRV_ENABLED ", 
allows:{{1,1000}},default=500,skill:advanced");
+module_param_array(ez8, bool, boot_devs, 0444);
+MODULE_PARM_DESC(ez8, "Enable Event Electronics EZ8 support.");
+MODULE_PARM_SYNTAX(ez8, SNDRV_ENABLED "," SNDRV_ENABLE_DESC);
 
 #ifndef PCI_VENDOR_ID_ICE
 #define PCI_VENDOR_ID_ICE              0x1412
@@ -2410,6 +2417,7 @@
                                        struct pci_dev *pci,
                                        int omni,
                                        int cs8427_timeout,
+                                       int ez8,
                                        ice1712_t ** r_ice1712)
 {
        ice1712_t *ice;
@@ -2438,6 +2446,7 @@
                cs8427_timeout = 1;
        else if (cs8427_timeout > 1000)
                cs8427_timeout = 1000;
+       ice->ez8 = ez8 ? 1 : 0;
        ice->cs8427_timeout = cs8427_timeout;
        spin_lock_init(&ice->reg_lock);
        init_MUTEX(&ice->gpio_mutex);
@@ -2558,7 +2567,7 @@
        strcpy(card->driver, "ICE1712");
        strcpy(card->shortname, "ICEnsemble ICE1712");
        
-       if ((err = snd_ice1712_create(card, pci, omni[dev], cs8427_timeout[dev], 
&ice)) < 0) {
+       if ((err = snd_ice1712_create(card, pci, omni[dev], cs8427_timeout[dev], 
ez8[dev], &ice)) < 0) {
                snd_card_free(card);
                return err;
        }

Index: ice1712.h
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/pci/ice1712/ice1712.h,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- ice1712.h   20 Mar 2004 13:10:14 -0000      1.18
+++ ice1712.h   13 Apr 2004 15:39:21 -0000      1.19
@@ -329,6 +329,7 @@
        unsigned int pro_volumes[20];
        unsigned int omni: 1;           /* Delta Omni I/O */
        unsigned int vt1724: 1;
+       unsigned int ez8: 1;            /* EZ8 support */
        unsigned int num_total_dacs;    /* total DACs */
        unsigned int num_total_adcs;    /* total ADCs */
        unsigned char hoontech_boxbits[4];



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog

Reply via email to