Update of /cvsroot/alsa/alsa-kernel/i2c/other
In directory sc8-pr-cvs1:/tmp/cvs-serv29463/i2c/other

Modified Files:
        ak4xxx-adda.c 
Log Message:
added the support of Terratec Aureon boards

Index: ak4xxx-adda.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/i2c/other/ak4xxx-adda.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ak4xxx-adda.c       7 May 2003 15:49:48 -0000       1.3
+++ ak4xxx-adda.c       4 Jun 2003 12:02:21 -0000       1.4
@@ -42,12 +42,12 @@
        /* save the data */
        if (ak->type == SND_AK4524 || ak->type == SND_AK4528) {
                if ((reg != 0x04 && reg != 0x05) || (reg & 0x80) == 0)
-                       ak->images[chip][reg] = val;
+                       snd_akm4xxx_set(ak, chip, reg, val);
                else
-                       ak->ipga_gain[chip][reg-4] = val;
+                       snd_akm4xxx_set_ipga(ak, chip, reg, val);
        } else {
                /* AK4529, or else */
-               ak->images[chip][reg] = val;
+               snd_akm4xxx_set(ak, chip, reg, val);
        }
        ak->ops.unlock(ak, chip);
 }
@@ -72,12 +72,12 @@
                                continue;
                        /* DAC volumes */
                        for (reg = 0x04; reg < (ak->type == SND_AK4528 ? 0x06 : 0x08); 
reg++)
-                               snd_akm4xxx_write(ak, chip, reg, 
ak->images[chip][reg]);
+                               snd_akm4xxx_write(ak, chip, reg, snd_akm4xxx_get(ak, 
chip, reg));
                        if (ak->type == SND_AK4528)
                                continue;
                        /* IPGA */
                        for (reg = 0x04; reg < 0x06; reg++)
-                               snd_akm4xxx_write(ak, chip, reg, 
ak->ipga_gain[chip][reg-4]);
+                               snd_akm4xxx_write(ak, chip, reg, 
snd_akm4xxx_get_ipga(ak, chip, reg));
                }
                break;
        case SND_AK4529:
@@ -89,7 +89,7 @@
                        return;
                for (reg = 0x00; reg < 0x0a; reg++)
                        if (reg != 0x01)
-                               snd_akm4xxx_write(ak, 0, reg, ak->images[0][reg]);
+                               snd_akm4xxx_write(ak, 0, reg, snd_akm4xxx_get(ak, 0, 
reg));
                break;
        case SND_AK4381:
                for (chip = 0; chip < ak->num_dacs/2; chip++) {
@@ -97,7 +97,7 @@
                        if (state)
                                continue;
                        for (reg = 0x01; reg < 0x05; reg++)
-                               snd_akm4xxx_write(ak, chip, reg, 
ak->images[chip][reg]);
+                               snd_akm4xxx_write(ak, chip, reg, snd_akm4xxx_get(ak, 
chip, reg));
                }
                break;
        }
@@ -240,7 +240,7 @@
        int addr = AK_GET_ADDR(kcontrol->private_value);
        int invert = AK_GET_INVERT(kcontrol->private_value);
        unsigned int mask = AK_GET_MASK(kcontrol->private_value);
-       unsigned char val = ak->images[chip][addr];
+       unsigned char val = snd_akm4xxx_get(ak, chip, addr);
        
        ucontrol->value.integer.value[0] = invert ? mask - val : val;
        return 0;
@@ -258,7 +258,7 @@
 
        if (invert)
                nval = mask - nval;
-       change = ak->images[chip][addr] != nval;
+       change = snd_akm4xxx_get(ak, chip, addr) != nval;
        if (change)
                snd_akm4xxx_write(ak, chip, addr, nval);
        return change;
@@ -278,7 +278,7 @@
        akm4xxx_t *ak = _snd_kcontrol_chip(kcontrol);
        int chip = AK_GET_CHIP(kcontrol->private_value);
        int addr = AK_GET_ADDR(kcontrol->private_value);
-       ucontrol->value.integer.value[0] = ak->ipga_gain[chip][addr-4] & 0x7f;
+       ucontrol->value.integer.value[0] = snd_akm4xxx_get_ipga(ak, chip, addr) & 0x7f;
        return 0;
 }
 
@@ -288,7 +288,7 @@
        int chip = AK_GET_CHIP(kcontrol->private_value);
        int addr = AK_GET_ADDR(kcontrol->private_value);
        unsigned char nval = (ucontrol->value.integer.value[0] % 37) | 0x80;
-       int change = ak->ipga_gain[chip][addr] != nval;
+       int change = snd_akm4xxx_get_ipga(ak, chip, addr) != nval;
        if (change)
                snd_akm4xxx_write(ak, chip, addr, nval);
        return change;
@@ -314,7 +314,7 @@
        int chip = AK_GET_CHIP(kcontrol->private_value);
        int addr = AK_GET_ADDR(kcontrol->private_value);
        int shift = AK_GET_SHIFT(kcontrol->private_value);
-       ucontrol->value.enumerated.item[0] = (ak->images[chip][addr] >> shift) & 3;
+       ucontrol->value.enumerated.item[0] = (snd_akm4xxx_get(ak, chip, addr) >> 
shift) & 3;
        return 0;
 }
 
@@ -327,8 +327,8 @@
        unsigned char nval = ucontrol->value.enumerated.item[0] & 3;
        int change;
        
-       nval = (nval << shift) | (ak->images[chip][addr] & ~(3 << shift));
-       change = ak->images[chip][addr] != nval;
+       nval = (nval << shift) | (snd_akm4xxx_get(ak, chip, addr) & ~(3 << shift));
+       change = snd_akm4xxx_get(ak, chip, addr) != nval;
        if (change)
                snd_akm4xxx_write(ak, chip, addr, nval);
        return change;



-------------------------------------------------------
This SF.net email is sponsored by:  Etnus, makers of TotalView, The best
thread debugger on the planet. Designed with thread debugging features
you've never dreamed of, try TotalView 6 free at www.etnus.com.
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog

Reply via email to