From ec6b220aa7a334ccbd0fcb41d35c66560fc78a11 Mon Sep 17 00:00:00 2001 From: tzafrir Date: Sat, 8 Jul 2006 00:43:31 +0000 Subject: xpp Release 1.1.0 : * FPGA firmware now loaded from PC (for newer models) * Driver for the FXO module (xpd_fxo.ko) * Moved most userspace files to the subdirectory utils (see also next commit) * Explicit license for firmware files * Optionally avoid auto-registration * Registers initializations code is done by a userspace script. * Remove obsolete .inc initialization files (we use user-space init) * Added an install target to the utils dir. * Updated README.Astribank accordingly. * Using RBS signalling, as caller ID did not work well otherwise. * Better handling of USB protocol errors. * Fixed some procfs-related races. * per-card-module ioctls. * fxotune support. * opermode support (set through /etc/default/zaptel for now) * Userspace initialization script can also read registers. * Power calibration works (and implemented in perl) * some fine-tuning to the regster initialization parameters. * Leds turn on before registration and turn off after it. git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.2@1212 5390a7c7-147a-4af0-8ec9-7488f05a26cb --- xpp/zap_debug.h | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 114 insertions(+), 5 deletions(-) (limited to 'xpp/zap_debug.h') diff --git a/xpp/zap_debug.h b/xpp/zap_debug.h index 3f4651a..6d8ac36 100644 --- a/xpp/zap_debug.h +++ b/xpp/zap_debug.h @@ -1,16 +1,125 @@ #ifndef ZAP_DEBUG_H #define ZAP_DEBUG_H +/* + * Written by Oron Peled + * 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. + * + */ +/* Debugging Macros */ #define DBG(fmt, ...) \ - ((print_dbg) && printk(KERN_DEBUG "DBG-%s: %s: " fmt, \ - THIS_MODULE->name, __FUNCTION__, ## __VA_ARGS__)) + ((void)((print_dbg) && printk(KERN_DEBUG "DBG-%s: %s: " fmt, \ + THIS_MODULE->name, __FUNCTION__, ## __VA_ARGS__))) #define INFO(fmt, ...) printk(KERN_INFO "INFO-%s: " fmt, THIS_MODULE->name, ## __VA_ARGS__) #define NOTICE(fmt, ...) printk(KERN_NOTICE "NOTICE-%s: " fmt, THIS_MODULE->name, ## __VA_ARGS__) +#define WARN(fmt, ...) printk(KERN_WARNING "WARN-%s: %s: " fmt, THIS_MODULE->name, __FUNCTION__, ## __VA_ARGS__) #define ERR(fmt, ...) printk(KERN_ERR "ERR-%s: " fmt, THIS_MODULE->name, ## __VA_ARGS__) - void dump_poll(int print_dbg, const char *msg, int poll); -char *event2str(int event); -void dump_sigtype(int print_dbg, const char *msg, int sigtype); + +static inline char *rxsig2str(zt_rxsig_t sig) +{ + switch(sig) { + case ZT_RXSIG_ONHOOK: return "ONHOOK"; + case ZT_RXSIG_OFFHOOK: return "OFFHOOK"; + case ZT_RXSIG_START: return "START"; + case ZT_RXSIG_RING: return "RING"; + case ZT_RXSIG_INITIAL: return "INITIAL"; + } + return "Unknown rxsig"; +} + +static inline char *txsig2str(zt_txsig_t sig) +{ + switch(sig) { + case ZT_TXSIG_ONHOOK: return "TXSIG_ONHOOK"; + case ZT_TXSIG_OFFHOOK: return "TXSIG_OFFHOOK"; + case ZT_TXSIG_START: return "TXSIG_START"; + case ZT_TXSIG_KEWL: return "TXSIG_KEWL"; /* Drop battery if possible */ + } + return "Unknown txsig"; +} + +static inline char *event2str(int event) +{ + switch(event) { + case ZT_EVENT_NONE: return "NONE"; + case ZT_EVENT_ONHOOK: return "ONHOOK"; + case ZT_EVENT_RINGOFFHOOK: return "RINGOFFHOOK"; + case ZT_EVENT_WINKFLASH: return "WINKFLASH"; + case ZT_EVENT_ALARM: return "ALARM"; + case ZT_EVENT_NOALARM: return "NOALARM"; + case ZT_EVENT_ABORT: return "ABORT"; + case ZT_EVENT_OVERRUN: return "OVERRUN"; + case ZT_EVENT_BADFCS: return "BADFCS"; + case ZT_EVENT_DIALCOMPLETE: return "DIALCOMPLETE"; + case ZT_EVENT_RINGERON: return "RINGERON"; + case ZT_EVENT_RINGEROFF: return "RINGEROFF"; + case ZT_EVENT_HOOKCOMPLETE: return "HOOKCOMPLETE"; + case ZT_EVENT_BITSCHANGED: return "BITSCHANGED"; + case ZT_EVENT_PULSE_START: return "PULSE_START"; + case ZT_EVENT_TIMER_EXPIRED: return "TIMER_EXPIRED"; + case ZT_EVENT_TIMER_PING: return "TIMER_PING"; + case ZT_EVENT_POLARITY: return "POLARITY"; + } + return "Unknown event"; +} + +static inline char *hookstate2str(int hookstate) +{ + switch(hookstate) { + case ZT_ONHOOK: return "ZT_ONHOOK"; + case ZT_START: return "ZT_START"; + case ZT_OFFHOOK: return "ZT_OFFHOOK"; + case ZT_WINK: return "ZT_WINK"; + case ZT_FLASH: return "ZT_FLASH"; + case ZT_RING: return "ZT_RING"; + case ZT_RINGOFF: return "ZT_RINGOFF"; + } + return "Unknown hookstate"; +} + +/* From zaptel.c */ +static inline char *sig2str(int sig) +{ + switch (sig) { + case ZT_SIG_FXSLS: return "FXSLS"; + case ZT_SIG_FXSKS: return "FXSKS"; + case ZT_SIG_FXSGS: return "FXSGS"; + case ZT_SIG_FXOLS: return "FXOLS"; + case ZT_SIG_FXOKS: return "FXOKS"; + case ZT_SIG_FXOGS: return "FXOGS"; + case ZT_SIG_EM: return "E&M"; + case ZT_SIG_EM_E1: return "E&M-E1"; + case ZT_SIG_CLEAR: return "Clear"; + case ZT_SIG_HDLCRAW: return "HDLCRAW"; + case ZT_SIG_HDLCFCS: return "HDLCFCS"; + case ZT_SIG_HDLCNET: return "HDLCNET"; + case ZT_SIG_SLAVE: return "Slave"; + case ZT_SIG_CAS: return "CAS"; + case ZT_SIG_DACS: return "DACS"; + case ZT_SIG_DACS_RBS: return "DACS+RBS"; + case ZT_SIG_SF: return "SF (ToneOnly)"; + case ZT_SIG_NONE: + break; + } + return "Unconfigured"; +} #endif /* ZAP_DEBUG_H */ -- cgit v1.2.3