]> sigrok.org Git - libsigrok.git/commitdiff
Re-enable link-mso19 and nexus-osciprime drivers.
authorUwe Hermann <redacted>
Wed, 8 May 2013 14:40:45 +0000 (16:40 +0200)
committerUwe Hermann <redacted>
Wed, 8 May 2013 14:40:45 +0000 (16:40 +0200)
README
README.devices
configure.ac
hardware/Makefile.am
hwdriver.c

diff --git a/README b/README
index 831b3106d6295f32b1c511abcad48eb3e7e441ca..0e74f7b001b13bc341507a7e6aebe5ce4bac5760 100644 (file)
--- a/README
+++ b/README
@@ -38,6 +38,7 @@ Requirements
  - libzip >= 0.8
  - libusb-1.0 >= 1.0.9 (optional, used by most drivers)
  - libftdi >= 0.16 (optional, used by some drivers)
+ - libudev >= 151 (optional, used by some drivers)
  - libasound / alsa-lib >= 1.0 (optional, only used by the alsa driver)
  - check >= 0.9.4 (optional, only needed to run unit tests)
 
index 290357f5da227cb16223ce05768246995e02a93b..fefbfc470ae7c8e67a663cd53324ffa11f2a846f 100644 (file)
@@ -42,6 +42,9 @@ The following drivers/devices require a firmware upload upon connection:
    These can be extracted from the vendor's Windows drivers using a tool
    from our 'sigrok-util' repository/project.
 
+ - nexus-osciprime: The Nexus Computing OsciPrime PC oscilloscope needs
+   firmware files. These are available from the vendor website.
+
 The following drivers/devices do not need any firmware upload:
 
  - agilent-dmm
@@ -52,6 +55,7 @@ The following drivers/devices do not need any firmware upload:
  - demo
  - fluke-dmm
  - lascar-el-usb
+ - link-mso19
  - mic-985xx
  - openbench-logic-sniffer
  - rigol-ds1xx2
@@ -82,7 +86,9 @@ The following drivers/devices require a serial port specification:
  - brymen-dmm
  - colead-slm
  - fluke-dmm
+ - link-mso19
  - mic-985xx
+ - nexus-osciprime
  - openbench-logic-sniffer
  - serial-dmm
  - tondaj-sl-814
@@ -260,6 +266,16 @@ We might write additional drivers to make a similar functionality available
 on other OSes at some point.
 
 
+Link Instruments MSO-19
+-----------------------
+
+The driver for the Link Instruments MSO-19 mixed-signal oscilloscope (MSO)
+is currently using libudev (which is a library for the Linux-specific udev
+system). Thus, this driver can currently only compile and work on Linux.
+
+We plan to fix this though, so that it'll work on all other OSes, too.
+
+
 ChronoVu LA8 USB VID/PIDs
 -------------------------
 
