summaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
authorAdrian Knoth <adi@drcomp.erfurt.thur.de>2014-02-14 14:32:58 +0100
committerAdrian Knoth <adi@drcomp.erfurt.thur.de>2014-02-14 14:32:58 +0100
commit3ed0a776188e5a9a80fe713965ab4092c1b40f0c (patch)
treeb93148006c798a050bddd333341a4fa61cea3b3a /linux
parent820c5bfde4920395a6c9412934e9d36b02abddbb (diff)
downloadjack2-3ed0a776188e5a9a80fe713965ab4092c1b40f0c.tar.gz
Revert "Added the beginnings of the IIO driver."
This reverts commit 3087895772cf86610b127af963722259f8c6ffa0.
Diffstat (limited to 'linux')
-rw-r--r--linux/iio/JackIIODriver.C172
-rw-r--r--linux/iio/JackIIODriver.H65
-rw-r--r--linux/wscript45
3 files changed, 5 insertions, 277 deletions
diff --git a/linux/iio/JackIIODriver.C b/linux/iio/JackIIODriver.C
deleted file mode 100644
index 1b598c9c..00000000
--- a/linux/iio/JackIIODriver.C
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
-Copyright (C) 2013 Matt Flax <flatmax@>
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
-
-#include "JackIIODriver.H"
-#include "driver_interface.h"
-
-#define IIO_DEFAULT_SAMPLERATE 1e6; ///< The default sample rate for the default chip
-#define IIO_DEFAULT_PERIODSIZE 1024; ///< The defaul period size
-
-namespace Jack {
-
-int JackIIODriver::Open(jack_nframes_t buffer_size,
- jack_nframes_t samplerate,
- bool capturing,
- bool playing,
- int inchannels,
- int outchannels,
- bool monitor,
- const char* capture_driver_name,
- const char* playback_driver_name,
- jack_nframes_t capture_latency,
- jack_nframes_t playback_latency)
-{
- return JackAudioDriver::Open(buffer_size, samplerate, capturing, playing, inchannels, outchannels,
- monitor, capture_driver_name, playback_driver_name, capture_latency, playback_latency);
-}
-
-} // end namespace Jack
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
- SERVER_EXPORT const jack_driver_desc_t *
- driver_get_descriptor () {
- jack_driver_desc_t * desc;
- jack_driver_desc_filler_t filler;
- jack_driver_param_value_t value;
-
- desc = jack_driver_descriptor_construct("iio", JackDriverMaster, "Linux Industrial IO backend", &filler);
-
- strcpy(value.str, "AD7476");
- jack_driver_descriptor_add_parameter(
- desc,
- &filler,
- "device",
- 'd',
- JackDriverParamString,
- &value,
- NULL,
- "The IIO chip to use.",
- "The IIO chip to use. Specifies which chip name to scan for on all devices present in /sys/bus/iio.");
-
- value.ui = IIO_DEFAULT_PERIODSIZE;
- jack_driver_descriptor_add_parameter(desc, &filler, "period", 'p', JackDriverParamUInt, &value, NULL, "Frames per period", NULL);
-
- value.ui = 2;
- jack_driver_descriptor_add_parameter(desc, &filler, "nperiods", 'n', JackDriverParamUInt, &value, NULL, "Number of periods of playback latency", NULL);
-
- value.ui = (IIO_DEFAULT_SAMPLERATE)U;
- jack_driver_descriptor_add_parameter(desc, &filler, "rate", 'r', JackDriverParamUInt, &value, NULL, "Sample rate", NULL);
-
- value.i = 0;
- jack_driver_descriptor_add_parameter(desc, &filler, "capture", 'C', JackDriverParamBool, &value, NULL, "Provide capture ports.", NULL);
- jack_driver_descriptor_add_parameter(desc, &filler, "playback", 'P', JackDriverParamBool, &value, NULL, "Provide playback ports.", NULL);
-
- value.i = 0;
- jack_driver_descriptor_add_parameter(desc, &filler, "duplex", 'D', JackDriverParamBool, &value, NULL, "Provide both capture and playback ports.", NULL);
-
- value.ui = 0;
- jack_driver_descriptor_add_parameter(desc, &filler, "input-latency", 'I', JackDriverParamUInt, &value, NULL, "Extra input latency (frames)", NULL);
- jack_driver_descriptor_add_parameter(desc, &filler, "output-latency", 'O', JackDriverParamUInt, &value, NULL, "Extra output latency (frames)", NULL);
-
- value.ui = 0;
- jack_driver_descriptor_add_parameter(desc, &filler, "inchannels", 'i', JackDriverParamUInt, &value, NULL, "Number of input channels to provide (note: currently ignored)", NULL);
- jack_driver_descriptor_add_parameter(desc, &filler, "outchannels", 'o', JackDriverParamUInt, &value, NULL, "Number of output channels to provide (note: currently ignored)", NULL);
-
- value.ui = 3;
- jack_driver_descriptor_add_parameter(desc, &filler, "verbose", 'v', JackDriverParamUInt, &value, NULL, "gtkIOStream verbose level", NULL);
-
-// value.i = 0;
-// jack_driver_descriptor_add_parameter(desc, &filler, "snoop", 'X', JackDriverParamBool, &value, NULL, "Snoop firewire traffic", NULL);
-
- return desc;
- }
-
- SERVER_EXPORT Jack::JackDriverClientInterface* driver_initialize(Jack::JackLockedEngine* engine, Jack::JackSynchro* table, const JSList* params) {
- const JSList * node;
- const jack_driver_param_t * param;
-
- char *device_name=(char*)"AD7476";
-
- for (node = params; node; node = jack_slist_next (node)) {
- param = (jack_driver_param_t *) node->data;
-
- switch (param->character) {
- case 'd':
- device_name = const_cast<char*>(param->value.str);
- break;
- case 'p':
- cmlparams.period_size = param->value.ui;
- cmlparams.period_size_set = 1;
- break;
- case 'n':
- cmlparams.buffer_size = param->value.ui;
- cmlparams.buffer_size_set = 1;
- break;
- case 'r':
- cmlparams.sample_rate = param->value.ui;
- cmlparams.sample_rate_set = 1;
- break;
- case 'i':
- cmlparams.capture_ports = param->value.ui;
- break;
- case 'o':
- cmlparams.playback_ports = param->value.ui;
- break;
- case 'I':
- cmlparams.capture_frame_latency = param->value.ui;
- break;
- case 'O':
- cmlparams.playback_frame_latency = param->value.ui;
- break;
- case 'x':
- cmlparams.slave_mode = param->value.ui;
- break;
-// case 'X':
-// cmlparams.snoop_mode = param->value.i;
-// break;
- case 'v':
- cmlparams.verbose_level = param->value.ui;
- }
- }
-
- /* duplex is the default */
- if (!cmlparams.playback_ports && !cmlparams.capture_ports) {
- cmlparams.playback_ports = 1;
- cmlparams.capture_ports = 1;
- }
-
- iio.findDevicesByChipName(chipName);
-
- // Special open for FFADO driver...
- if (ffado_driver->Open(&cmlparams) == 0) {
- return threaded_driver;
- } else {
- delete threaded_driver; // Delete the decorated driver
- return NULL;
- }
- }
-
-#ifdef __cplusplus
-}
-#endif
diff --git a/linux/iio/JackIIODriver.H b/linux/iio/JackIIODriver.H
deleted file mode 100644
index d93e5999..00000000
--- a/linux/iio/JackIIODriver.H
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
-Copyright (C) 2013 Matt Flax <flatmax@>
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-*/
-
-#ifndef JACKIIODRIVER_H
-#define JACKIIODRIVER_H
-
-#include "JackAudioDriver.h"
-#include "JackThreadedDriver.h"
-
-#include <IIO/IIO.H>
-
-namespace Jack {
-
-/** The Linux Industrial IO (IIO) subsystem driver for Jack.
-Currently this driver only supports capture.
-*/
-class JackIIODriver : public JackAudioDriver {
-
- IIO iio; ///< The actual IIO device
-
-public:
- /** Constructor
- */
- JackIIODriver(const char* name, const char* alias, JackLockedEngine* engine, JackSynchro* table) : JackAudioDriver(name, alias, engine, table) {
- }
-
- /** Destructor
- */
- virtual ~JackIIODriver() {
- }
-
- /**
- */
- virtual int Open(jack_nframes_t buffer_size,
- jack_nframes_t samplerate,
- bool capturing,
- bool playing,
- int inchannels,
- int outchannels,
- bool monitor,
- const char* capture_driver_name,
- const char* playback_driver_name,
- jack_nframes_t capture_latency,
- jack_nframes_t playback_latency);
-
-};
-
-} // end of Jack namespace
-#endif // JACKIIODRIVER_H
diff --git a/linux/wscript b/linux/wscript
index 3cd94265..a2bb6ba5 100644
--- a/linux/wscript
+++ b/linux/wscript
@@ -1,8 +1,6 @@
#! /usr/bin/env python
# encoding: utf-8
-from waflib import Context
-
def configure(conf):
conf.check_cfg(package='alsa', atleast_version='1.0.18', args='--cflags --libs', mandatory=False)
conf.env['BUILD_DRIVER_ALSA'] = conf.is_defined('HAVE_ALSA')
@@ -13,35 +11,7 @@ def configure(conf):
conf. check_cfg(package='libffado', atleast_version='1.999.17', args='--cflags --libs', mandatory=False)
conf.env['BUILD_DRIVER_FFADO'] = conf.is_defined('HAVE_LIBFFADO')
- conf.check_cfg(package='gtkIOStream', atleast_version='1.4.0', args='--cflags --libs', mandatory=False)
- conf.env['BUILD_DRIVER_IIO'] = conf.is_defined('HAVE_GTKIOSTREAM')
- conf.check_cfg(package='eigen3', atleast_version='3.2.0', args='--cflags --libs', mandatory=False)
- conf.env['BUILD_DRIVER_IIO'] += conf.is_defined('HAVE_EIGEN3')
- conf.check_cfg(package='sox', atleast_version='14.4.1', args='--cflags --libs', mandatory=False)
- conf.env['BUILD_DRIVER_IIO'] += conf.is_defined('HAVE_SOX')
- #conf.env['BUILD_DRIVER_IIO'] += conf.is_defined('HAVE_EIGEN3')
- #print conf.env
- #conffile.write("\n".join(myconf))
- #conf.define('HAVE_PPOLL', 1 )
-
- conf.find_program("mkoctfile", var="MKOCTFILE")
- if conf.env.MKOCTFILE:
- conf.env['HAVE_OCTAVE']=1
- conf.env['define_key'] += ['HAVE_OCTAVE']
- conf.env['DEFINES'] += ['HAVE_OCTAVE=1']
- #conf.env('Octave')
- conf.env['INCLUDES_OCTAVE'] = conf.cmd_and_log([conf.env.MKOCTFILE, "--print", "INCFLAGS" ],
- output=Context.STDOUT).replace('\n', '').replace('-I','').split()
- lflags = conf.cmd_and_log([conf.env.MKOCTFILE, "--print", "LFLAGS" ],
- output=Context.STDOUT)
- conf.env['LIB_OCTAVE'] = conf.cmd_and_log([conf.env.MKOCTFILE, "--print", "OCTAVE_LIBS" ],
- output=Context.STDOUT).replace('\n', '').replace('-l','').split()
- #conf.append("INCFLAGS: " + incflags)
- #conf.append("LFLAGS: " + lflags)
- #conf.append("LIBS: " + libs)
- print conf.env
- #import pdb; pdb.set_trace()
-
+ conf.define('HAVE_PPOLL', 1 )
def create_jack_driver_obj(bld, target, sources, uselib = None):
driver = bld(features = ['c', 'cxx', 'cxxshlib', 'cshlib'])
@@ -66,15 +36,15 @@ def build(bld):
jackd.defines = ['HAVE_CONFIG_H','SERVER_SIDE']
jackd.source = ['../common/Jackdmp.cpp']
jackd.use = ['serverlib']
- if bld.env['IS_LINUX'] and bld.env['BUILD_JACKDBUS']:
- jackd.source += ['../dbus/reserve.c', '../dbus/audio_reserve.c']
+ if bld.env['IS_LINUX'] and bld.env['BUILD_JACKDBUS']:
+ jackd.source += ['../dbus/reserve.c', '../dbus/audio_reserve.c']
jackd.use += ['PTHREAD', 'DL', 'RT', 'M', 'STDC++', 'DBUS-1']
else:
jackd.use += ['PTHREAD', 'DL', 'RT', 'M', 'STDC++']
jackd.target = 'jackd'
-
+
create_jack_driver_obj(bld, 'dummy', '../common/JackDummyDriver.cpp')
-
+
alsa_driver_src = [
'alsa/JackAlsaDriver.cpp',
'alsa/alsa_rawmidi.c',
@@ -104,8 +74,6 @@ def build(bld):
'firewire/JackFFADOMidiSendQueue.cpp'
]
- iio_driver_src = ['iio/JackIIODriver.C']
-
if bld.env['BUILD_DRIVER_ALSA'] == True:
create_jack_driver_obj(bld, 'alsa', alsa_driver_src, ["ALSA"])
create_jack_driver_obj(bld, 'alsarawmidi', alsarawmidi_driver_src,
@@ -117,9 +85,6 @@ def build(bld):
if bld.env['BUILD_DRIVER_FFADO'] == True:
create_jack_driver_obj(bld, 'firewire', ffado_driver_src, ["LIBFFADO"])
- if bld.env['BUILD_DRIVER_IIO'] == True:
- create_jack_driver_obj(bld, 'iio', iio_driver_src, ["GTKIOSTREAM", "EIGEN3", "OCTAVE"])
-
create_jack_driver_obj(bld, 'net', '../common/JackNetDriver.cpp')
create_jack_driver_obj(bld, 'loopback', '../common/JackLoopbackDriver.cpp')