]>
Commit | Line | Data |
---|---|---|
5d8c55f9 BV |
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 | ||
6ec6c43b | 20 | #include <config.h> |
c1aae900 | 21 | #include <libsigrok/libsigrok.h> |
5d8c55f9 BV |
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_ASIX_SIGMA | |
32 | extern SR_PRIV struct sr_dev_driver asix_sigma_driver_info; | |
33 | #endif | |
34 | #ifdef HAVE_HW_ATTEN_PPS3XXX | |
35 | extern SR_PRIV struct sr_dev_driver atten_pps3203_driver_info; | |
36 | #endif | |
dfaee1de BG |
37 | #ifdef HAVE_HW_BAYLIBRE_ACME |
38 | extern SR_PRIV struct sr_dev_driver baylibre_acme_driver_info; | |
39 | #endif | |
bb993797 KA |
40 | #ifdef HAVE_HW_BEAGLELOGIC |
41 | extern SR_PRIV struct sr_dev_driver beaglelogic_driver_info; | |
42 | #endif | |
5d8c55f9 BV |
43 | #ifdef HAVE_HW_BRYMEN_BM86X |
44 | extern SR_PRIV struct sr_dev_driver brymen_bm86x_driver_info; | |
45 | #endif | |
46 | #ifdef HAVE_HW_BRYMEN_DMM | |
47 | extern SR_PRIV struct sr_dev_driver brymen_bm857_driver_info; | |
48 | #endif | |
49 | #ifdef HAVE_HW_CEM_DT_885X | |
50 | extern SR_PRIV struct sr_dev_driver cem_dt_885x_driver_info; | |
51 | #endif | |
52 | #ifdef HAVE_HW_CENTER_3XX | |
53 | extern SR_PRIV struct sr_dev_driver center_309_driver_info; | |
54 | extern SR_PRIV struct sr_dev_driver voltcraft_k204_driver_info; | |
55 | #endif | |
56 | #ifdef HAVE_HW_CHRONOVU_LA | |
57 | extern SR_PRIV struct sr_dev_driver chronovu_la_driver_info; | |
58 | #endif | |
59 | #ifdef HAVE_HW_COLEAD_SLM | |
60 | extern SR_PRIV struct sr_dev_driver colead_slm_driver_info; | |
61 | #endif | |
62 | #ifdef HAVE_HW_CONRAD_DIGI_35_CPU | |
63 | extern SR_PRIV struct sr_dev_driver conrad_digi_35_cpu_driver_info; | |
64 | #endif | |
65 | #ifdef HAVE_HW_DEMO | |
66 | extern SR_PRIV struct sr_dev_driver demo_driver_info; | |
67 | #endif | |
b5089195 JH |
68 | #ifdef HAVE_HW_DEREE_DE5000 |
69 | extern SR_PRIV struct sr_dev_driver deree_de5000_driver_info; | |
70 | #endif | |
5d8c55f9 BV |
71 | #ifdef HAVE_HW_FLUKE_DMM |
72 | extern SR_PRIV struct sr_dev_driver flukedmm_driver_info; | |
73 | #endif | |
74 | #ifdef HAVE_HW_FX2LAFW | |
75 | extern SR_PRIV struct sr_dev_driver fx2lafw_driver_info; | |
76 | #endif | |
77 | #ifdef HAVE_HW_GMC_MH_1X_2X | |
78 | extern SR_PRIV struct sr_dev_driver gmc_mh_1x_2x_rs232_driver_info; | |
79 | extern SR_PRIV struct sr_dev_driver gmc_mh_2x_bd232_driver_info; | |
80 | #endif | |
7c198f96 ML |
81 | #ifdef HAVE_HW_GWINSTEK_GDS_800 |
82 | extern SR_PRIV struct sr_dev_driver gwinstek_gds_800_driver_info; | |
83 | #endif | |
5d8c55f9 BV |
84 | #ifdef HAVE_HW_HAMEG_HMO |
85 | extern SR_PRIV struct sr_dev_driver hameg_hmo_driver_info; | |
86 | #endif | |
87 | #ifdef HAVE_HW_HANTEK_DSO | |
88 | extern SR_PRIV struct sr_dev_driver hantek_dso_driver_info; | |
89 | #endif | |
05ac4a98 DG |
90 | #ifdef HAVE_HW_HUNG_CHANG_DSO_2100 |
91 | extern SR_PRIV struct sr_dev_driver hung_chang_dso_2100_driver_info; | |
92 | #endif | |
5d8c55f9 BV |
93 | #ifdef HAVE_HW_IKALOGIC_SCANALOGIC2 |
94 | extern SR_PRIV struct sr_dev_driver ikalogic_scanalogic2_driver_info; | |
95 | #endif | |
96 | #ifdef HAVE_HW_IKALOGIC_SCANAPLUS | |
97 | extern SR_PRIV struct sr_dev_driver ikalogic_scanaplus_driver_info; | |
98 | #endif | |
99 | #ifdef HAVE_HW_KECHENG_KC_330B | |
100 | extern SR_PRIV struct sr_dev_driver kecheng_kc_330b_driver_info; | |
101 | #endif | |
9380ec2f | 102 | #ifdef HAVE_HW_KERN_SCALE |
607dcdea | 103 | extern SR_PRIV struct sr_dev_driver *kern_scale_drivers[]; |
9380ec2f | 104 | #endif |
e75ee7de HV |
105 | #ifdef HAVE_HW_KORAD_KDXXXXP |
106 | extern SR_PRIV struct sr_dev_driver korad_kdxxxxp_driver_info; | |
107 | #endif | |
5d8c55f9 BV |
108 | #ifdef HAVE_HW_LASCAR_EL_USB |
109 | extern SR_PRIV struct sr_dev_driver lascar_el_usb_driver_info; | |
110 | #endif | |
111 | #ifdef HAVE_HW_LINK_MSO19 | |
112 | extern SR_PRIV struct sr_dev_driver link_mso19_driver_info; | |
113 | #endif | |
114 | #ifdef HAVE_HW_MANSON_HCS_3XXX | |
115 | extern SR_PRIV struct sr_dev_driver manson_hcs_3xxx_driver_info; | |
116 | #endif | |
e1ccfb19 AJ |
117 | #ifdef HAVE_HW_MAYNUO_M97 |
118 | extern SR_PRIV struct sr_dev_driver maynuo_m97_driver_info; | |
119 | #endif | |
5d8c55f9 BV |
120 | #ifdef HAVE_HW_MIC_985XX |
121 | extern SR_PRIV struct sr_dev_driver mic_98581_driver_info; | |
122 | extern SR_PRIV struct sr_dev_driver mic_98583_driver_info; | |
123 | #endif | |
124 | #ifdef HAVE_HW_MOTECH_LPS_30X | |
125 | extern SR_PRIV struct sr_dev_driver motech_lps_301_driver_info; | |
126 | #endif | |
127 | #ifdef HAVE_HW_NORMA_DMM | |
128 | extern SR_PRIV struct sr_dev_driver norma_dmm_driver_info; | |
129 | extern SR_PRIV struct sr_dev_driver siemens_b102x_driver_info; | |
130 | #endif | |
131 | #ifdef HAVE_HW_OPENBENCH_LOGIC_SNIFFER | |
132 | extern SR_PRIV struct sr_dev_driver ols_driver_info; | |
133 | #endif | |
4bd80e12 | 134 | #ifdef HAVE_HW_PIPISTRELLO_OLS |
135 | extern SR_PRIV struct sr_dev_driver p_ols_driver_info; | |
136 | #endif | |
5d8c55f9 BV |
137 | #ifdef HAVE_HW_RIGOL_DS |
138 | extern SR_PRIV struct sr_dev_driver rigol_ds_driver_info; | |
139 | #endif | |
140 | #ifdef HAVE_HW_SALEAE_LOGIC16 | |
141 | extern SR_PRIV struct sr_dev_driver saleae_logic16_driver_info; | |
142 | #endif | |
ca1a7cb5 BV |
143 | #ifdef HAVE_HW_SCPI_PPS |
144 | extern SR_PRIV struct sr_dev_driver scpi_pps_driver_info; | |
145 | #endif | |
5d8c55f9 | 146 | #ifdef HAVE_HW_SERIAL_DMM |
bcbef5ed | 147 | extern SR_PRIV struct sr_dev_driver *serial_dmm_drivers[]; |
5d8c55f9 BV |
148 | #endif |
149 | #ifdef HAVE_HW_SYSCLK_LWLA | |
150 | extern SR_PRIV struct sr_dev_driver sysclk_lwla_driver_info; | |
151 | #endif | |
152 | #ifdef HAVE_HW_TELEINFO | |
153 | extern SR_PRIV struct sr_dev_driver teleinfo_driver_info; | |
154 | #endif | |
155 | #ifdef HAVE_HW_TESTO | |
156 | extern SR_PRIV struct sr_dev_driver testo_driver_info; | |
157 | #endif | |
158 | #ifdef HAVE_HW_TONDAJ_SL_814 | |
159 | extern SR_PRIV struct sr_dev_driver tondaj_sl_814_driver_info; | |
160 | #endif | |
161 | #ifdef HAVE_HW_UNI_T_DMM | |
f0540611 | 162 | extern SR_PRIV struct sr_dev_driver *uni_t_dmm_drivers[]; |
5d8c55f9 BV |
163 | #endif |
164 | #ifdef HAVE_HW_UNI_T_UT32X | |
165 | extern SR_PRIV struct sr_dev_driver uni_t_ut32x_driver_info; | |
166 | #endif | |
167 | #ifdef HAVE_HW_VICTOR_DMM | |
168 | extern SR_PRIV struct sr_dev_driver victor_dmm_driver_info; | |
169 | #endif | |
10763937 SA |
170 | #ifdef HAVE_HW_YOKOGAWA_DLM |
171 | extern SR_PRIV struct sr_dev_driver yokogawa_dlm_driver_info; | |
172 | #endif | |
5d8c55f9 BV |
173 | #ifdef HAVE_HW_ZEROPLUS_LOGIC_CUBE |
174 | extern SR_PRIV struct sr_dev_driver zeroplus_logic_cube_driver_info; | |
175 | #endif | |
176 | ||
9e60a31f ML |
177 | #define DRVS struct sr_dev_driver *[] |
178 | ||
179 | SR_PRIV struct sr_dev_driver **drivers_lists[] = { | |
5d8c55f9 | 180 | #ifdef HAVE_HW_AGILENT_DMM |
9e60a31f | 181 | (DRVS) {&agdmm_driver_info, NULL}, |
5d8c55f9 BV |
182 | #endif |
183 | #ifdef HAVE_HW_APPA_55II | |
9e60a31f | 184 | (DRVS) {&appa_55ii_driver_info, NULL}, |
5d8c55f9 BV |
185 | #endif |
186 | #ifdef HAVE_HW_ASIX_SIGMA | |
9e60a31f | 187 | (DRVS) {&asix_sigma_driver_info, NULL}, |
5d8c55f9 BV |
188 | #endif |
189 | #ifdef HAVE_HW_ATTEN_PPS3XXX | |
9e60a31f | 190 | (DRVS) {&atten_pps3203_driver_info, NULL}, |
5d8c55f9 | 191 | #endif |
dfaee1de | 192 | #ifdef HAVE_HW_BAYLIBRE_ACME |
9e60a31f | 193 | (DRVS) {&baylibre_acme_driver_info, NULL}, |
dfaee1de | 194 | #endif |
bb993797 | 195 | #ifdef HAVE_HW_BEAGLELOGIC |
9e60a31f | 196 | (DRVS) {&beaglelogic_driver_info, NULL}, |
bb993797 | 197 | #endif |
5d8c55f9 | 198 | #ifdef HAVE_HW_BRYMEN_BM86X |
9e60a31f | 199 | (DRVS) {&brymen_bm86x_driver_info, NULL}, |
5d8c55f9 BV |
200 | #endif |
201 | #ifdef HAVE_HW_BRYMEN_DMM | |
9e60a31f | 202 | (DRVS) {&brymen_bm857_driver_info, NULL}, |
5d8c55f9 BV |
203 | #endif |
204 | #ifdef HAVE_HW_CEM_DT_885X | |
9e60a31f | 205 | (DRVS) {&cem_dt_885x_driver_info, NULL}, |
5d8c55f9 BV |
206 | #endif |
207 | #ifdef HAVE_HW_CENTER_3XX | |
9e60a31f ML |
208 | (DRVS) { |
209 | ¢er_309_driver_info, | |
210 | &voltcraft_k204_driver_info, | |
1a863916 UH |
211 | NULL |
212 | }, | |
5d8c55f9 BV |
213 | #endif |
214 | #ifdef HAVE_HW_CHRONOVU_LA | |
9e60a31f | 215 | (DRVS) {&chronovu_la_driver_info, NULL}, |
5d8c55f9 BV |
216 | #endif |
217 | #ifdef HAVE_HW_COLEAD_SLM | |
9e60a31f | 218 | (DRVS) {&colead_slm_driver_info, NULL}, |
5d8c55f9 BV |
219 | #endif |
220 | #ifdef HAVE_HW_CONRAD_DIGI_35_CPU | |
9e60a31f | 221 | (DRVS) {&conrad_digi_35_cpu_driver_info, NULL}, |
5d8c55f9 BV |
222 | #endif |
223 | #ifdef HAVE_HW_DEMO | |
9e60a31f | 224 | (DRVS) {&demo_driver_info, NULL}, |
5d8c55f9 | 225 | #endif |
b5089195 | 226 | #ifdef HAVE_HW_DEREE_DE5000 |
9e60a31f | 227 | (DRVS) {&deree_de5000_driver_info, NULL}, |
b5089195 | 228 | #endif |
5d8c55f9 | 229 | #ifdef HAVE_HW_FLUKE_DMM |
9e60a31f | 230 | (DRVS) {&flukedmm_driver_info, NULL}, |
5d8c55f9 BV |
231 | #endif |
232 | #ifdef HAVE_HW_FX2LAFW | |
9e60a31f | 233 | (DRVS) {&fx2lafw_driver_info, NULL}, |
5d8c55f9 BV |
234 | #endif |
235 | #ifdef HAVE_HW_GMC_MH_1X_2X | |
9e60a31f ML |
236 | (DRVS) { |
237 | &gmc_mh_1x_2x_rs232_driver_info, | |
238 | &gmc_mh_2x_bd232_driver_info, | |
1a863916 UH |
239 | NULL |
240 | }, | |
5d8c55f9 | 241 | #endif |
ff85d65e UH |
242 | #ifdef HAVE_HW_GWINSTEK_GDS_800 |
243 | (DRVS) {&gwinstek_gds_800_driver_info, NULL}, | |
244 | #endif | |
5d8c55f9 | 245 | #ifdef HAVE_HW_HAMEG_HMO |
9e60a31f | 246 | (DRVS) {&hameg_hmo_driver_info, NULL}, |
5d8c55f9 BV |
247 | #endif |
248 | #ifdef HAVE_HW_HANTEK_DSO | |
9e60a31f | 249 | (DRVS) {&hantek_dso_driver_info, NULL}, |
5d8c55f9 | 250 | #endif |
05ac4a98 DG |
251 | #ifdef HAVE_HW_HUNG_CHANG_DSO_2100 |
252 | (DRVS) {&hung_chang_dso_2100_driver_info, NULL}, | |
253 | #endif | |
5d8c55f9 | 254 | #ifdef HAVE_HW_IKALOGIC_SCANALOGIC2 |
9e60a31f | 255 | (DRVS) {&ikalogic_scanalogic2_driver_info, NULL}, |
5d8c55f9 BV |
256 | #endif |
257 | #ifdef HAVE_HW_IKALOGIC_SCANAPLUS | |
9e60a31f | 258 | (DRVS) {&ikalogic_scanaplus_driver_info, NULL}, |
5d8c55f9 BV |
259 | #endif |
260 | #ifdef HAVE_HW_KECHENG_KC_330B | |
9e60a31f | 261 | (DRVS) {&kecheng_kc_330b_driver_info, NULL}, |
5d8c55f9 | 262 | #endif |
9380ec2f | 263 | #ifdef HAVE_HW_KERN_SCALE |
607dcdea | 264 | kern_scale_drivers, |
9380ec2f | 265 | #endif |
e75ee7de HV |
266 | #ifdef HAVE_HW_KORAD_KDXXXXP |
267 | (DRVS) {&korad_kdxxxxp_driver_info, NULL}, | |
268 | #endif | |
5d8c55f9 | 269 | #ifdef HAVE_HW_LASCAR_EL_USB |
9e60a31f | 270 | (DRVS) {&lascar_el_usb_driver_info, NULL}, |
5d8c55f9 BV |
271 | #endif |
272 | #ifdef HAVE_HW_LINK_MSO19 | |
9e60a31f | 273 | (DRVS) {&link_mso19_driver_info, NULL}, |
5d8c55f9 BV |
274 | #endif |
275 | #ifdef HAVE_HW_MANSON_HCS_3XXX | |
9e60a31f | 276 | (DRVS) {&manson_hcs_3xxx_driver_info, NULL}, |
5d8c55f9 | 277 | #endif |
e1ccfb19 AJ |
278 | #ifdef HAVE_HW_MAYNUO_M97 |
279 | (DRVS) {&maynuo_m97_driver_info, NULL}, | |
280 | #endif | |
5d8c55f9 | 281 | #ifdef HAVE_HW_MIC_985XX |
9e60a31f ML |
282 | (DRVS) { |
283 | &mic_98581_driver_info, | |
284 | &mic_98583_driver_info, | |
1a863916 UH |
285 | NULL |
286 | }, | |
5d8c55f9 BV |
287 | #endif |
288 | #ifdef HAVE_HW_MOTECH_LPS_30X | |
9e60a31f | 289 | (DRVS) {&motech_lps_301_driver_info, NULL}, |
5d8c55f9 BV |
290 | #endif |
291 | #ifdef HAVE_HW_NORMA_DMM | |
9e60a31f ML |
292 | (DRVS) { |
293 | &norma_dmm_driver_info, | |
294 | &siemens_b102x_driver_info, | |
1a863916 UH |
295 | NULL |
296 | }, | |
5d8c55f9 BV |
297 | #endif |
298 | #ifdef HAVE_HW_OPENBENCH_LOGIC_SNIFFER | |
9e60a31f | 299 | (DRVS) {&ols_driver_info, NULL}, |
5d8c55f9 | 300 | #endif |
4bd80e12 | 301 | #ifdef HAVE_HW_PIPISTRELLO_OLS |
9e60a31f | 302 | (DRVS) {&p_ols_driver_info, NULL}, |
4bd80e12 | 303 | #endif |
5d8c55f9 | 304 | #ifdef HAVE_HW_RIGOL_DS |
9e60a31f | 305 | (DRVS) {&rigol_ds_driver_info, NULL}, |
5d8c55f9 BV |
306 | #endif |
307 | #ifdef HAVE_HW_SALEAE_LOGIC16 | |
9e60a31f | 308 | (DRVS) {&saleae_logic16_driver_info, NULL}, |
5d8c55f9 | 309 | #endif |
ca1a7cb5 | 310 | #ifdef HAVE_HW_SCPI_PPS |
9e60a31f | 311 | (DRVS) {&scpi_pps_driver_info, NULL}, |
ca1a7cb5 | 312 | #endif |
5d8c55f9 | 313 | #ifdef HAVE_HW_SERIAL_DMM |
bcbef5ed | 314 | serial_dmm_drivers, |
5d8c55f9 BV |
315 | #endif |
316 | #ifdef HAVE_HW_SYSCLK_LWLA | |
9e60a31f | 317 | (DRVS) {&sysclk_lwla_driver_info, NULL}, |
5d8c55f9 BV |
318 | #endif |
319 | #ifdef HAVE_HW_TELEINFO | |
9e60a31f | 320 | (DRVS) {&teleinfo_driver_info, NULL}, |
5d8c55f9 BV |
321 | #endif |
322 | #ifdef HAVE_HW_TESTO | |
9e60a31f | 323 | (DRVS) {&testo_driver_info, NULL}, |
5d8c55f9 BV |
324 | #endif |
325 | #ifdef HAVE_HW_TONDAJ_SL_814 | |
9e60a31f | 326 | (DRVS) {&tondaj_sl_814_driver_info, NULL}, |
5d8c55f9 BV |
327 | #endif |
328 | #ifdef HAVE_HW_UNI_T_DMM | |
f0540611 | 329 | uni_t_dmm_drivers, |
5d8c55f9 BV |
330 | #endif |
331 | #ifdef HAVE_HW_UNI_T_UT32X | |
9e60a31f | 332 | (DRVS) {&uni_t_ut32x_driver_info, NULL}, |
5d8c55f9 BV |
333 | #endif |
334 | #ifdef HAVE_HW_VICTOR_DMM | |
9e60a31f | 335 | (DRVS) {&victor_dmm_driver_info, NULL}, |
5d8c55f9 | 336 | #endif |
10763937 | 337 | #ifdef HAVE_HW_YOKOGAWA_DLM |
9e60a31f | 338 | (DRVS) {&yokogawa_dlm_driver_info, NULL}, |
10763937 | 339 | #endif |
5d8c55f9 | 340 | #ifdef HAVE_HW_ZEROPLUS_LOGIC_CUBE |
9e60a31f | 341 | (DRVS) {&zeroplus_logic_cube_driver_info, NULL}, |
5d8c55f9 BV |
342 | #endif |
343 | NULL, | |
344 | }; | |
345 | /** @endcond */ |