index 3e292911efe702baf68a259b3a97c402b4d6a953..e475f6fd23b4ecc8be4c79e2dc6dc7da0f025bee 100644 (file)
@@ -139,11 +139,21 @@ AC_ARG_ENABLE(lascar-el-usb, AC_HELP_STRING([--enable-lascar-el-usb],
        [HW_LASCAR_EL_USB="$enableval"],
        [HW_LASCAR_EL_USB=$HW_ENABLED_DEFAULT])
 
+AC_ARG_ENABLE(link-mso19, AC_HELP_STRING([--enable-link-mso19],
+       [enable Link Instruments MSO-19 support [default=yes]]),
+       [LA_LINK_MSO19="$enableval"],
+       [LA_LINK_MSO19=$HW_ENABLED_DEFAULT])
+
 AC_ARG_ENABLE(mic-985xx, AC_HELP_STRING([--enable-mic-985xx],
        [enable MIC 985xx support [default=yes]]),
        [HW_MIC_985XX="$enableval"],
        [HW_MIC_985XX=$HW_ENABLED_DEFAULT])
 
+AC_ARG_ENABLE(nexus-osciprime, AC_HELP_STRING([--enable-nexus-osciprime],
+       [enable Nexus Osciprime support [default=yes]]),
+       [HW_NEXUS_OSCIPRIME="$enableval"],
+       [HW_NEXUS_OSCIPRIME=$HW_ENABLED_DEFAULT])
+
 AC_ARG_ENABLE(ols, AC_HELP_STRING([--enable-ols],
        [enable OpenBench Logic Sniffer (OLS) support [default=yes]]),
        [LA_OLS="$enableval"],
@@ -236,6 +246,12 @@ PKG_CHECK_MODULES([libftdi], [libftdi >= 0.16],
        SR_PKGLIBS="$SR_PKGLIBS libftdi"],
        [LA_ASIX_SIGMA="no"; LA_CHRONOVU_LA8="no"])
 
+# libudev is only needed for some hardware drivers. Disable them if not found.
+PKG_CHECK_MODULES([libudev], [libudev >= 151],
+       [CFLAGS="$CFLAGS $libudev_CFLAGS"; LIBS="$LIBS $libudev_LIBS";
+       SR_PKGLIBS="$SR_PKGLIBS libudev"],
+       [LA_LINK_MSO19="no"])
+
 # ALSA is only needed for some hardware drivers. Disable them if not found.
 PKG_CHECK_MODULES([alsa], [alsa >= 1.0],
        [CFLAGS="$CFLAGS $alsa_CFLAGS"; LIBS="$LIBS $alsa_LIBS";
@@ -322,11 +338,21 @@ if test "x$HW_LASCAR_EL_USB" = "xyes"; then
        AC_DEFINE(HAVE_HW_LASCAR_EL_USB, 1, [Lascar EL-USB support])
 fi
 
+AM_CONDITIONAL(LA_LINK_MSO19, test x$LA_LINK_MSO19 = xyes)
+if test "x$LA_LINK_MSO19" = "xyes"; then
+       AC_DEFINE(HAVE_LA_LINK_MSO19, 1, [Link Instruments MSO-19 support])
+fi
+
 AM_CONDITIONAL(HW_MIC_985XX, test x$HW_MIC_985XX = xyes)
 if test "x$HW_MIC_985XX" = "xyes"; then
        AC_DEFINE(HAVE_HW_MIC_985XX, 1, [MIC 985xx support])
 fi
 
+AM_CONDITIONAL(HW_NEXUS_OSCIPRIME, test x$HW_NEXUS_OSCIPRIME = xyes)
+if test "x$HW_NEXUS_OSCIPRIME" = "xyes"; then
+       AC_DEFINE(HAVE_HW_NEXUS_OSCIPRIME, 1, [Nexus Osciprime support])
+fi
+
 AM_CONDITIONAL(LA_OLS, test x$LA_OLS = xyes)
 if test "x$LA_OLS" = "xyes"; then
        AC_DEFINE(HAVE_LA_OLS, 1, [OpenBench Logic Sniffer (OLS) support])
@@ -405,6 +431,7 @@ AC_CONFIG_FILES([Makefile version.h hardware/Makefile
                 hardware/common/Makefile
                 hardware/lascar-el-usb/Makefile
                 hardware/mic-985xx/Makefile
+                hardware/nexus-osciprime/Makefile
                 hardware/rigol-ds1xx2/Makefile
                 hardware/tondaj-sl-814/Makefile
                 hardware/victor-dmm/Makefile
@@ -413,6 +440,7 @@ AC_CONFIG_FILES([Makefile version.h hardware/Makefile
                 hardware/fluke-dmm/Makefile
                 hardware/fx2lafw/Makefile
                 hardware/hantek-dso/Makefile
+                hardware/link-mso19/Makefile
                 hardware/openbench-logic-sniffer/Makefile
                 hardware/serial-dmm/Makefile
                 hardware/uni-t-dmm/Makefile
@@ -440,7 +468,7 @@ echo "Detected libraries:"
 echo
 
 # Note: This only works for libs with pkg-config integration.
-for lib in "glib-2.0 >= 2.32.0" "libzip >= 0.8" "libusb-1.0 >= 1.0.9" "libftdi >= 0.16" "alsa >= 1.0" "check >= 0.9.4"; do
+for lib in "glib-2.0 >= 2.32.0" "libzip >= 0.8" "libusb-1.0 >= 1.0.9" "libftdi >= 0.16" "libudev >= 151" "alsa >= 1.0" "check >= 0.9.4"; do
        if `$PKG_CONFIG --exists $lib`; then
                ver=`$PKG_CONFIG --modversion $lib`
                answer="yes ($ver)"
@@ -462,7 +490,9 @@ echo "  - fluke-dmm....................... $HW_FLUKE_DMM"
 echo "  - fx2lafw......................... $LA_FX2LAFW"
 echo "  - hantek-dso...................... $HW_HANTEK_DSO"
 echo "  - lascar-el-usb................... $HW_LASCAR_EL_USB"
+echo "  - link-mso19...................... $LA_LINK_MSO19"
 echo "  - mic-985xx....................... $HW_MIC_985XX"
+echo "  - nexus-osciprime................. $HW_NEXUS_OSCIPRIME"
 echo "  - openbench-logic-sniffer......... $LA_OLS"
 echo "  - rigol-ds1xx2.................... $HW_RIGOL_DS1XX2"
 echo "  - serial-dmm...................... $HW_SERIAL_DMM"
index bdf4a602de4fba81fee14841f9ed7817dee6000e..3c093b76cc0b278b2a8fa7c8ad7e9a5b67f7da09 100644 (file)
@@ -31,7 +31,9 @@ SUBDIRS = \
        fx2lafw \
        hantek-dso \
        lascar-el-usb \
+       link-mso19 \
        mic-985xx \
+       nexus-osciprime \
        openbench-logic-sniffer \
        rigol-ds1xx2 \
        serial-dmm \
@@ -91,10 +93,18 @@ if HW_LASCAR_EL_USB
 libsigrokhardware_la_LIBADD += lascar-el-usb/libsigrok_hw_lascar_el_usb.la
 endif
 
+if LA_LINK_MSO19
+libsigrokhardware_la_LIBADD += link-mso19/libsigrokhwlinkmso19.la
+endif
+
 if HW_MIC_985XX
 libsigrokhardware_la_LIBADD += mic-985xx/libsigrok_hw_mic_985xx.la
 endif
 
+if HW_NEXUS_OSCIPRIME
+libsigrokhardware_la_LIBADD += nexus-osciprime/libsigrok_hw_nexus_osciprime.la
+endif
+
 if LA_OLS
 libsigrokhardware_la_LIBADD += openbench-logic-sniffer/libsigrokhwols.la
 endif
index fd8dc49d174515f0470dac69703ddd841b9f6110..d4ae56057204c23b8e86957dd14cddfe6c2eb2f3 100644 (file)
@@ -103,6 +103,9 @@ extern SR_PRIV struct sr_dev_driver lascar_el_usb_driver_info;
 extern SR_PRIV struct sr_dev_driver mic_98581_driver_info;
 extern SR_PRIV struct sr_dev_driver mic_98583_driver_info;
 #endif
+#ifdef HAVE_HW_NEXUS_OSCIPRIME
+extern SR_PRIV struct sr_dev_driver nexus_osciprime_driver_info;
+#endif
 #ifdef HAVE_LA_OLS
 extern SR_PRIV struct sr_dev_driver ols_driver_info;
 #endif
@@ -124,6 +127,9 @@ extern SR_PRIV struct sr_dev_driver asix_sigma_driver_info;
 #ifdef HAVE_LA_CHRONOVU_LA8
 extern SR_PRIV struct sr_dev_driver chronovu_la8_driver_info;
 #endif
+#ifdef HAVE_LA_LINK_MSO19
+extern SR_PRIV struct sr_dev_driver link_mso19_driver_info;
+#endif
 #ifdef HAVE_HW_ALSA
 extern SR_PRIV struct sr_dev_driver alsa_driver_info;
 #endif
@@ -186,6 +192,9 @@ static struct sr_dev_driver *drivers_list[] = {
        &mic_98581_driver_info,
        &mic_98583_driver_info,
 #endif
+#ifdef HAVE_HW_NEXUS_OSCIPRIME
+       &nexus_osciprime_driver_info,
+#endif
 #ifdef HAVE_LA_OLS
        &ols_driver_info,
 #endif
@@ -207,6 +216,9 @@ static struct sr_dev_driver *drivers_list[] = {
 #ifdef HAVE_LA_CHRONOVU_LA8
        &chronovu_la8_driver_info,
 #endif
+#ifdef HAVE_LA_LINK_MSO19
+       &link_mso19_driver_info,
+#endif
 #ifdef HAVE_HW_ALSA
        &alsa_driver_info,
 #endif