# # Configuration for the VIA8237 chip with 4/6 multi-channel support # VIA8237.pcm.front.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD device 0 } # default with softvol/dsnoop # VIA8237 supports multi-playback VIA8237.pcm.default { @args [ CARD ] @args.CARD { type integer } type asym playback.pcm { type plug slave.pcm { type softvol slave.pcm { type hw card $CARD device 0 } control { name "PCM Playback Volume" card $CARD } } } capture.pcm { type plug slave.pcm { @func concat strings [ "dsnoop:" $CARD ] } } } VIA8237.pcm.surround40.0 { @args [ CARD ] @args.CARD { type string } type hooks slave.pcm { type hw card $CARD device 1 } hooks.0 { type ctl_elems hook_args [ # { # name "Line-In As Surround" # device 0 # preserve true # value true # lock true # optional true # } { name "Surround Down Mix" device 0 preserve true value off lock true optional true } ] } } VIA8237.pcm.surround51.0 { @args [ CARD ] @args.CARD { type string } type route ttable.0.0 1 ttable.1.1 1 ttable.2.4 1 ttable.3.5 1 ttable.4.2 1 ttable.5.3 1 slave.pcm { type hooks slave.pcm { type hw card $CARD device 1 } hooks.0 { type ctl_elems hook_args [ # { # name "Line-In As Surround" # device 0 # preserve true # value true # lock true # optional true # } # { # name "Mic As Center/LFE" # device 0 # preserve true # value true # lock true # optional true # } { name "Surround Down Mix" device 0 preserve true value off lock true optional true } { name "Center/LFE Down Mix" device 0 preserve true value off lock true optional true } ] } } slave.channels 6 } VIA8237.pcm.iec958.0 { @args [ CARD AES0 AES1 AES2 AES3 ] @args.CARD { type string } @args.AES0 { type integer } @args.AES1 { type integer } @args.AES2 { type integer } @args.AES3 { type integer } type hooks slave.pcm { type hw card $CARD device 0 subdevice 3 } hooks.0 { type ctl_elems hook_args [ { name "IEC958 Playback AC97-SPSA" lock true preserve true value 3 } { name "IEC958 Playback Default" lock true preserve true value [ $AES0 $AES1 $AES2 $AES3 ] } { name "IEC958 Playback Switch" lock true preserve true value true } { name "IEC958 Output Switch" lock true preserve true value true } ] } }