summaryrefslogtreecommitdiff
path: root/xpp/xpp_zap.h
diff options
context:
space:
mode:
authortzafrir <tzafrir@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2006-05-03 23:06:02 +0000
committertzafrir <tzafrir@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2006-05-03 23:06:02 +0000
commit2dd60aaf18e98b0e9d3c06bd9dce5f1128fa55ad (patch)
tree1a1cd28888f191e6ce83bcbbe539124e2529c90b /xpp/xpp_zap.h
parent8c4db4e3acd9a7626e709af0494055487b589719 (diff)
xpp driver release 1.1.0 (first part of commit)
* FPGA firmware now loaded from PC (for newer models) * Driver for the FXO module * Moved most userspace files to the subdirectory utils (see also next commit) * Explicit license for firmware files * Optionally avoid auto-registration * Initializations parameters to chips given from userspace * And did I mention bugfixes? git-svn-id: http://svn.digium.com/svn/zaptel/trunk@1021 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'xpp/xpp_zap.h')
-rw-r--r--xpp/xpp_zap.h47
1 files changed, 26 insertions, 21 deletions
diff --git a/xpp/xpp_zap.h b/xpp/xpp_zap.h
index 068f648..38b3521 100644
--- a/xpp/xpp_zap.h
+++ b/xpp/xpp_zap.h
@@ -1,37 +1,44 @@
#ifndef XPP_ZAP_H
#define XPP_ZAP_H
+/*
+ * Written by Oron Peled <oron@actcom.co.il>
+ * Copyright (C) 2004-2006, Xorcom
+ *
+ * All rights reserved.
+ *
+ * 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 <linux/workqueue.h>
#include "xpd.h"
#include "xproto.h"
-xpacket_t *xpacket_new(xbus_t *xbus, int flags);
-void xpacket_free(xbus_t *xbus, xpacket_t *p);
-
-/* packet queues */
-void init_xbus_packet_queue(packet_queue_t *q, const char name[]);
-void drain_xbus_packet_queue(xbus_t *xbus, packet_queue_t *q);
-void xbus_enqueue_packet(xbus_t *xbus, packet_queue_t *q, xpacket_t *pack);
-xpacket_t *xbus_dequeue_packet(packet_queue_t *q);
-
-xbus_t *xbus_new(ulong loopback_xpds);
-void xbus_activate(xbus_t *xbus);
-void xbus_deactivate(xbus_t *xbus);
-
-void xbus_reset_counters(xbus_t *xbus);
+void xpd_disconnect(xpd_t *xpd);
int packet_send(xbus_t *xbus, xpacket_t *pack_tx);
-void phone_hook(xpd_t *xpd, int channo, bool offhook);
-void xpp_check_hookstate(xpd_t *xpd, xpp_line_t fxs_off_hook);
-xpd_t *xpd_of(xbus_t *xbus, int xpd_num);
void card_detected(void *data);
xpd_t *xpd_alloc(size_t privsize, xbus_t *xbus, int xpd_num, const xproto_table_t *proto_table, int channels, byte revision);
void xpd_remove(xpd_t *xpd);
+void update_xpd_status(xpd_t *xpd, int alarm_flag);
void fill_beep(u_char *buf, int duration);
void xpp_tick(unsigned long param);
int xpp_open(struct zt_chan *chan);
int xpp_close(struct zt_chan *chan);
int xpp_ioctl(struct zt_chan *chan, unsigned int cmd, unsigned long arg);
int xpp_maint(struct zt_span *span, int cmd);
+void sync_master_is(xpd_t *xpd);
#define CARD_DESC_MAGIC 0xca9dde5c
@@ -48,11 +55,9 @@ extern struct workqueue_struct *xpp_worker;
#ifdef CONFIG_PROC_FS
#include <linux/proc_fs.h>
-extern struct proc_dir_entry *xpp_procdir;
+extern struct proc_dir_entry *xpp_proc_toplevel;
#endif
-extern xpd_t *sync_master;
-// Number of rings our simulated phone will ring:
-#define RINGS_NUM 3
+#define SPAN_REGISTERED(xpd) ((xpd)->span.flags & ZT_FLAG_REGISTERED)
#endif /* XPP_ZAP_H */