mirror of
				https://github.com/alsa-project/alsa-lib.git
				synced 2025-11-03 09:01:52 -05:00 
			
		
		
		
	Ok, back to use '@func refer' inside alsa.conf (following Abramo's
interpellation).
This commit is contained in:
		
							parent
							
								
									735e5473e0
								
							
						
					
					
						commit
						455edb9e21
					
				
					 9 changed files with 264 additions and 549 deletions
				
			
		
							
								
								
									
										286
									
								
								src/alsa.conf
									
										
									
									
									
								
							
							
						
						
									
										286
									
								
								src/alsa.conf
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -190,27 +190,31 @@ pcm.front {
 | 
			
		|||
			default 0
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	refer {
 | 
			
		||||
		file {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				{
 | 
			
		||||
					@func datadir
 | 
			
		||||
				}
 | 
			
		||||
				"/cards/"
 | 
			
		||||
				{
 | 
			
		||||
					@func card_strtype
 | 
			
		||||
					card $CARD
 | 
			
		||||
				}
 | 
			
		||||
				".conf"
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
		name {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				"pcm.front_" $DEV ":CARD=" $CARD
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
	@func refer
 | 
			
		||||
	file {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			{
 | 
			
		||||
				@func datadir
 | 
			
		||||
			}
 | 
			
		||||
			"/cards/"
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".conf"
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"cards."
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".pcm.front." $DEV ":CARD=" $CARD
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
	
 | 
			
		||||
| 
						 | 
				
			
			@ -238,27 +242,31 @@ pcm.rear {
 | 
			
		|||
			default 0
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	refer {
 | 
			
		||||
		file {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				{
 | 
			
		||||
					@func datadir
 | 
			
		||||
				}
 | 
			
		||||
				"/cards/"
 | 
			
		||||
				{
 | 
			
		||||
					@func card_strtype
 | 
			
		||||
					card $CARD
 | 
			
		||||
				}
 | 
			
		||||
				".conf"
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
		name {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				"pcm.rear_" $DEV ":CARD=" $CARD
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
	@func refer
 | 
			
		||||
	file {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			{
 | 
			
		||||
				@func datadir
 | 
			
		||||
			}
 | 
			
		||||
			"/cards/"
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".conf"
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"cards."
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".pcm.rear." $DEV ":CARD=" $CARD
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
	
 | 
			
		||||
| 
						 | 
				
			
			@ -286,27 +294,31 @@ pcm.center_lfe {
 | 
			
		|||
			default 0
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	refer {
 | 
			
		||||
		file {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				{
 | 
			
		||||
					@func datadir
 | 
			
		||||
				}
 | 
			
		||||
				"/cards/"
 | 
			
		||||
				{
 | 
			
		||||
					@func card_strtype
 | 
			
		||||
					card $CARD
 | 
			
		||||
				}
 | 
			
		||||
				".conf"
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
		name {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				"pcm.center_lfe_" $DEV ":CARD=" $CARD
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
	@func refer
 | 
			
		||||
	file {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			{
 | 
			
		||||
				@func datadir
 | 
			
		||||
			}
 | 
			
		||||
			"/cards/"
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".conf"
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"cards."
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".pcm.center_lfe." $DEV ":CARD=" $CARD
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
	
 | 
			
		||||
| 
						 | 
				
			
			@ -334,27 +346,31 @@ pcm.surround40 {
 | 
			
		|||
			default 0
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	refer {
 | 
			
		||||
		file {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				{
 | 
			
		||||
					@func datadir
 | 
			
		||||
				}
 | 
			
		||||
				"/cards/"
 | 
			
		||||
				{
 | 
			
		||||
					@func card_strtype
 | 
			
		||||
					card $CARD
 | 
			
		||||
				}
 | 
			
		||||
				".conf"
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
		name {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				"pcm.surround40_" $DEV ":CARD=" $CARD
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
	@func refer
 | 
			
		||||
	file {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			{
 | 
			
		||||
				@func datadir
 | 
			
		||||
			}
 | 
			
		||||
			"/cards/"
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".conf"
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"cards."
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".pcm.surround40." $DEV ":CARD=" $CARD
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
	
 | 
			
		||||
| 
						 | 
				
			
			@ -382,27 +398,31 @@ pcm.surround51 {
 | 
			
		|||
			default 0
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	refer {
 | 
			
		||||
		file {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				{
 | 
			
		||||
					@func datadir
 | 
			
		||||
				}
 | 
			
		||||
				"/cards/"
 | 
			
		||||
				{
 | 
			
		||||
					@func card_strtype
 | 
			
		||||
					card $CARD
 | 
			
		||||
				}
 | 
			
		||||
				".conf"
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
		name {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				"pcm.surround51_" $DEV ":CARD=" $CARD
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
	@func refer
 | 
			
		||||
	file {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			{
 | 
			
		||||
				@func datadir
 | 
			
		||||
			}
 | 
			
		||||
			"/cards/"
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".conf"
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"cards."
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".pcm.surround51." $DEV ":CARD=" $CARD
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
	
 | 
			
		||||
| 
						 | 
				
			
			@ -450,32 +470,36 @@ pcm.iec958 {
 | 
			
		|||
		# fs=48000Hz, clock accuracy=1000ppm
 | 
			
		||||
		default 0x02
 | 
			
		||||
	}
 | 
			
		||||
	refer {
 | 
			
		||||
		file {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				{
 | 
			
		||||
					@func datadir
 | 
			
		||||
				}
 | 
			
		||||
				"/cards/"
 | 
			
		||||
				{
 | 
			
		||||
					@func card_strtype
 | 
			
		||||
					card $CARD
 | 
			
		||||
				}
 | 
			
		||||
				".conf"
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
		name {
 | 
			
		||||
			@func concat
 | 
			
		||||
			strings [
 | 
			
		||||
				"pcm.iec958_" $DEV ":"
 | 
			
		||||
				"CARD=" $CARD ","
 | 
			
		||||
				"AES0=" $AES0 ","
 | 
			
		||||
				"AES1=" $AES1 ","
 | 
			
		||||
				"AES2=" $AES2 ","
 | 
			
		||||
				"AES3=" $AES3
 | 
			
		||||
			]
 | 
			
		||||
		}
 | 
			
		||||
	@func refer
 | 
			
		||||
	file {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			{
 | 
			
		||||
				@func datadir
 | 
			
		||||
			}
 | 
			
		||||
			"/cards/"
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".conf"
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"cards."
 | 
			
		||||
			{
 | 
			
		||||
				@func card_strtype
 | 
			
		||||
				card $CARD
 | 
			
		||||
			}
 | 
			
		||||
			".pcm.iec958." $DEV ":"
 | 
			
		||||
			"CARD=" $CARD ","
 | 
			
		||||
			"AES0=" $AES0 ","
 | 
			
		||||
			"AES1=" $AES1 ","
 | 
			
		||||
			"AES2=" $AES2 ","
 | 
			
		||||
			"AES3=" $AES3
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,54 +2,26 @@
 | 
			
		|||
# Configuration for the EMU10K1 chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.emu10k1_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
cards.EMU10K1.pcm.front.0 {
 | 
			
		||||
	@args [ CARD  ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
	device 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
cards.EMU10K1.pcm.rear.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.emu10k1_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.emu10k1_rear {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"pcm.emu10k1_front:" $CARD "," $DEV "," $SUBDEV
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			@ -70,36 +42,13 @@ pcm.emu10k1_rear {
 | 
			
		|||
	}
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.rear_0 {
 | 
			
		||||
cards.EMU10K1.pcm.center_lfe {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.emu10k1_rear:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.emu10k1_center_lfe {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"pcm.emu10k1_front:" $CARD "," $DEV "," $SUBDEV
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			@ -132,19 +81,7 @@ pcm.emu10k1_center_lfe {
 | 
			
		|||
	}
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.center_lfe_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer 
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.emu10k1_center_lfe:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.EMU10K1.pcm.surround40.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -155,7 +92,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.emu10k1_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.EMU10K1.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -164,7 +101,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.emu10k1_rear:" $CARD ",0,-1"
 | 
			
		||||
					"cards.EMU10K1.pcm.rear.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -178,7 +115,7 @@ pcm.surround40_0 {
 | 
			
		|||
	]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround51_0 {
 | 
			
		||||
cards.EMU10K1.pcm.surround51.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -189,7 +126,7 @@ pcm.surround51_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.emu10k1_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.EMU10K1.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -198,7 +135,7 @@ pcm.surround51_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.emu10k1_rear:" $CARD ",0,-1"
 | 
			
		||||
					"cards.EMU10K1.pcm.rear.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -207,7 +144,7 @@ pcm.surround51_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.emu10k1_center_lfe:" $CARD ",0,-1"
 | 
			
		||||
					"cards.EMU10K1.pcm.center_lfe.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -223,7 +160,7 @@ pcm.surround51_0 {
 | 
			
		|||
	]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.iec958_0 {
 | 
			
		||||
cards.EMU10K1.pcm.iec958.0 {
 | 
			
		||||
	@args [ CARD DEV AES0 AES1 AES2 AES3 ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -245,13 +182,9 @@ pcm.iec958_0 {
 | 
			
		|||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"hw:"
 | 
			
		||||
			"CARD=" $CARD ","
 | 
			
		||||
			"DEV=3,"
 | 
			
		||||
			"SUBDEV=0"
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 3
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,54 +2,26 @@
 | 
			
		|||
# Configuration for the ENS1370 chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.ens1370_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
cards.ENS1370.pcm.front.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.ens1370_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 1
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.ens1370_rear {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
cards.ENS1370.pcm.rear.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"pcm.ens1370_front:" $CARD "," $DEV "," $SUBDEV
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			@ -70,19 +42,7 @@ pcm.ens1370_rear {
 | 
			
		|||
	}
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.rear_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.ens1370_rear:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.ENS1370.pcm.surround40.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -94,7 +54,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.ens1370_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.ENS1370.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -103,7 +63,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.ens1370_rear:" $CARD ",0,-1"
 | 
			
		||||
					"cards.ENS1370.pcm.rear.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,37 +2,7 @@
 | 
			
		|||
# Configuration for the FM801 chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.fm801_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.fm801_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.FM801.front.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -40,21 +10,12 @@ pcm.surround40_0 {
 | 
			
		|||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 0
 | 
			
		||||
	subdevice 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.surround51_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 0
 | 
			
		||||
	subdevice 0
 | 
			
		||||
}
 | 
			
		||||
cards.FM801.surround40.0 "cards.FM801.front.0"
 | 
			
		||||
cards.FM801.surround51.0 "cards.FM801.front.0"
 | 
			
		||||
 | 
			
		||||
pcm.iec958_0 {
 | 
			
		||||
cards.FM801.iec958.0 {
 | 
			
		||||
	@args [ CARD DEV AES0 AES1 AES2 AES3 ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -76,13 +37,9 @@ pcm.iec958_0 {
 | 
			
		|||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"hw:"
 | 
			
		||||
			"CARD=" $CARD ","
 | 
			
		||||
			"DEV=0,"
 | 
			
		||||
			"SUBDEV=0"
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,37 +2,17 @@
 | 
			
		|||
# Configuration for the INTEL8X0 chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.intel8x0_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
cards.INTEL8X0.pcm.front.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.intel8x0_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.INTEL8X0.pcm.surround40.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -43,7 +23,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.intel8x0_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.INTEL8X0.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 4
 | 
			
		||||
| 
						 | 
				
			
			@ -57,7 +37,7 @@ pcm.surround40_0 {
 | 
			
		|||
	]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround51_0 {
 | 
			
		||||
cards.INTEL8X0.pcm.surround51.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -68,7 +48,7 @@ pcm.surround51_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.intel8x0_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.INTEL8X0.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -84,7 +64,7 @@ pcm.surround51_0 {
 | 
			
		|||
	]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.iec958_0 {
 | 
			
		||||
cards.INTEL8X0.pcm.iec958.0 {
 | 
			
		||||
	@args [ CARD DEV AES0 AES1 AES2 AES3 ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -106,13 +86,9 @@ pcm.iec958_0 {
 | 
			
		|||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"hw:"
 | 
			
		||||
			"CARD=" $CARD ","
 | 
			
		||||
			"DEV=0,"
 | 
			
		||||
			"SUBDEV=0"
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,54 +2,26 @@
 | 
			
		|||
# Configuration for the SI7018 chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.si7018_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
cards.SI_7018.pcm.front.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.si7018_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.si7018_rear {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
cards.SI_7018.pcm.rear.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
        type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
                        "pcm.si7018_front:" $CARD "," $DEV "," $SUBDEV
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			@ -64,19 +36,7 @@ pcm.si7018_rear {
 | 
			
		|||
	}
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.rear_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.si7018_rear:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.SI_7018.pcm.surround40.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -87,7 +47,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.si7018_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.SI_7018.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -96,7 +56,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.si7018_rear:" $CARD ",0,-1"
 | 
			
		||||
					"cards.SI_7018.pcm.rear.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,61 +2,32 @@
 | 
			
		|||
# Configuration for the Trident 4D-Wave NX chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.trid4dwavenx_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
cards.TRID4DWAVENX.pcm.front.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.trid4dwavenx_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.trid4dwavenx_rear {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
cards.TRID4DWAVENX.pcm.rear.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"pcm.trid4dwavenx_front:CARD=" $CARD ",DEV=" $DEV ",SUBDEV=" $SUBDEV
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 0
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
		hook_args [
 | 
			
		||||
			{
 | 
			
		||||
				name "Rear Path"
 | 
			
		||||
				index { @func private_pcm_subdevice }
 | 
			
		||||
				lock true
 | 
			
		||||
				preserve true
 | 
			
		||||
				value true
 | 
			
		||||
| 
						 | 
				
			
			@ -66,32 +37,20 @@ pcm.trid4dwavenx_rear {
 | 
			
		|||
				index { @func private_pcm_subdevice }
 | 
			
		||||
				lock true
 | 
			
		||||
				preserve true
 | 
			
		||||
				value [ 0 0 ]
 | 
			
		||||
				value 0
 | 
			
		||||
			}
 | 
			
		||||
			{
 | 
			
		||||
				name "PCM Reverb Playback Volume"
 | 
			
		||||
				index { @func private_pcm_subdevice }
 | 
			
		||||
				lock true
 | 
			
		||||
				preserve true
 | 
			
		||||
				value [ 127 127 ]
 | 
			
		||||
				value 127
 | 
			
		||||
			}
 | 
			
		||||
		]
 | 
			
		||||
	}
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.rear_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.trid4dwavenx_rear:" $CARD ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.TRID4DWAVENX.pcm.surround40.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -102,7 +61,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.trid4dwavenx_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.TRID4DWAVENX.pcm.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -111,7 +70,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.trid4dwavenx_rear:" $CARD ",0,-1"
 | 
			
		||||
					"cards.TRID4DWAVENX.pcm.rear.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -125,14 +84,11 @@ pcm.surround40_0 {
 | 
			
		|||
	]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.iec958_0 {
 | 
			
		||||
	@args [ CARD DEV AES0 AES1 AES2 AES3 ]
 | 
			
		||||
cards.TRID4DWAVENX.pcm.iec958.0 {
 | 
			
		||||
	@args [ CARD AES0 AES1 AES2 AES3 ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.AES0 {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,37 +2,17 @@
 | 
			
		|||
# Configuration for the YMFPCI chip
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
pcm.ymfpci_front {
 | 
			
		||||
	@args [ CARD DEV SUBDEV ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.DEV {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@args.SUBDEV {
 | 
			
		||||
		type integer
 | 
			
		||||
		default -1
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device $DEV
 | 
			
		||||
	subdevice $SUBDEV
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.front_0 {
 | 
			
		||||
cards.YMFPCI.front.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.ymfpci_front:" $CARD ",0,-1" ]
 | 
			
		||||
	}
 | 
			
		||||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.ymfpci_rear {
 | 
			
		||||
cards.YMFPCI.rear.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -40,22 +20,9 @@ pcm.ymfpci_rear {
 | 
			
		|||
	type hw
 | 
			
		||||
	card $CARD
 | 
			
		||||
	device 2
 | 
			
		||||
	subdevice 0
 | 
			
		||||
}	
 | 
			
		||||
 | 
			
		||||
pcm.rear_0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
	}
 | 
			
		||||
	@func refer
 | 
			
		||||
	name {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [ "pcm.ymfpci_rear:" $CARD ]
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.surround40_0 {
 | 
			
		||||
cards.YMFPCI.surround40.0 {
 | 
			
		||||
	@args [ CARD ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -66,7 +33,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.ymfpci_front:" $CARD ",0,-1"
 | 
			
		||||
					"cards.YMFPCI.front.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -75,7 +42,7 @@ pcm.surround40_0 {
 | 
			
		|||
			pcm {
 | 
			
		||||
				@func concat
 | 
			
		||||
				strings [
 | 
			
		||||
					"pcm.ymfpci_rear:" $CARD
 | 
			
		||||
					"cards.YMFPCI.rear.0:CARD=" $CARD
 | 
			
		||||
				]
 | 
			
		||||
			}
 | 
			
		||||
			channels 2
 | 
			
		||||
| 
						 | 
				
			
			@ -89,7 +56,7 @@ pcm.surround40_0 {
 | 
			
		|||
	]
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
pcm.iec958_0 {
 | 
			
		||||
cards.YMFPCI.iec958.0 {
 | 
			
		||||
	@args [ CARD DEV AES0 AES1 AES2 AES3 ]
 | 
			
		||||
	@args.CARD {
 | 
			
		||||
		type integer
 | 
			
		||||
| 
						 | 
				
			
			@ -111,13 +78,9 @@ pcm.iec958_0 {
 | 
			
		|||
	}
 | 
			
		||||
	type hooks
 | 
			
		||||
	slave.pcm {
 | 
			
		||||
		@func concat
 | 
			
		||||
		strings [
 | 
			
		||||
			"hw:"
 | 
			
		||||
			"CARD=" $CARD ","
 | 
			
		||||
			"DEV=1,"
 | 
			
		||||
			"SUBDEV=0"
 | 
			
		||||
		]
 | 
			
		||||
		type hw
 | 
			
		||||
		card $CARD
 | 
			
		||||
		device 1
 | 
			
		||||
	}
 | 
			
		||||
	hooks.0 {
 | 
			
		||||
		type ctl_elems
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -624,16 +624,15 @@ int snd_func_private_pcm_subdevice(snd_config_t **dst, snd_config_t *root ATTRIB
 | 
			
		|||
	return err;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int snd_func_refer(snd_config_t **dst, snd_config_t *_root, snd_config_t *src, void *private_data)
 | 
			
		||||
int snd_func_refer(snd_config_t **dst, snd_config_t *root, snd_config_t *src, void *private_data)
 | 
			
		||||
{
 | 
			
		||||
	snd_config_t *n;
 | 
			
		||||
	snd_config_t *root;
 | 
			
		||||
	const char *file = NULL, *name = NULL;
 | 
			
		||||
	int err;
 | 
			
		||||
	
 | 
			
		||||
	err = snd_config_search(src, "file", &n);
 | 
			
		||||
	if (err >= 0) {
 | 
			
		||||
		err = snd_config_evaluate(n, _root, private_data, NULL);
 | 
			
		||||
		err = snd_config_evaluate(n, root, private_data, NULL);
 | 
			
		||||
		if (err < 0) {
 | 
			
		||||
			SNDERR("error evaluating file");
 | 
			
		||||
			goto _end;
 | 
			
		||||
| 
						 | 
				
			
			@ -646,7 +645,7 @@ int snd_func_refer(snd_config_t **dst, snd_config_t *_root, snd_config_t *src, v
 | 
			
		|||
	}
 | 
			
		||||
	err = snd_config_search(src, "name", &n);
 | 
			
		||||
	if (err >= 0) {
 | 
			
		||||
		err = snd_config_evaluate(n, _root, private_data, NULL);
 | 
			
		||||
		err = snd_config_evaluate(n, root, private_data, NULL);
 | 
			
		||||
		if (err < 0) {
 | 
			
		||||
			SNDERR("error evaluating name");
 | 
			
		||||
			goto _end;
 | 
			
		||||
| 
						 | 
				
			
			@ -657,18 +656,13 @@ int snd_func_refer(snd_config_t **dst, snd_config_t *_root, snd_config_t *src, v
 | 
			
		|||
			goto _end;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if (!file && !name) {
 | 
			
		||||
	if (!name) {
 | 
			
		||||
		err = -EINVAL;
 | 
			
		||||
		SNDERR("neither file or name are specified");
 | 
			
		||||
		SNDERR("name is not specified");
 | 
			
		||||
		goto _end;
 | 
			
		||||
	}
 | 
			
		||||
	if (!file)
 | 
			
		||||
		root = _root;
 | 
			
		||||
	else {
 | 
			
		||||
	if (file) {
 | 
			
		||||
		snd_input_t *input;
 | 
			
		||||
		err = snd_config_top(&root);
 | 
			
		||||
		if (err < 0)
 | 
			
		||||
			goto _end;
 | 
			
		||||
		err = snd_input_stdio_open(&input, file, "r");
 | 
			
		||||
		if (err < 0) {
 | 
			
		||||
			SNDERR("Unable to open file %s: %s", file, snd_strerror(err));
 | 
			
		||||
| 
						 | 
				
			
			@ -680,19 +674,11 @@ int snd_func_refer(snd_config_t **dst, snd_config_t *_root, snd_config_t *src, v
 | 
			
		|||
			goto _end;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if (!name) {
 | 
			
		||||
		if (root == _root)
 | 
			
		||||
			err = snd_config_copy(dst, root);
 | 
			
		||||
		else {
 | 
			
		||||
			*dst = root;
 | 
			
		||||
			err = 0;
 | 
			
		||||
		}
 | 
			
		||||
	} else
 | 
			
		||||
		err = snd_config_search_definition(root, NULL, name, dst);
 | 
			
		||||
	err = snd_config_search_definition(root, NULL, name, dst);
 | 
			
		||||
	if (err >= 0)
 | 
			
		||||
		err = snd_config_set_id(*dst, snd_config_get_id(src));
 | 
			
		||||
	else
 | 
			
		||||
		SNDERR("Unable to find definition '%s'", name);
 | 
			
		||||
 _end:
 | 
			
		||||
	if (root && root != _root)
 | 
			
		||||
		snd_config_delete(root);
 | 
			
		||||
	return err;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue