Remove dra7xx-evm machine support
[AGL/meta-agl.git] / meta-pipewire / recipes-multimedia / wireplumber / wireplumber-config-agl / 30-alsa-monitor.lua
1 -- ALSA monitor config file --
2
3 alsa_monitor = {}
4
5 alsa_monitor.properties = {
6   ["alsa.jack-device"] = false,
7   ["alsa.reserve"] = false,
8 }
9
10 alsa_monitor.rules = {
11   -- disable ACP (PulseAudio-like profiles)
12   {
13     matches = {
14       {
15         { "device.name", "matches", "alsa_card.*" },
16       },
17     },
18     apply_properties = {
19       ["api.alsa.use-acp"] = false,
20     },
21   },
22
23   --
24   -- Bump priority of well-known output devices
25   -- Higher priority means it gets selected as the default if it's present
26   --
27
28   -- USB card
29   {
30     matches = {
31       {
32         { "node.name", "matches", "alsa_output.*" },
33         { "api.alsa.card.driver", "=", "USB-Audio" },
34       },
35     },
36     apply_properties = {
37       ["priority.driver"]        = 1300,
38       ["priority.session"]       = 1300,
39     }
40   },
41
42   -- fiberdyne amp
43   {
44     matches = {
45       {
46         { "node.name", "matches", "alsa_output.*" },
47         { "api.alsa.card.id", "=", "ep016ch" },
48       },
49     },
50     apply_properties = {
51       ["priority.driver"]        = 1200,
52       ["priority.session"]       = 1200,
53     }
54   },
55
56   -- well-known internal devices
57   {
58     matches = {
59       {
60         -- ak4613
61         { "node.name", "matches", "alsa_output.*" },
62         { "api.alsa.card.id", "=", "ak4613" },
63         { "api.alsa.pcm.device", "=", "0" },
64       },
65       {
66         -- imx8mq
67         { "node.name", "matches", "alsa_output.*" },
68         { "api.alsa.card.id", "=", "wm8524audio" },
69       },
70       {
71         -- rcarsound
72         { "node.name", "matches", "alsa_output.*" },
73         { "api.alsa.card.id", "=", "rcarsound" },
74         { "api.alsa.pcm.device", "=", "0" },
75       },
76       {
77         -- rpi3
78         { "node.name", "matches", "alsa_output.*" },
79         { "api.alsa.pcm.name", "=", "bcm2835 ALSA" },
80       },
81     },
82     apply_properties = {
83       ["priority.driver"]        = 1100,
84       ["priority.session"]       = 1100,
85     }
86   },
87
88   --
89   -- Same for input devices
90   --
91
92   -- USB card
93   {
94     matches = {
95       {
96         { "node.name", "matches", "alsa_input.*" },
97         { "api.alsa.card.driver", "=", "USB-Audio" },
98       },
99     },
100     apply_properties = {
101       ["priority.driver"]        = 2300,
102       ["priority.session"]       = 2300,
103     }
104   },
105
106   -- microchip mic
107   {
108     matches = {
109       {
110         { "node.name", "matches", "alsa_input.*" },
111         { "api.alsa.card.id", "=", "ep811ch" },
112       },
113     },
114     apply_properties = {
115       ["priority.driver"]        = 2200,
116       ["priority.session"]       = 2200,
117     }
118   },
119
120   -- well-known internal devices
121   {
122     matches = {
123       {
124         -- ak4613
125         { "node.name", "matches", "alsa_input.*" },
126         { "api.alsa.card.id", "=", "ak4613" },
127       },
128       {
129         -- imx8mq
130         { "node.name", "matches", "alsa_input.*" },
131         { "api.alsa.card.id", "=", "wm8524audio" },
132       },
133       {
134         -- rcarsound
135         { "node.name", "matches", "alsa_input.*" },
136         { "api.alsa.card.id", "=", "rcarsound" },
137       },
138     },
139     apply_properties = {
140       ["priority.driver"]        = 2100,
141       ["priority.session"]       = 2100,
142     }
143   },
144 }
145
146 function alsa_monitor.enable()
147   load_monitor("alsa", {
148     properties = alsa_monitor.properties,
149     rules = alsa_monitor.rules,
150   })
151 end