Status of VIA Envy24 audio controller

Konstantin Dimitrov kosio.dimitrov at gmail.com
Sun Jul 16 17:11:20 UTC 2006


On 7/16/06, Laurent Courty <lrntct at gmail.com> wrote:
>
> Hello,
>
> It's great to see people working on envy24 support. Thanks a lot hackers !
> I'm thinking about buying an Onkyo SE-90PCI board.
> Do you think if it's possible to make it work on FreeBSD ? It seem to use
> the
> VT1720T (Envy24MT). As I see on Nikolas' web site, no datasheet is
> currently
> available for this chip. How can I help ? Should I ask VIA for datasheet ?
>
> Thanks,
>
> Laurent
> _______________________________________________
> freebsd-multimedia at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-multimedia
> To unsubscribe, send any mail to "
> freebsd-multimedia-unsubscribe at freebsd.org"


nothing is impossible, but ...
looks like it is time to discuss VIA reference design, because both
Chaintech AV710 (there are many similar versions of that board from other
manufacturer like OOAOO SQ710II) and Onkyo SE-90PCI seems to use reference
design.
according to that picture:

http://xkodi.svobodno.com/xkodi/se90pci_3.jpg

SE-90PCI uses VT1720T + WM8716 + 49.152 MHz crystal on VT1720T XIN2 pin.
i made list of VIA reference design with their corresponding EEPROM content:

http://xkodi.svobodno.com/envy24/envy24_ref_e2proms/envy24_ref_e2proms.html

first revision of Chaintech AV710 uses Envy24PT (VT1720PT) and later
revision uses Envy24HT-S (VT1721) and that is possible, because all
Envy24GT/PT/MT/HT-S are subset of Envy24HT in term of features (and pins),
so SE-90PCI is number 5 in the list, Chaintech AV710 is number 7.

datasheet are available only for Envy24PT and Envy24HT (and Envy24 but it is
very different chip) and comparing them it is possible to guess (but we
can't be sure) for example how Envy24HT-S works, but Envy24MT has different
package, so maybe very different pin assignment and it is very unlikely VIA
to provide datasheets, because i have already asked them, when i buy my
first Envy24-based card.

two days ago accidentally i found Chaintech AV710 and bought it, because it
is very cheap - 10 times cheaper than my Terratec DMX 6fire, as i said it is
number 7 in the list of VIA reference design, so it uses VT1721 + VT1616 +
WM8728 + 24.576 MHz crystal on XIN2 pin.
VT1616 is AC97 codec, but WM8728 is I2S codec very similar to WM8716 used in
SE-90PCI.

i'm trying to find out how the board works with WM8728, because WM8728 has 3
control modes:
1. hardware
2. software:
2.1. 3-wire SPI-compatible
2.2. 2-wire

also i'm assuming that pin assignment of Envy24HT-S is same as Envy24PT
(there is no datasheet available for Envy24HT-S) and i'm very puzzled,
because till now i can't find the LATI2S pin of WM8728 to be wired to any of
VT1721 GPIO pins, so it can't be in SPI mode and i'm starting to think it is
in hardware or 2-wire mode, but i'm not sure. also i can't understand from
WM8728 datasheet how 2-wire mode works. all other Envy24-based boards, that
have support till now under FreeBSD use SPI mode.

WM8716 has 2 control modes:
1. hardware
2. 3-wire SPI-compatible

both cards uses same VIA (very buggy) driver under Windows, both codecs have
hardware mode, so maybe it makes sense that hardware mode is used and that
the codec is initialized in hardware, because then no specific driver code
is required.

on AV710 board DIN pin of WM8728 is wired to Envy24HT-S PSDOUT[1] pin, so
according to Envy24PT datasheet, "biDirectional PCI Stereo Pairs DMA
Playback" is used instead of "Multi-Channel Interleaved DMA Playback".
currently we have code only for "Multi-Channel Interleaved DMA Playback" and
at the moment i'm not sure how hard or how easy is "biDirectional PCI Stereo
Pairs DMA Playback" support to be added.

i'm expecting SE-90PCI to have same design - DIN pin of WM8716 to be wired
to Envy24MT PSDOUT[1] pin.

so for Chaintech AV710 and SE-90PCI a lot of new code is reqiured and also
to find out how WM8728/WM8716 are controlled, not to mention Envy24MT pin
assignment.

i'm not aware of someone except me currently trying to do something about
Envy24 support under FreeBSD and my main interest is to add support for my
two Terratec cards - "DMX 6fire" and "Aureon Space". i have already add
support for "DMX 6fire" and it is running using the patched version of
Katsurajima Naoto's code for Envy24+AK452x.

i also have added support for Envy24HT+WM8770:

http://lists.freebsd.org/pipermail/freebsd-multimedia/2006-June/004347.html

so my "Aureon Space" is also running, but the code is very messy, so i need
to refine it and also i'm planning to add support for Audiotrak Prodigy 7.1,
because it is very similar to "Aureon Space".

it would be great if someone want to help with something, because current
code has some problems, there are very huge numbers of different
Envy24-based boards and making full Envy24 support under FreeBSD is very
huge task, so any help is appreciated.


More information about the freebsd-multimedia mailing list