summaryrefslogtreecommitdiffstats
path: root/alsa-lib/src/conf/pcm/modem.conf
blob: 0af0e72c568a0ecacde72549e81fc2f7e21d2adb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#
# "raw" modem - phoneline
#

pcm.!phoneline {
	@args [ CARD DEV ]
	@args.CARD {
		type string
		default {
			@func getenv
			vars [
				ALSA_MODEM_CARD
				ALSA_PCM_CARD
				ALSA_CARD
			]
			default {
				@func refer
				name defaults.pcm.modem.card
			}
		}
	}
	@args.DEV {
		type integer
		default {
			@func igetenv
			vars [
				ALSA_MODEM_DEVICE
			]
			default {
				@func refer
				name defaults.pcm.modem.device
			}
		}
	}
	@func refer
	name {
		@func concat
		strings [
			"cards."
			{
				@func card_driver
				card $CARD
			}
			".pcm.modem." $DEV ":CARD=" $CARD
		]
	}
	hint.show off
}

#
#  "autohooked" modem
#

pcm.!modem {
	@args [ CARD DEV ]
	@args.CARD {
		type string
		default {
			@func getenv
			vars [
				ALSA_MODEM_CARD
				ALSA_PCM_CARD
				ALSA_CARD
			]
			default {
				@func refer
				name defaults.pcm.modem.card
			}
		}
	}
	@args.DEV {
		type integer
		default {
			@func igetenv
			vars [
				ALSA_MODEM_DEVICE
			]
			default {
				@func refer
				name defaults.pcm.modem.device
			}
		}
	}
	type hooks
	slave {
		pcm {
			@func concat
			strings [
				"cards.pcm.phoneline:CARD=" $CARD ",DEV=" $DEV
			]
		}
	}
	hooks.0 {
		type ctl_elems
		hook_args [
		{
			name "Off-hook Switch"
			preserve true
			value "on"
			lock false
			optional true
		}
		]
	}
	hint.show off
}