Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Jun 2006 13:52:44 +0300
From:      "Konstantin Dimitrov" <kosio.dimitrov@gmail.com>
To:        "Nikolas Britton" <nikolas.britton@gmail.com>
Cc:        freebsd-multimedia@freebsd.org, Alexander@leidinger.net
Subject:   Re: Status of VIA Envy24 audio controller
Message-ID:  <8103ad500606130352j36434440w95470394bacb459d@mail.gmail.com>
In-Reply-To: <ef10de9a0606130323g15ddd152tbcd0201adb7da4d6@mail.gmail.com>
References:  <200606072039.13422.shoesoft@gmx.net> <8103ad500606071552k77985b54o3378d9351e4bdcf8@mail.gmail.com> <200606081614.43375.shoesoft@gmx.net> <8103ad500606081031s40ac1afcnfc78bd6734e43fdc@mail.gmail.com> <8103ad500606121534h2a9480aem8be58220c2e04996@mail.gmail.com> <8103ad500606130247w63cce8e7j9ab9cb4428228811@mail.gmail.com> <ef10de9a0606130323g15ddd152tbcd0201adb7da4d6@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
diffs to get old Katsurajima code running under FreeBSD 6.1 are here:
http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-May/004223.html

Stefan, sent the initial diff ("mixer vol ..." is not working) for
"Audiophile 2496" yesterday to freebsd-multimedia@ :
http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-June/004307.html

to fix "mixer vol ..." two additional changes are required (only 2 lines of
code):

1) as i said before, there is obvious bug, that affects all Envy24-based
cards, so no matter what card you have in ak452x.c "codec->type = dvc;"
should be changed to "codec->dvc = dvc;"
2) in envy24.c correct codec type should be set, for "Audiophile 2496"
change "ak452x_settype(ptr->info, AK452X_TYPE_4524);" to
"ak452x_settype(ptr->info, AK452X_TYPE_4528);"

On 6/13/06, Nikolas Britton <nikolas.britton@gmail.com> wrote:
>
> On 6/13/06, Konstantin Dimitrov <kosio.dimitrov@gmail.com> wrote:
> > i found obvious bug, that affects all cards: "codec->type = dvc;" (
> ak452x.c)
> > obviously should be "codec->dvc = dvc;", this cause the previously
> mentioned
> > volume problem with "M-Audio Audiophile 2496", so original "ak452x_set"
> > routine is ok,  after fixing "codec->type = dvc;" to "codec->dvc =
> dvc;", we
> > have working "mixer vol ..." with both "Terratec DMX 6fire" and "M-Audio
> > Audiophile 2496", of cource correct codec type should be set in envy24.c:
> > "ak452x_settype(ptr->info, AK452X_TYPE_4528);" for "M-Audio Audiophile
> 2496"
> > "ak452x_settype(ptr->info, AK452X_TYPE_4524);" for "Terratec DMX 6fire"
> >
> > after fixing the bug described above, both cards working now only with
> > touching hardware specific parts of the Katsurajima Naoto's code - to be
> > more specific - 3 lines to set right wiring in envy24.h (codec CS, CDTI,
> > CCLK) and 1 line to set right codec in envy24.c, so Katsurajima Naoto's
> code
> > is pretty generic and so it can be used as a base for Envy24 driver
> > supporting many Envy24-based audio cards under FreeBSD.
> >
> >
> > On 6/13/06, Konstantin Dimitrov < kosio.dimitrov@gmail.com> wrote:
> > >
> > > 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);
> > > }
> >
> >
>
> Cool!, I just order a Audiophile 2496, it should be in my hands by
> then end of the week for testing. Is it possible to get a diff of all
> the new code?:
>
> Patch set of the changes you made to get Katsurajima old code running
> again on 6.1-STABLE. Plus a patch set of the changes you and Stefan
> made to get audiophile 2496 running?
>
>
> --
> BSD Podcasts @:
> http://bsdtalk.blogspot.com/
> http://freebsdforall.blogspot.com/
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8103ad500606130352j36434440w95470394bacb459d>