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