Status of VIA Envy24 audio controller

Konstantin Dimitrov kosio.dimitrov at gmail.com
Mon Jun 12 22:35:07 UTC 2006


thanks to cooperation with Stefan Ehmann (shoesoft at gmx.net), there is a
patch adding basic "M-Audio Audiophile 2496" support, he sent the initial
patch to freebsd-multimedia@ titled "basic support for M-Audio Audiophile
2496 available", now the "volume" problem with "M-Audio Audiophile 2496" is
fixed using slightly changed "ak452x_set" (ak452x.c) routine:

void
ak452x_set(struct ak452x_info *codec, int dir, unsigned int left, unsigned
int right)
{
#if(0)
    device_printf(codec->dev, "ak452x_set(codec, %d, %d, %d)\n", dir, left,
right);

#endif
    snd_mtxlock(codec->lock);
    if (left >= 100)
        left  = 127;
    else
        left = left * 127 / 100;
    if (right >= 100)
        right  = 127;
    else
        right = right * 127 / 100;

    if (dir == PCMDIR_PLAY) {

#if(0)
        device_printf(codec->dev, "ak452x_set(): AK4528(PLAY) %d/%d\n",
left, right);
#endif
        ak452x_wrcd(codec, AK4528_LOATT, left);
        ak452x_wrcd(codec, AK4528_ROATT, right);
    }
    snd_mtxunlock(codec->lock);
}


More information about the freebsd-multimedia mailing list