/src/adhd/cras/src/common/cras_metrics.c
Line | Count | Source |
1 | | /* Copyright 2013 The ChromiumOS Authors |
2 | | * Use of this source code is governed by a BSD-style license that can be |
3 | | * found in the LICENSE file. |
4 | | */ |
5 | | |
6 | | #include "cras_metrics.h" |
7 | | |
8 | | #include <syslog.h> |
9 | | #include <unistd.h> |
10 | | |
11 | | struct usb_device { |
12 | | int vendor_id; |
13 | | int product_id; |
14 | | }; |
15 | | |
16 | | struct usb_device popular_usb_devices[] = { |
17 | | {.vendor_id = 0x582, .product_id = 0x159}, |
18 | | {.vendor_id = 0x1b3f, .product_id = 0x2008}, |
19 | | {.vendor_id = 0x0d8c, .product_id = 0x0014}, |
20 | | {.vendor_id = 0x047f, .product_id = 0xc053}, |
21 | | {.vendor_id = 0x046d, .product_id = 0x0a8f}, |
22 | | {.vendor_id = 0x047f, .product_id = 0xc056}, |
23 | | {.vendor_id = 0x0b0e, .product_id = 0x0300}, |
24 | | {.vendor_id = 0x046d, .product_id = 0x0a38}, |
25 | | {.vendor_id = 0x054c, .product_id = 0x09cc}, |
26 | | {.vendor_id = 0x0b0e, .product_id = 0x0301}, |
27 | | {.vendor_id = 0x4c4a, .product_id = 0x4155}, |
28 | | {.vendor_id = 0x0b0e, .product_id = 0x2327}, |
29 | | {.vendor_id = 0x046d, .product_id = 0x0a6b}, |
30 | | {.vendor_id = 0x046d, .product_id = 0x0a7a}, |
31 | | {.vendor_id = 0x001f, .product_id = 0x0b21}, |
32 | | {.vendor_id = 0x8086, .product_id = 0x0808}, |
33 | | {.vendor_id = 0x0b0e, .product_id = 0x2315}, |
34 | | {.vendor_id = 0x045e, .product_id = 0x070f}, |
35 | | {.vendor_id = 0x0d8c, .product_id = 0x0012}, |
36 | | {.vendor_id = 0x0b0e, .product_id = 0x0305}, |
37 | | {.vendor_id = 0x046d, .product_id = 0x0a64}, |
38 | | {.vendor_id = 0x0b0e, .product_id = 0x2319}, |
39 | | {.vendor_id = 0x0b0e, .product_id = 0x2304}, |
40 | | {.vendor_id = 0x0b0e, .product_id = 0x0312}, |
41 | | {.vendor_id = 0x04e8, .product_id = 0xa051}, |
42 | | {.vendor_id = 0x046d, .product_id = 0x0a65}, |
43 | | {.vendor_id = 0x08bb, .product_id = 0x2902}, |
44 | | {.vendor_id = 0x046d, .product_id = 0x0a44}, |
45 | | {.vendor_id = 0x047f, .product_id = 0xc055}, |
46 | | {.vendor_id = 0x05e1, .product_id = 0x202a}, |
47 | | {.vendor_id = 0x046d, .product_id = 0x0aad}, |
48 | | {.vendor_id = 0x0b0e, .product_id = 0x0e40}, |
49 | | {.vendor_id = 0x0b0e, .product_id = 0x0306}, |
50 | | {.vendor_id = 0x0d8c, .product_id = 0x013c}, |
51 | | {.vendor_id = 0x046d, .product_id = 0x0a37}, |
52 | | {.vendor_id = 0x047f, .product_id = 0xc058}, |
53 | | {.vendor_id = 0x10d6, .product_id = 0xdd00}, |
54 | | {.vendor_id = 0x0b0e, .product_id = 0x4051}, |
55 | | {.vendor_id = 0x17ef, .product_id = 0x7231}, |
56 | | {.vendor_id = 0x0b0e, .product_id = 0x0e41}, |
57 | | {.vendor_id = 0x047f, .product_id = 0x430a}, |
58 | | {.vendor_id = 0x047f, .product_id = 0x431b}, |
59 | | {.vendor_id = 0x054c, .product_id = 0x0ce6}, |
60 | | {.vendor_id = 0x0c76, .product_id = 0x1262}, |
61 | | {.vendor_id = 0x1395, .product_id = 0x028e}, |
62 | | {.vendor_id = 0x0b0e, .product_id = 0x24c7}, |
63 | | {.vendor_id = 0x1395, .product_id = 0x0291}, |
64 | | {.vendor_id = 0x1395, .product_id = 0x003c}, |
65 | | {.vendor_id = 0x0c76, .product_id = 0x161f}, |
66 | | {.vendor_id = 0x18d1, .product_id = 0x5033}, |
67 | | {.vendor_id = 0x05ac, .product_id = 0x110b}, |
68 | | {.vendor_id = 0x046d, .product_id = 0x085b}, |
69 | | {.vendor_id = 0x0b0e, .product_id = 0x0e31}, |
70 | | {.vendor_id = 0x1130, .product_id = 0x1620}, |
71 | | {.vendor_id = 0x047f, .product_id = 0xaf00}, |
72 | | {.vendor_id = 0x12d1, .product_id = 0x3a07}, |
73 | | {.vendor_id = 0x17e9, .product_id = 0x6006}, |
74 | | {.vendor_id = 0x046d, .product_id = 0x0a45}, |
75 | | {.vendor_id = 0x0bda, .product_id = 0x402e}, |
76 | | {.vendor_id = 0x0b0e, .product_id = 0x24c8}, |
77 | | {.vendor_id = 0x0b0e, .product_id = 0x245d}, |
78 | | {.vendor_id = 0x0b0e, .product_id = 0x2302}, |
79 | | {.vendor_id = 0x17e9, .product_id = 0x4307}, |
80 | | {.vendor_id = 0x1395, .product_id = 0x0033}, |
81 | | {.vendor_id = 0x0d8c, .product_id = 0x000c}, |
82 | | {.vendor_id = 0x17e9, .product_id = 0x6000}, |
83 | | {.vendor_id = 0x3391, .product_id = 0x0013}, |
84 | | {.vendor_id = 0x0b0e, .product_id = 0x0313}, |
85 | | {.vendor_id = 0x0c76, .product_id = 0x17e0}, |
86 | | {.vendor_id = 0x17e9, .product_id = 0x436e}, |
87 | | {.vendor_id = 0x0b0e, .product_id = 0x231a}, |
88 | | {.vendor_id = 0x047f, .product_id = 0x02e6}, |
89 | | {.vendor_id = 0x03f0, .product_id = 0x5e4a}, |
90 | | {.vendor_id = 0x04e8, .product_id = 0xa05e}, |
91 | | {.vendor_id = 0x0d8c, .product_id = 0x0013}, |
92 | | {.vendor_id = 0x8087, .product_id = 0x1024}, |
93 | | {.vendor_id = 0x1532, .product_id = 0x0537}, |
94 | | {.vendor_id = 0x054c, .product_id = 0x0d5e}, |
95 | | {.vendor_id = 0x1235, .product_id = 0x8211}, |
96 | | {.vendor_id = 0x075a, .product_id = 0x079c}, |
97 | | {.vendor_id = 0x0b0e, .product_id = 0x4001}, |
98 | | {.vendor_id = 0x1395, .product_id = 0x0052}, |
99 | | {.vendor_id = 0x31b2, .product_id = 0x0011}, |
100 | | {.vendor_id = 0x046d, .product_id = 0x0ab7}, |
101 | | {.vendor_id = 0x046d, .product_id = 0x0825}, |
102 | | {.vendor_id = 0x046d, .product_id = 0x0a56}, |
103 | | {.vendor_id = 0x0b0e, .product_id = 0x232a}, |
104 | | {.vendor_id = 0x0bda, .product_id = 0x4014}, |
105 | | {.vendor_id = 0x0b0e, .product_id = 0x0420}, |
106 | | {.vendor_id = 0x0b0e, .product_id = 0x2311}, |
107 | | {.vendor_id = 0x047f, .product_id = 0x02ee}, |
108 | | {.vendor_id = 0x18d1, .product_id = 0x5021}, |
109 | | {.vendor_id = 0x0c76, .product_id = 0x161e}, |
110 | | {.vendor_id = 0x0b0e, .product_id = 0x4006}, |
111 | | {.vendor_id = 0x1395, .product_id = 0x0026}, |
112 | | {.vendor_id = 0x0d8c, .product_id = 0x0139}, |
113 | | {.vendor_id = 0x1532, .product_id = 0x0504}, |
114 | | {.vendor_id = 0x03f0, .product_id = 0x056b}, |
115 | | {.vendor_id = 0x3302, .product_id = 0x3bd2}, |
116 | | {.vendor_id = 0x0b0e, .product_id = 0x0e30}, |
117 | | {.vendor_id = 0x3391, .product_id = 0x0015}, |
118 | | {.vendor_id = 0x1395, .product_id = 0x0025}, |
119 | | {.vendor_id = 0x0b0e, .product_id = 0x0422}, |
120 | | {.vendor_id = 0x0d8c, .product_id = 0x0031}, |
121 | | {.vendor_id = 0x046d, .product_id = 0x0a29}, |
122 | | {.vendor_id = 0x0b0e, .product_id = 0x0412}, |
123 | | {.vendor_id = 0x17e9, .product_id = 0x6015}, |
124 | | {.vendor_id = 0x17e9, .product_id = 0x4349}, |
125 | | {.vendor_id = 0x1ff7, .product_id = 0x0408}, |
126 | | {.vendor_id = 0x0b0e, .product_id = 0x2322}, |
127 | | {.vendor_id = 0x05ac, .product_id = 0x110a}, |
128 | | {.vendor_id = 0x17e9, .product_id = 0x4323}, |
129 | | {.vendor_id = 0x0b0e, .product_id = 0x2326}, |
130 | | {.vendor_id = 0x0d8c, .product_id = 0x0005}, |
131 | | {.vendor_id = 0x194f, .product_id = 0x0303}, |
132 | | {.vendor_id = 0x1395, .product_id = 0x0296}, |
133 | | {.vendor_id = 0x0b0e, .product_id = 0x2324}, |
134 | | {.vendor_id = 0x0b0e, .product_id = 0x24a3}, |
135 | | {.vendor_id = 0x0c76, .product_id = 0x168f}, |
136 | | {.vendor_id = 0xffff, .product_id = 0xffff}, |
137 | | {.vendor_id = 0x0c45, .product_id = 0x636b}, |
138 | | {.vendor_id = 0x047f, .product_id = 0x430b}, |
139 | | {.vendor_id = 0x0c76, .product_id = 0x153f}, |
140 | | {.vendor_id = 0x0b0e, .product_id = 0x0302}, |
141 | | {.vendor_id = 0x0b0e, .product_id = 0x0307}, |
142 | | {.vendor_id = 0x0b0e, .product_id = 0x245e}, |
143 | | {.vendor_id = 0x1908, .product_id = 0x2070}, |
144 | | {.vendor_id = 0x047f, .product_id = 0xc054}, |
145 | | {.vendor_id = 0x1395, .product_id = 0x0016}, |
146 | | {.vendor_id = 0x1395, .product_id = 0x0284}, |
147 | | {.vendor_id = 0x046d, .product_id = 0x0843}, |
148 | | {.vendor_id = 0x047f, .product_id = 0xc008}, |
149 | | {.vendor_id = 0x6993, .product_id = 0xb017}, |
150 | | {.vendor_id = 0x1395, .product_id = 0x00b0}, |
151 | | {.vendor_id = 0x0b0e, .product_id = 0x2301}, |
152 | | {.vendor_id = 0x413c, .product_id = 0xa503}, |
153 | | {.vendor_id = 0x18d1, .product_id = 0x5034}, |
154 | | {.vendor_id = 0x1395, .product_id = 0x00ca}, |
155 | | {.vendor_id = 0x1778, .product_id = 0x0227}, |
156 | | {.vendor_id = 0x05e1, .product_id = 0x202b}, |
157 | | {.vendor_id = 0x046d, .product_id = 0x082d}, |
158 | | {.vendor_id = 0x6993, .product_id = 0xb04c}, |
159 | | {.vendor_id = 0x17ef, .product_id = 0xa016}, |
160 | | {.vendor_id = 0x0d8c, .product_id = 0x0134}, |
161 | | {.vendor_id = 0x1395, .product_id = 0x0185}, |
162 | | {.vendor_id = 0x047f, .product_id = 0xc03a}, |
163 | | {.vendor_id = 0x046d, .product_id = 0x08e5}, |
164 | | {.vendor_id = 0x0572, .product_id = 0x1807}, |
165 | | {.vendor_id = 0x1395, .product_id = 0x0024}, |
166 | | {.vendor_id = 0x1395, .product_id = 0x0298}, |
167 | | {.vendor_id = 0x047f, .product_id = 0xac01}, |
168 | | {.vendor_id = 0x17ef, .product_id = 0xa396}, |
169 | | {.vendor_id = 0x046d, .product_id = 0x0a55}, |
170 | | {.vendor_id = 0x0c76, .product_id = 0x1a23}, |
171 | | {.vendor_id = 0x0b0e, .product_id = 0x030c}, |
172 | | {.vendor_id = 0xe5b7, .product_id = 0x0811}, |
173 | | {.vendor_id = 0x1235, .product_id = 0x8210}, |
174 | | {.vendor_id = 0x1b3f, .product_id = 0x2021}, |
175 | | {.vendor_id = 0x047f, .product_id = 0xc057}, |
176 | | {.vendor_id = 0x3206, .product_id = 0x106b}, |
177 | | {.vendor_id = 0x31b2, .product_id = 0x0010}, |
178 | | {.vendor_id = 0x047f, .product_id = 0x430c}, |
179 | | {.vendor_id = 0x0b0e, .product_id = 0x2453}, |
180 | | {.vendor_id = 0x17ef, .product_id = 0x60f4}, |
181 | | {.vendor_id = 0x046d, .product_id = 0x0ac4}, |
182 | | {.vendor_id = 0x0b0e, .product_id = 0x2466}, |
183 | | {.vendor_id = 0x0c76, .product_id = 0x120c}, |
184 | | {.vendor_id = 0x0d8c, .product_id = 0x016c}, |
185 | | {.vendor_id = 0xb58e, .product_id = 0x9e84}, |
186 | | {.vendor_id = 0x1ff7, .product_id = 0x0f27}, |
187 | | {.vendor_id = 0x047f, .product_id = 0x430e}, |
188 | | {.vendor_id = 0x046d, .product_id = 0x0ab5}, |
189 | | {.vendor_id = 0x0572, .product_id = 0x1433}, |
190 | | {.vendor_id = 0x045e, .product_id = 0x0837}, |
191 | | {.vendor_id = 0x0b0e, .product_id = 0x0303}, |
192 | | {.vendor_id = 0x16d0, .product_id = 0x0dab}, |
193 | | {.vendor_id = 0x0d8c, .product_id = 0x013a}, |
194 | | {.vendor_id = 0x0b0e, .product_id = 0x0410}, |
195 | | {.vendor_id = 0x0c76, .product_id = 0x1a24}, |
196 | | {.vendor_id = 0x03f0, .product_id = 0x879d}, |
197 | | {.vendor_id = 0x047f, .product_id = 0xaf03}, |
198 | | {.vendor_id = 0x1395, .product_id = 0x0286}, |
199 | | {.vendor_id = 0x0b0e, .product_id = 0x1121}, |
200 | | {.vendor_id = 0x0b0e, .product_id = 0x24c9}, |
201 | | {.vendor_id = 0x3142, .product_id = 0x5060}, |
202 | | {.vendor_id = 0x1235, .product_id = 0x0003}, |
203 | | {.vendor_id = 0x046d, .product_id = 0x085c}, |
204 | | {.vendor_id = 0x047f, .product_id = 0xaf01}, |
205 | | {.vendor_id = 0x046d, .product_id = 0x0acb}, |
206 | | {.vendor_id = 0x17ef, .product_id = 0x30b0}, |
207 | | {.vendor_id = 0x145f, .product_id = 0x02dd}, |
208 | | {.vendor_id = 0x0951, .product_id = 0x16a4}, |
209 | | {.vendor_id = 0x18d1, .product_id = 0x8001}, |
210 | | {.vendor_id = 0x6993, .product_id = 0xb20a}, |
211 | | {.vendor_id = 0x17e9, .product_id = 0x4301}, |
212 | | {.vendor_id = 0xbe57, .product_id = 0x0238}, |
213 | | {.vendor_id = 0x0b0e, .product_id = 0xa710}, |
214 | | {.vendor_id = 0x1395, .product_id = 0x0032}, |
215 | | {.vendor_id = 0x3302, .product_id = 0x29c4}, |
216 | | {.vendor_id = 0x17ef, .product_id = 0x612c}, |
217 | | {.vendor_id = 0x047f, .product_id = 0xc012}, |
218 | | {.vendor_id = 0x03f0, .product_id = 0x0269}, |
219 | | {.vendor_id = 0x10f5, .product_id = 0x220d}, |
220 | | {.vendor_id = 0x0d8c, .product_id = 0x0103}, |
221 | | {.vendor_id = 0x1b3f, .product_id = 0x2247}, |
222 | | {.vendor_id = 0x0b0e, .product_id = 0x030b}, |
223 | | {.vendor_id = 0x145f, .product_id = 0x02d2}, |
224 | | {.vendor_id = 0x046d, .product_id = 0x0a0c}, |
225 | | {.vendor_id = 0x075a, .product_id = 0x076c}, |
226 | | {.vendor_id = 0x0b0e, .product_id = 0x2e40}, |
227 | | {.vendor_id = 0x041e, .product_id = 0x3277}, |
228 | | {.vendor_id = 0x046d, .product_id = 0x0892}, |
229 | | {.vendor_id = 0x1038, .product_id = 0x12b3}, |
230 | | {.vendor_id = 0x4c4a, .product_id = 0x3435}, |
231 | | {.vendor_id = 0x17e9, .product_id = 0x601e}, |
232 | | {.vendor_id = 0x1532, .product_id = 0x0527}, |
233 | | {.vendor_id = 0x1395, .product_id = 0x0099}, |
234 | | {.vendor_id = 0x047f, .product_id = 0xc034}, |
235 | | {.vendor_id = 0x2d30, .product_id = 0x5056}, |
236 | | {.vendor_id = 0x08bb, .product_id = 0x29c0}, |
237 | | {.vendor_id = 0x0bda, .product_id = 0x482a}, |
238 | | {.vendor_id = 0x1b1c, .product_id = 0x0a51}, |
239 | | {.vendor_id = 0xb58e, .product_id = 0x0005}, |
240 | | {.vendor_id = 0x047f, .product_id = 0x4315}, |
241 | | {.vendor_id = 0x17e9, .product_id = 0x600a}, |
242 | | {.vendor_id = 0x17ef, .product_id = 0x30bb}, |
243 | | {.vendor_id = 0x046d, .product_id = 0x085e}, |
244 | | {.vendor_id = 0x046d, .product_id = 0x0867}, |
245 | | {.vendor_id = 0x10d6, .product_id = 0x4801}, |
246 | | {.vendor_id = 0x0bda, .product_id = 0x875b}, |
247 | | {.vendor_id = 0x0495, .product_id = 0x3042}, |
248 | | {.vendor_id = 0x1778, .product_id = 0xd001}, |
249 | | {.vendor_id = 0x2207, .product_id = 0x0019}, |
250 | | {.vendor_id = 0x2ea1, .product_id = 0x011a}, |
251 | | {.vendor_id = 0x2ea1, .product_id = 0x2130}, |
252 | | {.vendor_id = 0x05a3, .product_id = 0x9331}, |
253 | | {.vendor_id = 0x1b1c, .product_id = 0x0a4d}, |
254 | | {.vendor_id = 0x413c, .product_id = 0xa516}, |
255 | | {.vendor_id = 0x1395, .product_id = 0x0382}, |
256 | | {.vendor_id = 0x2574, .product_id = 0x100a}, |
257 | | {.vendor_id = 0x1778, .product_id = 0xd021}, |
258 | | {.vendor_id = 0x0bda, .product_id = 0x4e0a}, |
259 | | {.vendor_id = 0x0c76, .product_id = 0x0a23}, |
260 | | {.vendor_id = 0x17ef, .product_id = 0x3063}, |
261 | | {.vendor_id = 0x10f5, .product_id = 0x2186}, |
262 | | {.vendor_id = 0x0c45, .product_id = 0x6366}, |
263 | | {.vendor_id = 0x08a8, .product_id = 0x0016}, |
264 | | {.vendor_id = 0x03f0, .product_id = 0x2147}, |
265 | | {.vendor_id = 0x17ef, .product_id = 0xa069}, |
266 | | {.vendor_id = 0x0b0e, .product_id = 0x2465}, |
267 | | {.vendor_id = 0x0909, .product_id = 0x001c}, |
268 | | {.vendor_id = 0x0b0e, .product_id = 0x1113}, |
269 | | {.vendor_id = 0x16d0, .product_id = 0x08b3}, |
270 | | {.vendor_id = 0x0c76, .product_id = 0x160b}, |
271 | | {.vendor_id = 0x046d, .product_id = 0x0adf}, |
272 | | {.vendor_id = 0x17e9, .product_id = 0x6028}, |
273 | | {.vendor_id = 0x1532, .product_id = 0x0531}, |
274 | | {.vendor_id = 0x046d, .product_id = 0x0a9c}, |
275 | | {.vendor_id = 0x1038, .product_id = 0x12aa}, |
276 | | {.vendor_id = 0x22d9, .product_id = 0x9101}, |
277 | | {.vendor_id = 0x17ef, .product_id = 0xa032}, |
278 | | {.vendor_id = 0x04f2, .product_id = 0xb3eb}, |
279 | | {.vendor_id = 0x290b, .product_id = 0x0900}, |
280 | | {.vendor_id = 0x0a67, .product_id = 0x11c0}, |
281 | | {.vendor_id = 0x0b0e, .product_id = 0x2475}, |
282 | | {.vendor_id = 0x1395, .product_id = 0x00cb}, |
283 | | {.vendor_id = 0x08bb, .product_id = 0x2912}, |
284 | | {.vendor_id = 0x0b0e, .product_id = 0x1016}, |
285 | | {.vendor_id = 0x0b0e, .product_id = 0x111a}, |
286 | | {.vendor_id = 0x413c, .product_id = 0xa513}, |
287 | | {.vendor_id = 0x0a67, .product_id = 0xc006}, |
288 | | {.vendor_id = 0x0b0e, .product_id = 0x030e}, |
289 | | {.vendor_id = 0x2894, .product_id = 0x0012}, |
290 | | {.vendor_id = 0x20b1, .product_id = 0x0011}, |
291 | | {.vendor_id = 0x046d, .product_id = 0x0aba}, |
292 | | {.vendor_id = 0x0c76, .product_id = 0x1607}, |
293 | | {.vendor_id = 0x3142, .product_id = 0x0658}, |
294 | | {.vendor_id = 0x047f, .product_id = 0x02f7}, |
295 | | {.vendor_id = 0x046d, .product_id = 0x0afe}, |
296 | | {.vendor_id = 0x17e9, .product_id = 0x6004}, |
297 | | {.vendor_id = 0x1532, .product_id = 0x0526}, |
298 | | {.vendor_id = 0x0572, .product_id = 0x1b08}, |
299 | | {.vendor_id = 0x17e9, .product_id = 0x4306}, |
300 | | {.vendor_id = 0x0b0e, .product_id = 0x0e35}, |
301 | | {.vendor_id = 0x041e, .product_id = 0x3272}, |
302 | | {.vendor_id = 0x1532, .product_id = 0x0529}, |
303 | | {.vendor_id = 0x1235, .product_id = 0x0002}, |
304 | | {.vendor_id = 0x17ef, .product_id = 0x611d}, |
305 | | {.vendor_id = 0x0c76, .product_id = 0x2018}, |
306 | | {.vendor_id = 0x046d, .product_id = 0x0aaa}, |
307 | | {.vendor_id = 0x1395, .product_id = 0x0287}, |
308 | | {.vendor_id = 0x047f, .product_id = 0xc025}, |
309 | | {.vendor_id = 0x045e, .product_id = 0x077f}, |
310 | | {.vendor_id = 0x1532, .product_id = 0x051e}, |
311 | | {.vendor_id = 0x17ef, .product_id = 0x3083}, |
312 | | {.vendor_id = 0x1395, .product_id = 0x0285}, |
313 | | {.vendor_id = 0x046d, .product_id = 0x082c}, |
314 | | {.vendor_id = 0x0d8c, .product_id = 0x0721}, |
315 | | {.vendor_id = 0x046d, .product_id = 0x0aee}, |
316 | | {.vendor_id = 0x047f, .product_id = 0x0156}, |
317 | | {.vendor_id = 0x0b0e, .product_id = 0x0314}, |
318 | | {.vendor_id = 0x0b0e, .product_id = 0x0852}, |
319 | | {.vendor_id = 0x0951, .product_id = 0x1713}, |
320 | | {.vendor_id = 0x1532, .product_id = 0x0552}, |
321 | | {.vendor_id = 0x17e9, .product_id = 0x6011}, |
322 | | {.vendor_id = 0x2acf, .product_id = 0x0b21}, |
323 | | {.vendor_id = 0x1532, .product_id = 0x054e}, |
324 | | {.vendor_id = 0x2d0b, .product_id = 0x0001}, |
325 | | {.vendor_id = 0x1235, .product_id = 0x8205}, |
326 | | {.vendor_id = 0x03f0, .product_id = 0x0a93}, |
327 | | {.vendor_id = 0x03f0, .product_id = 0x1841}, |
328 | | {.vendor_id = 0x0b0e, .product_id = 0x2476}, |
329 | | {.vendor_id = 0x17e9, .product_id = 0x602f}, |
330 | | {.vendor_id = 0x2000, .product_id = 0xdd00}, |
331 | | {.vendor_id = 0x1532, .product_id = 0x0521}, |
332 | | {.vendor_id = 0x0020, .product_id = 0x0b21}, |
333 | | {.vendor_id = 0x0c76, .product_id = 0x1608}, |
334 | | {.vendor_id = 0x12d1, .product_id = 0x0010}, |
335 | | {.vendor_id = 0x0bda, .product_id = 0x4c07}, |
336 | | {.vendor_id = 0x10f5, .product_id = 0x0141}, |
337 | | {.vendor_id = 0x0b0e, .product_id = 0x2505}, |
338 | | {.vendor_id = 0x047f, .product_id = 0xac29}, |
339 | | {.vendor_id = 0x04e8, .product_id = 0xa059}, |
340 | | {.vendor_id = 0x04e8, .product_id = 0xa05b}, |
341 | | {.vendor_id = 0x17e9, .product_id = 0x6008}, |
342 | | {.vendor_id = 0x03f0, .product_id = 0x0b92}, |
343 | | {.vendor_id = 0x534d, .product_id = 0x2109}, |
344 | | {.vendor_id = 0x03f0, .product_id = 0x0d87}, |
345 | | {.vendor_id = 0x1532, .product_id = 0x0536}, |
346 | | {.vendor_id = 0x0ecb, .product_id = 0x206b}, |
347 | | {.vendor_id = 0x413c, .product_id = 0xa510}, |
348 | | {.vendor_id = 0x3391, .product_id = 0x0002}, |
349 | | {.vendor_id = 0x08bb, .product_id = 0x2704}, |
350 | | {.vendor_id = 0x6993, .product_id = 0xb120}, |
351 | | {.vendor_id = 0x301a, .product_id = 0x0602}, |
352 | | {.vendor_id = 0x04e8, .product_id = 0xa057}, |
353 | | {.vendor_id = 0x0b0e, .product_id = 0xa50c}, |
354 | | {.vendor_id = 0x1b3f, .product_id = 0x2012}, |
355 | | {.vendor_id = 0x0d8c, .product_id = 0x0022}, |
356 | | {.vendor_id = 0x0b0e, .product_id = 0x0308}, |
357 | | {.vendor_id = 0x3302, .product_id = 0x29e3}, |
358 | | {.vendor_id = 0x0c76, .product_id = 0x1675}, |
359 | | {.vendor_id = 0x0b0e, .product_id = 0x0349}, |
360 | | {.vendor_id = 0x0b0e, .product_id = 0x24ca}, |
361 | | {.vendor_id = 0x2ea1, .product_id = 0x2121}, |
362 | | {.vendor_id = 0x1395, .product_id = 0x0299}, |
363 | | {.vendor_id = 0x04fc, .product_id = 0x2680}, |
364 | | {.vendor_id = 0x03f0, .product_id = 0x0491}, |
365 | | {.vendor_id = 0x194f, .product_id = 0x0403}, |
366 | | {.vendor_id = 0x1b3f, .product_id = 0x2002}, |
367 | | {.vendor_id = 0x047f, .product_id = 0xab01}, |
368 | | {.vendor_id = 0x047f, .product_id = 0x013c}, |
369 | | {.vendor_id = 0x04e8, .product_id = 0xa04f}, |
370 | | {.vendor_id = 0x1025, .product_id = 0x1652}, |
371 | | {.vendor_id = 0x2d30, .product_id = 0x8055}, |
372 | | {.vendor_id = 0x0ecb, .product_id = 0x2039}, |
373 | | {.vendor_id = 0x0e6f, .product_id = 0x0232}, |
374 | | {.vendor_id = 0x0c76, .product_id = 0x1a22}, |
375 | | {.vendor_id = 0x0b0e, .product_id = 0x24fc}, |
376 | | {.vendor_id = 0x31b2, .product_id = 0x0111}, |
377 | | {.vendor_id = 0x03f0, .product_id = 0x0d8b}, |
378 | | {.vendor_id = 0x18d1, .product_id = 0x2d02}, |
379 | | {.vendor_id = 0x0d8c, .product_id = 0x0102}, |
380 | | {.vendor_id = 0x6993, .product_id = 0xb043}, |
381 | | {.vendor_id = 0x1038, .product_id = 0x12ad}, |
382 | | {.vendor_id = 0x1908, .product_id = 0x2220}, |
383 | | {.vendor_id = 0x046d, .product_id = 0x0ade}, |
384 | | {.vendor_id = 0x17ef, .product_id = 0x30d1}, |
385 | | {.vendor_id = 0x05fc, .product_id = 0x0231}, |
386 | | {.vendor_id = 0x0951, .product_id = 0x1718}, |
387 | | {.vendor_id = 0x17ee, .product_id = 0x0a15}, |
388 | | {.vendor_id = 0x17e9, .product_id = 0x4333}, |
389 | | {.vendor_id = 0x046d, .product_id = 0x0aaf}, |
390 | | {.vendor_id = 0x0b05, .product_id = 0x19c5}, |
391 | | {.vendor_id = 0x17ef, .product_id = 0xa05c}, |
392 | | {.vendor_id = 0x046d, .product_id = 0x081b}, |
393 | | {.vendor_id = 0x047f, .product_id = 0xc036}, |
394 | | {.vendor_id = 0x046d, .product_id = 0x0ada}, |
395 | | {.vendor_id = 0x2d0b, .product_id = 0x0010}, |
396 | | {.vendor_id = 0x1d6c, .product_id = 0x0103}, |
397 | | {.vendor_id = 0x047f, .product_id = 0xac2b}, |
398 | | {.vendor_id = 0x2166, .product_id = 0x9021}, |
399 | | {.vendor_id = 0x1bcf, .product_id = 0x28c4}, |
400 | | {.vendor_id = 0x3391, .product_id = 0x0006}, |
401 | | {.vendor_id = 0x0572, .product_id = 0x0005}, |
402 | | {.vendor_id = 0x1224, .product_id = 0x2a25}, |
403 | | {.vendor_id = 0x0031, .product_id = 0x1133}, |
404 | | {.vendor_id = 0x352f, .product_id = 0x0105}, |
405 | | {.vendor_id = 0x0b0e, .product_id = 0x24fd}, |
406 | | {.vendor_id = 0x046d, .product_id = 0x0a66}, |
407 | | {.vendor_id = 0x0d8c, .product_id = 0x0030}, |
408 | | {.vendor_id = 0xf389, .product_id = 0x0168}, |
409 | | {.vendor_id = 0x046d, .product_id = 0x0a90}, |
410 | | {.vendor_id = 0x0b0e, .product_id = 0x1134}, |
411 | | {.vendor_id = 0x0bda, .product_id = 0x4a72}, |
412 | | {.vendor_id = 0x0951, .product_id = 0x1723}, |
413 | | {.vendor_id = 0x2a70, .product_id = 0x1881}, |
414 | | {.vendor_id = 0x0572, .product_id = 0x141b}, |
415 | | {.vendor_id = 0x17e9, .product_id = 0x6013}, |
416 | | {.vendor_id = 0x046d, .product_id = 0x0a46}, |
417 | | {.vendor_id = -1, .product_id = 0}, |
418 | | }; |
419 | | |
420 | 0 | bool in_popular_usb_devices(int vid, int pid) { |
421 | 0 | int i = 0; |
422 | 0 | for (i = 0; popular_usb_devices[i].vendor_id != -1; i++) { |
423 | 0 | if (popular_usb_devices[i].vendor_id == vid && |
424 | 0 | popular_usb_devices[i].product_id == pid) { |
425 | 0 | return true; |
426 | 0 | } |
427 | 0 | } |
428 | 0 | return false; |
429 | 0 | } |
430 | | |
431 | | #if HAVE_LIB_METRICS |
432 | | #include <metrics/c_metrics_library.h> |
433 | | |
434 | | #include "metrics/c_structured_metrics.h" |
435 | | |
436 | | void cras_metrics_log_event(const char* event) { |
437 | | CMetricsLibrary handle; |
438 | | |
439 | | syslog(LOG_DEBUG, "UMA event: %s", event); |
440 | | handle = CMetricsLibraryNew(); |
441 | | CMetricsLibrarySendCrosEventToUMA(handle, event); |
442 | | CMetricsLibraryDelete(handle); |
443 | | } |
444 | | |
445 | | void cras_metrics_log_histogram(const char* name, |
446 | | int sample, |
447 | | int min, |
448 | | int max, |
449 | | int nbuckets) { |
450 | | CMetricsLibrary handle; |
451 | | |
452 | | syslog(LOG_DEBUG, "UMA name: %s", name); |
453 | | handle = CMetricsLibraryNew(); |
454 | | CMetricsLibrarySendToUMA(handle, name, sample, min, max, nbuckets); |
455 | | CMetricsLibraryDelete(handle); |
456 | | } |
457 | | |
458 | | void cras_metrics_log_sparse_histogram(const char* name, int sample) { |
459 | | CMetricsLibrary handle; |
460 | | |
461 | | syslog(LOG_DEBUG, "UMA name: %s", name); |
462 | | handle = CMetricsLibraryNew(); |
463 | | CMetricsLibrarySendSparseToUMA(handle, name, sample); |
464 | | CMetricsLibraryDelete(handle); |
465 | | } |
466 | | |
467 | | void audio_peripheral_info(int vendor_id, int product_id, int type) { |
468 | | syslog(LOG_DEBUG, "AudioPeripheralInfo vid: %x, pid: %x, type: %d", vendor_id, |
469 | | product_id, type); |
470 | | AudioPeripheralInfo(vendor_id, product_id, type); |
471 | | } |
472 | | |
473 | | void audio_peripheral_close(int vendor_id, |
474 | | int product_id, |
475 | | int type, |
476 | | int run_time, |
477 | | int rate, |
478 | | int channel, |
479 | | int format) { |
480 | | if (in_popular_usb_devices(vendor_id, product_id)) { |
481 | | syslog(LOG_DEBUG, |
482 | | "AudioPeripheralClose vid: %x, pid: %x, type: %d, run_time: %d, " |
483 | | "rate: %d, channel: %d, format:%d", |
484 | | vendor_id, product_id, type, run_time, rate, channel, format); |
485 | | AudioPeripheralClose(vendor_id, product_id, type, run_time, rate, channel, |
486 | | format); |
487 | | } |
488 | | } |
489 | | |
490 | | #else |
491 | 0 | void cras_metrics_log_event(const char* event) {} |
492 | | void cras_metrics_log_histogram(const char* name, |
493 | | int sample, |
494 | | int min, |
495 | | int max, |
496 | 18.8k | int nbuckets) {} |
497 | 0 | void cras_metrics_log_enum_histogram(const char* name, int sample, int max) {} |
498 | 6.70k | void cras_metrics_log_sparse_histogram(const char* name, int sample) {} |
499 | | |
500 | 0 | void audio_peripheral_info(int vendor_id, int product_id, int type) {} |
501 | | void audio_peripheral_close(int vendor_id, |
502 | | int product_id, |
503 | | int type, |
504 | | int run_time, |
505 | | int rate, |
506 | | int channel, |
507 | 0 | int format) {} |
508 | | |
509 | | #endif |