| # | 
 | # Configuration for the ATI IXP 150/200/250 chips | 
 | # | 
 |  | 
 | <confdir:pcm/front.conf> | 
 |  | 
 | ATIIXP.pcm.front.0 { | 
 | 	@args [ CARD ] | 
 | 	@args.CARD { | 
 | 		type string | 
 | 	} | 
 | 	type hw | 
 | 	card $CARD | 
 | }	 | 
 |  | 
 | # default with dmix/dsnoop | 
 | ATIIXP.pcm.default { | 
 | 	@args [ CARD ] | 
 | 	@args.CARD { | 
 | 		type string | 
 | 	} | 
 | 	type asym | 
 | 	playback.pcm { | 
 | 		type plug | 
 | 		slave.pcm { | 
 | 			@func concat | 
 | 			strings [ "dmix:" $CARD ] | 
 | 		} | 
 | 	} | 
 | 	capture.pcm { | 
 | 		type plug | 
 | 		slave.pcm { | 
 | 			@func concat | 
 | 			strings [ "dsnoop:" $CARD ] | 
 | 		} | 
 | 	} | 
 | } | 
 |  | 
 | <confdir:pcm/surround40.conf> | 
 |  | 
 | ATIIXP.pcm.surround40.0 { | 
 | 	@args [ CARD ] | 
 | 	@args.CARD { | 
 | 		type string | 
 | 	} | 
 | 	type hooks | 
 | 	slave.pcm { | 
 | 		type hw | 
 | 		card $CARD | 
 | 		channels 4 | 
 | 	} | 
 | 	hooks.0 { | 
 | 		type ctl_elems | 
 | 		hook_args [ | 
 | 			{ | 
 | 				name "Channel Mode" | 
 | 				preserve true | 
 | 				value "4ch" | 
 | 				lock true | 
 | 				optional true | 
 | 			} | 
 | 			# for old drivers | 
 | 			{ | 
 | 				name "Line-In As Surround" | 
 | 				preserve true | 
 | 				value true | 
 | 				optional true | 
 | 			} | 
 | 			{ | 
 | 				name "Surround Down Mix" | 
 | 				preserve true | 
 | 				value off | 
 | 				lock true | 
 | 				optional true | 
 | 			} | 
 | 		] | 
 | 	} | 
 | } | 
 |  | 
 | <confdir:pcm/surround41.conf> | 
 | <confdir:pcm/surround50.conf> | 
 | <confdir:pcm/surround51.conf> | 
 |  | 
 | ATIIXP.pcm.surround51.0 { | 
 | 	@args [ CARD ] | 
 | 	@args.CARD { | 
 | 		type string | 
 | 	} | 
 | 	type hooks | 
 | 	slave.pcm { | 
 | 		type hw | 
 | 		card $CARD | 
 | 		channels 6 | 
 | 	} | 
 | 	hooks.0 { | 
 | 		type ctl_elems | 
 | 		hook_args [ | 
 | 			{ | 
 | 				name "Channel Mode" | 
 | 				preserve true | 
 | 				value "6ch" | 
 | 				lock true | 
 | 				optional true | 
 | 			} | 
 | 			# for old drivers | 
 | 			{ | 
 | 				name "Line-In As Surround" | 
 | 				preserve true | 
 | 				value true | 
 | 				optional true | 
 | 			} | 
 | 			{ | 
 | 				name "Mic As Center/LFE" | 
 | 				preserve true | 
 | 				value true | 
 | 				optional true | 
 | 			} | 
 | 			{ | 
 | 				name "Surround Down Mix" | 
 | 				preserve true | 
 | 				value off | 
 | 				lock true | 
 | 				optional true | 
 | 			} | 
 | 			{ | 
 | 				name "Center/LFE Down Mix" | 
 | 				preserve true | 
 | 				value off | 
 | 				lock true | 
 | 				optional true | 
 | 			} | 
 | 		] | 
 | 	} | 
 | } | 
 |  | 
 | <confdir:pcm/iec958.conf> | 
 |  | 
 | ATIIXP.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 1 | 
 | 	} | 
 | 	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 | 
 | 			} | 
 | 		] | 
 | 	} | 
 | } |