Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Doug McLain <nostar@comcast.net>
To: alsa-devel@lists.sourceforge.net
Subject: Re: EZ8 ADAT I/O card (ICE1712 chipset)
Date: Fri, 09 Apr 2004 13:59:58 -0400	[thread overview]
Message-ID: <4076E49E.5050404@comcast.net> (raw)
In-Reply-To: <406B951C.7010705@comcast.net>

Whats the word on this patch? Does something need to change?  Is it ok 
as is?

Doug McLain wrote:
> Here is a patch for EZ8 support with the snd-ice1712 driver.  I kept 
> everything contained within hoontech.c, as you suggested.  I never 
> bothered to go farther trying to uniquely identify between the 2 cards 
> since, this has been working fine for me. Also, I have contacted both 
> Hoontech and Event, informing them of the conflict by not creating their 
> own uniqe subvendor id. Hopefully one or both will release a driver 
> update that will give either one a unique id.  I never made a patch 
> before, but it looks fine to me.  Please let me know otherwise.
> 
> 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 <tiwai@suse.de>
>    *    Split vt1724 part to an independent driver.
>    *    The GPIO is accessed through the callback functions now.
> +  *
> +  * 2004.03.31 Doug McLain <nostar@comcast.net>
> +  *    Added support for Event Electronics EZ8 card to hoontech.c.
>    */
> 
> 
> 

-- 
http://nostar.isa-geek.com/



-------------------------------------------------------
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

  reply	other threads:[~2004-04-09 17:59 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-30 13:57 EZ8 ADAT I/O card (ICE1712 chipset) Doug
2004-02-05  8:50 ` Doug
2004-02-05 11:41   ` Takashi Iwai
2004-02-05 20:41     ` Doug
2004-04-01  4:05     ` Doug McLain
2004-04-09 17:59       ` Doug McLain [this message]
2004-04-13 10:01         ` Takashi Iwai
2004-04-13 15:54           ` Takashi Iwai
2004-04-14  2:21             ` Doug McLain
  -- strict thread matches above, loose matches on Subject: below --
2004-01-30  9:05 Doug

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4076E49E.5050404@comcast.net \
    --to=nostar@comcast.net \
    --cc=alsa-devel@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox