I have noticed that whereas the sb600 claims to be a hda intel chip, the support is in atiixp and the pci id stored in snd-atiixp.ko is 1002:4382. My sb600 is actually 1002:4383. I doctored things here and even put an artful sed on the module to correct the pci.id, but of course nothing.

2009/12/24 Mark Goldberg <marklgoldberg@gmail.com>
On Thu, Dec 24, 2009 at 8:45 AM, Business Kid <business.kid@gmail.com> wrote:
> I have a similar chip to you. Audio works for me, and I can pass on any
> stuff needed, I have pcm outputs. I have no microphone - alsamixer shows red
> writing and no level for the mic :-/.  I did discover this little bit in the
> wiki and am going off to experiment

I guess it would be good to see the results of lsmod, lspci -vvnn and
hal-device, along with whatever
got created in /etc/modprobe.d such as 50-sound.conf or local.conf or
/etc/modprobe.conf it your
system uses that. Maybe I can figure out what to do from them.

If the PCI ID is wrong, and lspci-vvnn gives me:

00:14.2 Audio device [0403]: ATI Technologies Inc SBx00 Azalia (Intel
HDA) [1002:4383]
       Subsystem: ASUSTeK Computer Inc. Device [1043:8417]
       Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B- DisINTx-
       Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
       Latency: 64, Cache Line Size: 64 bytes
       Interrupt: pin A routed to IRQ 4
       Region 0: Memory at f5ff4000 (64-bit, non-prefetchable) [size=16K]
       Capabilities: [50] Power Management version 2
               Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA
               Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
       Kernel modules: snd-hda-intel

I'm not sure it can work unless I actually patch the alsa source to
look for the different PCI ID.
I don;t really understand enough to know how many places would need to
be changed.
None of the above says anything about Via. I also can't find anything
about the 1818 chip
in any alsa docs I have found.