summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Taylor <mctaylor@mctaylor.com>2004-12-12 04:52:15 +0000
committerMichael Taylor <mctaylor@mctaylor.com>2004-12-12 04:52:15 +0000
commitca91d9948f4fd4d644b6424945a65c18ca89dae4 (patch)
tree004346eaf9e34a737a6de542d80aea4e6c139ac0
parent0e42548ec930597bc842d7099baebe122f9255aa (diff)
/usr/include/linux/soundmodem.h not included with 2.6.x kernel, so include soundmodem.h here
-rw-r--r--hdlcutil/hdrvcomm.h2
-rw-r--r--hdlcutil/soundmodem.h90
2 files changed, 91 insertions, 1 deletions
diff --git a/hdlcutil/hdrvcomm.h b/hdlcutil/hdrvcomm.h
index 4778d6a..ce61a4f 100644
--- a/hdlcutil/hdrvcomm.h
+++ b/hdlcutil/hdrvcomm.h
@@ -42,7 +42,7 @@ extern "C" {
#ifdef HDRVC_KERNEL
#include <linux/hdlcdrv.h>
-#include <linux/soundmodem.h>
+#include "soundmodem.h"
#include <linux/baycom.h>
#endif /* HDRVC_KERNEL */
diff --git a/hdlcutil/soundmodem.h b/hdlcutil/soundmodem.h
new file mode 100644
index 0000000..10d0799
--- /dev/null
+++ b/hdlcutil/soundmodem.h
@@ -0,0 +1,90 @@
+/*
+ * The Linux soundcard driver for 1200 baud and 9600 baud packet radio
+ * (C) 1996-1998 by Thomas Sailer, HB9JNX/AE4WA
+ */
+
+#ifndef _SOUNDMODEM_H
+#define _SOUNDMODEM_H
+
+/* -------------------------------------------------------------------- */
+/*
+ * structs for the IOCTL commands
+ */
+
+struct sm_debug_data {
+ unsigned int int_rate;
+ unsigned int mod_cycles;
+ unsigned int demod_cycles;
+ unsigned int dma_residue;
+};
+
+struct sm_diag_data {
+ unsigned int mode;
+ unsigned int flags;
+ unsigned int samplesperbit;
+ unsigned int datalen;
+ short *data;
+};
+
+struct sm_mixer_data {
+ unsigned int mixer_type;
+ unsigned int sample_rate;
+ unsigned int bit_rate;
+ unsigned int reg;
+ unsigned int data;
+};
+
+struct sm_config {
+ int hardware;
+ int mode;
+};
+
+struct sm_ioctl {
+ int cmd;
+ union {
+ struct sm_config cfg;
+ struct sm_diag_data diag;
+ struct sm_mixer_data mix;
+ struct sm_debug_data dbg;
+ } data;
+};
+
+/* -------------------------------------------------------------------- */
+
+/*
+ * diagnose modes
+ */
+#define SM_DIAGMODE_OFF 0
+#define SM_DIAGMODE_INPUT 1
+#define SM_DIAGMODE_DEMOD 2
+#define SM_DIAGMODE_CONSTELLATION 3
+
+/*
+ * diagnose flags
+ */
+#define SM_DIAGFLAG_DCDGATE (1<<0)
+#define SM_DIAGFLAG_VALID (1<<1)
+
+/*
+ * mixer types
+ */
+#define SM_MIXER_INVALID 0
+#define SM_MIXER_AD1848 0x10
+#define SM_MIXER_CRYSTAL 0x11
+#define SM_MIXER_CT1335 0x20
+#define SM_MIXER_CT1345 0x21
+#define SM_MIXER_CT1745 0x22
+
+/*
+ * ioctl values
+ */
+#define SMCTL_DIAGNOSE 0x82
+#define SMCTL_GETMIXER 0x83
+#define SMCTL_SETMIXER 0x84
+#define SMCTL_GETDEBUG 0x85
+
+/* -------------------------------------------------------------------- */
+
+#endif /* _SOUNDMODEM_H */
+
+/* --------------------------------------------------------------------- */