]>
Commit | Line | Data |
---|---|---|
1 | /* | |
2 | * This file is part of the libsigrok project. | |
3 | * | |
4 | * Copyright (C) 2014 Bert Vermeulen <bert@biot.com> | |
5 | * | |
6 | * This program is free software: you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License as published by | |
8 | * the Free Software Foundation, either version 3 of the License, or | |
9 | * (at your option) any later version. | |
10 | * | |
11 | * This program is distributed in the hope that it will be useful, | |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | * GNU General Public License for more details. | |
15 | * | |
16 | * You should have received a copy of the GNU General Public License | |
17 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | |
18 | */ | |
19 | ||
20 | #include <config.h> | |
21 | #include <libsigrok/libsigrok.h> | |
22 | #include "libsigrok-internal.h" | |
23 | ||
24 | /** @cond PRIVATE */ | |
25 | #ifdef HAVE_HW_AGILENT_DMM | |
26 | extern SR_PRIV struct sr_dev_driver agdmm_driver_info; | |
27 | #endif | |
28 | #ifdef HAVE_HW_APPA_55II | |
29 | extern SR_PRIV struct sr_dev_driver appa_55ii_driver_info; | |
30 | #endif | |
31 | #ifdef HAVE_HW_ARACHNID_LABS_RE_LOAD_PRO | |
32 | extern SR_PRIV struct sr_dev_driver arachnid_labs_re_load_pro_driver_info; | |
33 | #endif | |
34 | #ifdef HAVE_HW_ASIX_SIGMA | |
35 | extern SR_PRIV struct sr_dev_driver asix_sigma_driver_info; | |
36 | #endif | |
37 | #ifdef HAVE_HW_ATTEN_PPS3XXX | |
38 | extern SR_PRIV struct sr_dev_driver atten_pps3203_driver_info; | |
39 | #endif | |
40 | #ifdef HAVE_HW_BAYLIBRE_ACME | |
41 | extern SR_PRIV struct sr_dev_driver baylibre_acme_driver_info; | |
42 | #endif | |
43 | #ifdef HAVE_HW_BEAGLELOGIC | |
44 | extern SR_PRIV struct sr_dev_driver beaglelogic_driver_info; | |
45 | #endif | |
46 | #ifdef HAVE_HW_BRYMEN_BM86X | |
47 | extern SR_PRIV struct sr_dev_driver brymen_bm86x_driver_info; | |
48 | #endif | |
49 | #ifdef HAVE_HW_BRYMEN_DMM | |
50 | extern SR_PRIV struct sr_dev_driver brymen_bm857_driver_info; | |
51 | #endif | |
52 | #ifdef HAVE_HW_CEM_DT_885X | |
53 | extern SR_PRIV struct sr_dev_driver cem_dt_885x_driver_info; | |
54 | #endif | |
55 | #ifdef HAVE_HW_CENTER_3XX | |
56 | extern SR_PRIV struct sr_dev_driver center_309_driver_info; | |
57 | extern SR_PRIV struct sr_dev_driver voltcraft_k204_driver_info; | |
58 | #endif | |
59 | #ifdef HAVE_HW_CHRONOVU_LA | |
60 | extern SR_PRIV struct sr_dev_driver chronovu_la_driver_info; | |
61 | #endif | |
62 | #ifdef HAVE_HW_COLEAD_SLM | |
63 | extern SR_PRIV struct sr_dev_driver colead_slm_driver_info; | |
64 | #endif | |
65 | #ifdef HAVE_HW_CONRAD_DIGI_35_CPU | |
66 | extern SR_PRIV struct sr_dev_driver conrad_digi_35_cpu_driver_info; | |
67 | #endif | |
68 | #ifdef HAVE_HW_DEMO | |
69 | extern SR_PRIV struct sr_dev_driver demo_driver_info; | |
70 | #endif | |
71 | #ifdef HAVE_HW_DEREE_DE5000 | |
72 | extern SR_PRIV struct sr_dev_driver deree_de5000_driver_info; | |
73 | #endif | |
74 | #ifdef HAVE_HW_FLUKE_DMM | |
75 | extern SR_PRIV struct sr_dev_driver flukedmm_driver_info; | |
76 | #endif | |
77 | #ifdef HAVE_HW_FX2LAFW | |
78 | extern SR_PRIV struct sr_dev_driver fx2lafw_driver_info; | |
79 | #endif | |
80 | #ifdef HAVE_HW_GMC_MH_1X_2X | |
81 | extern SR_PRIV struct sr_dev_driver gmc_mh_1x_2x_rs232_driver_info; | |
82 | extern SR_PRIV struct sr_dev_driver gmc_mh_2x_bd232_driver_info; | |
83 | #endif | |
84 | #ifdef HAVE_HW_GWINSTEK_GDS_800 | |
85 | extern SR_PRIV struct sr_dev_driver gwinstek_gds_800_driver_info; | |
86 | #endif | |
87 | #ifdef HAVE_HW_HAMEG_HMO | |
88 | extern SR_PRIV struct sr_dev_driver hameg_hmo_driver_info; | |
89 | #endif | |
90 | #ifdef HAVE_HW_HANTEK_6XXX | |
91 | extern SR_PRIV struct sr_dev_driver hantek_6xxx_driver_info; | |
92 | #endif | |
93 | #ifdef HAVE_HW_HANTEK_DSO | |
94 | extern SR_PRIV struct sr_dev_driver hantek_dso_driver_info; | |
95 | #endif | |
96 | #ifdef HAVE_HW_HP_3457A | |
97 | extern SR_PRIV struct sr_dev_driver hp_3457a_driver_info; | |
98 | #endif | |
99 | #ifdef HAVE_HW_HUNG_CHANG_DSO_2100 | |
100 | extern SR_PRIV struct sr_dev_driver hung_chang_dso_2100_driver_info; | |
101 | #endif | |
102 | #ifdef HAVE_HW_IKALOGIC_SCANALOGIC2 | |
103 | extern SR_PRIV struct sr_dev_driver ikalogic_scanalogic2_driver_info; | |
104 | #endif | |
105 | #ifdef HAVE_HW_IKALOGIC_SCANAPLUS | |
106 | extern SR_PRIV struct sr_dev_driver ikalogic_scanaplus_driver_info; | |
107 | #endif | |
108 | #ifdef HAVE_HW_KECHENG_KC_330B | |
109 | extern SR_PRIV struct sr_dev_driver kecheng_kc_330b_driver_info; | |
110 | #endif | |
111 | #ifdef HAVE_HW_KERN_SCALE | |
112 | extern SR_PRIV struct sr_dev_driver *kern_scale_drivers[]; | |
113 | #endif | |
114 | #ifdef HAVE_HW_KORAD_KAXXXXP | |
115 | extern SR_PRIV struct sr_dev_driver korad_kaxxxxp_driver_info; | |
116 | #endif | |
117 | #ifdef HAVE_HW_LASCAR_EL_USB | |
118 | extern SR_PRIV struct sr_dev_driver lascar_el_usb_driver_info; | |
119 | #endif | |
120 | #ifdef HAVE_HW_LECROY_LOGICSTUDIO | |
121 | extern SR_PRIV struct sr_dev_driver lecroy_logicstudio_driver_info; | |
122 | #endif | |
123 | #ifdef HAVE_HW_LINK_MSO19 | |
124 | extern SR_PRIV struct sr_dev_driver link_mso19_driver_info; | |
125 | #endif | |
126 | #ifdef HAVE_HW_MANSON_HCS_3XXX | |
127 | extern SR_PRIV struct sr_dev_driver manson_hcs_3xxx_driver_info; | |
128 | #endif | |
129 | #ifdef HAVE_HW_MAYNUO_M97 | |
130 | extern SR_PRIV struct sr_dev_driver maynuo_m97_driver_info; | |
131 | #endif | |
132 | #ifdef HAVE_HW_MIC_985XX | |
133 | extern SR_PRIV struct sr_dev_driver mic_98581_driver_info; | |
134 | extern SR_PRIV struct sr_dev_driver mic_98583_driver_info; | |
135 | #endif | |
136 | #ifdef HAVE_HW_MOTECH_LPS_30X | |
137 | extern SR_PRIV struct sr_dev_driver motech_lps_301_driver_info; | |
138 | #endif | |
139 | #ifdef HAVE_HW_NORMA_DMM | |
140 | extern SR_PRIV struct sr_dev_driver norma_dmm_driver_info; | |
141 | extern SR_PRIV struct sr_dev_driver siemens_b102x_driver_info; | |
142 | #endif | |
143 | #ifdef HAVE_HW_OPENBENCH_LOGIC_SNIFFER | |
144 | extern SR_PRIV struct sr_dev_driver ols_driver_info; | |
145 | #endif | |
146 | #ifdef HAVE_HW_PIPISTRELLO_OLS | |
147 | extern SR_PRIV struct sr_dev_driver p_ols_driver_info; | |
148 | #endif | |
149 | #ifdef HAVE_HW_RIGOL_DS | |
150 | extern SR_PRIV struct sr_dev_driver rigol_ds_driver_info; | |
151 | #endif | |
152 | #ifdef HAVE_HW_SALEAE_LOGIC16 | |
153 | extern SR_PRIV struct sr_dev_driver saleae_logic16_driver_info; | |
154 | #endif | |
155 | #ifdef HAVE_HW_SCPI_PPS | |
156 | extern SR_PRIV struct sr_dev_driver scpi_pps_driver_info; | |
157 | #endif | |
158 | #ifdef HAVE_HW_SERIAL_DMM | |
159 | extern SR_PRIV struct sr_dev_driver *serial_dmm_drivers[]; | |
160 | #endif | |
161 | #ifdef HAVE_HW_SYSCLK_LWLA | |
162 | extern SR_PRIV struct sr_dev_driver sysclk_lwla_driver_info; | |
163 | #endif | |
164 | #ifdef HAVE_HW_TELEINFO | |
165 | extern SR_PRIV struct sr_dev_driver teleinfo_driver_info; | |
166 | #endif | |
167 | #ifdef HAVE_HW_TESTO | |
168 | extern SR_PRIV struct sr_dev_driver testo_driver_info; | |
169 | #endif | |
170 | #ifdef HAVE_HW_TONDAJ_SL_814 | |
171 | extern SR_PRIV struct sr_dev_driver tondaj_sl_814_driver_info; | |
172 | #endif | |
173 | #ifdef HAVE_HW_UNI_T_DMM | |
174 | extern SR_PRIV struct sr_dev_driver *uni_t_dmm_drivers[]; | |
175 | #endif | |
176 | #ifdef HAVE_HW_UNI_T_UT32X | |
177 | extern SR_PRIV struct sr_dev_driver uni_t_ut32x_driver_info; | |
178 | #endif | |
179 | #ifdef HAVE_HW_VICTOR_DMM | |
180 | extern SR_PRIV struct sr_dev_driver victor_dmm_driver_info; | |
181 | #endif | |
182 | #ifdef HAVE_HW_YOKOGAWA_DLM | |
183 | extern SR_PRIV struct sr_dev_driver yokogawa_dlm_driver_info; | |
184 | #endif | |
185 | #ifdef HAVE_HW_ZEROPLUS_LOGIC_CUBE | |
186 | extern SR_PRIV struct sr_dev_driver zeroplus_logic_cube_driver_info; | |
187 | #endif | |
188 | ||
189 | #define DRVS struct sr_dev_driver *[] | |
190 | ||
191 | SR_PRIV struct sr_dev_driver **drivers_lists[] = { | |
192 | #ifdef HAVE_HW_AGILENT_DMM | |
193 | (DRVS) {&agdmm_driver_info, NULL}, | |
194 | #endif | |
195 | #ifdef HAVE_HW_APPA_55II | |
196 | (DRVS) {&appa_55ii_driver_info, NULL}, | |
197 | #endif | |
198 | #ifdef HAVE_HW_ARACHNID_LABS_RE_LOAD_PRO | |
199 | (DRVS) {&arachnid_labs_re_load_pro_driver_info, NULL}, | |
200 | #endif | |
201 | #ifdef HAVE_HW_ASIX_SIGMA | |
202 | (DRVS) {&asix_sigma_driver_info, NULL}, | |
203 | #endif | |
204 | #ifdef HAVE_HW_ATTEN_PPS3XXX | |
205 | (DRVS) {&atten_pps3203_driver_info, NULL}, | |
206 | #endif | |
207 | #ifdef HAVE_HW_BAYLIBRE_ACME | |
208 | (DRVS) {&baylibre_acme_driver_info, NULL}, | |
209 | #endif | |
210 | #ifdef HAVE_HW_BEAGLELOGIC | |
211 | (DRVS) {&beaglelogic_driver_info, NULL}, | |
212 | #endif | |
213 | #ifdef HAVE_HW_BRYMEN_BM86X | |
214 | (DRVS) {&brymen_bm86x_driver_info, NULL}, | |
215 | #endif | |
216 | #ifdef HAVE_HW_BRYMEN_DMM | |
217 | (DRVS) {&brymen_bm857_driver_info, NULL}, | |
218 | #endif | |
219 | #ifdef HAVE_HW_CEM_DT_885X | |
220 | (DRVS) {&cem_dt_885x_driver_info, NULL}, | |
221 | #endif | |
222 | #ifdef HAVE_HW_CENTER_3XX | |
223 | (DRVS) { | |
224 | ¢er_309_driver_info, | |
225 | &voltcraft_k204_driver_info, | |
226 | NULL | |
227 | }, | |
228 | #endif | |
229 | #ifdef HAVE_HW_CHRONOVU_LA | |
230 | (DRVS) {&chronovu_la_driver_info, NULL}, | |
231 | #endif | |
232 | #ifdef HAVE_HW_COLEAD_SLM | |
233 | (DRVS) {&colead_slm_driver_info, NULL}, | |
234 | #endif | |
235 | #ifdef HAVE_HW_CONRAD_DIGI_35_CPU | |
236 | (DRVS) {&conrad_digi_35_cpu_driver_info, NULL}, | |
237 | #endif | |
238 | #ifdef HAVE_HW_DEMO | |
239 | (DRVS) {&demo_driver_info, NULL}, | |
240 | #endif | |
241 | #ifdef HAVE_HW_DEREE_DE5000 | |
242 | (DRVS) {&deree_de5000_driver_info, NULL}, | |
243 | #endif | |
244 | #ifdef HAVE_HW_FLUKE_DMM | |
245 | (DRVS) {&flukedmm_driver_info, NULL}, | |
246 | #endif | |
247 | #ifdef HAVE_HW_FX2LAFW | |
248 | (DRVS) {&fx2lafw_driver_info, NULL}, | |
249 | #endif | |
250 | #ifdef HAVE_HW_GMC_MH_1X_2X | |
251 | (DRVS) { | |
252 | &gmc_mh_1x_2x_rs232_driver_info, | |
253 | &gmc_mh_2x_bd232_driver_info, | |
254 | NULL | |
255 | }, | |
256 | #endif | |
257 | #ifdef HAVE_HW_GWINSTEK_GDS_800 | |
258 | (DRVS) {&gwinstek_gds_800_driver_info, NULL}, | |
259 | #endif | |
260 | #ifdef HAVE_HW_HAMEG_HMO | |
261 | (DRVS) {&hameg_hmo_driver_info, NULL}, | |
262 | #endif | |
263 | #ifdef HAVE_HW_HANTEK_6XXX | |
264 | (DRVS) {&hantek_6xxx_driver_info, NULL}, | |
265 | #endif | |
266 | #ifdef HAVE_HW_HANTEK_DSO | |
267 | (DRVS) {&hantek_dso_driver_info, NULL}, | |
268 | #endif | |
269 | #ifdef HAVE_HW_HP_3457A | |
270 | (DRVS) {&hp_3457a_driver_info, NULL}, | |
271 | #endif | |
272 | #ifdef HAVE_HW_HUNG_CHANG_DSO_2100 | |
273 | (DRVS) {&hung_chang_dso_2100_driver_info, NULL}, | |
274 | #endif | |
275 | #ifdef HAVE_HW_IKALOGIC_SCANALOGIC2 | |
276 | (DRVS) {&ikalogic_scanalogic2_driver_info, NULL}, | |
277 | #endif | |
278 | #ifdef HAVE_HW_IKALOGIC_SCANAPLUS | |
279 | (DRVS) {&ikalogic_scanaplus_driver_info, NULL}, | |
280 | #endif | |
281 | #ifdef HAVE_HW_KECHENG_KC_330B | |
282 | (DRVS) {&kecheng_kc_330b_driver_info, NULL}, | |
283 | #endif | |
284 | #ifdef HAVE_HW_KERN_SCALE | |
285 | kern_scale_drivers, | |
286 | #endif | |
287 | #ifdef HAVE_HW_KORAD_KAXXXXP | |
288 | (DRVS) {&korad_kaxxxxp_driver_info, NULL}, | |
289 | #endif | |
290 | #ifdef HAVE_HW_LASCAR_EL_USB | |
291 | (DRVS) {&lascar_el_usb_driver_info, NULL}, | |
292 | #endif | |
293 | #ifdef HAVE_HW_LECROY_LOGICSTUDIO | |
294 | (DRVS) {&lecroy_logicstudio_driver_info, NULL}, | |
295 | #endif | |
296 | #ifdef HAVE_HW_LINK_MSO19 | |
297 | (DRVS) {&link_mso19_driver_info, NULL}, | |
298 | #endif | |
299 | #ifdef HAVE_HW_MANSON_HCS_3XXX | |
300 | (DRVS) {&manson_hcs_3xxx_driver_info, NULL}, | |
301 | #endif | |
302 | #ifdef HAVE_HW_MAYNUO_M97 | |
303 | (DRVS) {&maynuo_m97_driver_info, NULL}, | |
304 | #endif | |
305 | #ifdef HAVE_HW_MIC_985XX | |
306 | (DRVS) { | |
307 | &mic_98581_driver_info, | |
308 | &mic_98583_driver_info, | |
309 | NULL | |
310 | }, | |
311 | #endif | |
312 | #ifdef HAVE_HW_MOTECH_LPS_30X | |
313 | (DRVS) {&motech_lps_301_driver_info, NULL}, | |
314 | #endif | |
315 | #ifdef HAVE_HW_NORMA_DMM | |
316 | (DRVS) { | |
317 | &norma_dmm_driver_info, | |
318 | &siemens_b102x_driver_info, | |
319 | NULL | |
320 | }, | |
321 | #endif | |
322 | #ifdef HAVE_HW_OPENBENCH_LOGIC_SNIFFER | |
323 | (DRVS) {&ols_driver_info, NULL}, | |
324 | #endif | |
325 | #ifdef HAVE_HW_PIPISTRELLO_OLS | |
326 | (DRVS) {&p_ols_driver_info, NULL}, | |
327 | #endif | |
328 | #ifdef HAVE_HW_RIGOL_DS | |
329 | (DRVS) {&rigol_ds_driver_info, NULL}, | |
330 | #endif | |
331 | #ifdef HAVE_HW_SALEAE_LOGIC16 | |
332 | (DRVS) {&saleae_logic16_driver_info, NULL}, | |
333 | #endif | |
334 | #ifdef HAVE_HW_SCPI_PPS | |
335 | (DRVS) {&scpi_pps_driver_info, NULL}, | |
336 | #endif | |
337 | #ifdef HAVE_HW_SERIAL_DMM | |
338 | serial_dmm_drivers, | |
339 | #endif | |
340 | #ifdef HAVE_HW_SYSCLK_LWLA | |
341 | (DRVS) {&sysclk_lwla_driver_info, NULL}, | |
342 | #endif | |
343 | #ifdef HAVE_HW_TELEINFO | |
344 | (DRVS) {&teleinfo_driver_info, NULL}, | |
345 | #endif | |
346 | #ifdef HAVE_HW_TESTO | |
347 | (DRVS) {&testo_driver_info, NULL}, | |
348 | #endif | |
349 | #ifdef HAVE_HW_TONDAJ_SL_814 | |
350 | (DRVS) {&tondaj_sl_814_driver_info, NULL}, | |
351 | #endif | |
352 | #ifdef HAVE_HW_UNI_T_DMM | |
353 | uni_t_dmm_drivers, | |
354 | #endif | |
355 | #ifdef HAVE_HW_UNI_T_UT32X | |
356 | (DRVS) {&uni_t_ut32x_driver_info, NULL}, | |
357 | #endif | |
358 | #ifdef HAVE_HW_VICTOR_DMM | |
359 | (DRVS) {&victor_dmm_driver_info, NULL}, | |
360 | #endif | |
361 | #ifdef HAVE_HW_YOKOGAWA_DLM | |
362 | (DRVS) {&yokogawa_dlm_driver_info, NULL}, | |
363 | #endif | |
364 | #ifdef HAVE_HW_ZEROPLUS_LOGIC_CUBE | |
365 | (DRVS) {&zeroplus_logic_cube_driver_info, NULL}, | |
366 | #endif | |
367 | NULL, | |
368 | }; | |
369 | /** @endcond */ |