[TG3]: Add tagged status support.
[linux-2.6/verdex.git] / drivers / net / wan / lmc / lmc_debug.c
blob9dccd9546a17b829b0816866d627d9d25c7bd0c5
2 #include <linux/types.h>
3 #include <linux/netdevice.h>
4 #include <linux/interrupt.h>
6 #include "lmc_debug.h"
8 /*
9 * Prints out len, max to 80 octets using printk, 20 per line
11 void lmcConsoleLog(char *type, unsigned char *ucData, int iLen)
13 #ifdef DEBUG
14 #ifdef LMC_PACKET_LOG
15 int iNewLine = 1;
16 char str[80], *pstr;
18 sprintf(str, KERN_DEBUG "lmc: %s: ", type);
19 pstr = str+strlen(str);
21 if(iLen > 240){
22 printk(KERN_DEBUG "lmc: Printing 240 chars... out of: %d\n", iLen);
23 iLen = 240;
25 else{
26 printk(KERN_DEBUG "lmc: Printing %d chars\n", iLen);
29 while(iLen > 0)
31 sprintf(pstr, "%02x ", *ucData);
32 pstr+=3;
33 ucData++;
34 if( !(iNewLine % 20))
36 sprintf(pstr, "\n");
37 printk(str);
38 sprintf(str, KERN_DEBUG "lmc: %s: ", type);
39 pstr=str+strlen(str);
41 iNewLine++;
42 iLen--;
44 sprintf(pstr, "\n");
45 printk(str);
46 #endif
47 #endif
50 #ifdef DEBUG
51 u_int32_t lmcEventLogIndex = 0;
52 u_int32_t lmcEventLogBuf[LMC_EVENTLOGSIZE * LMC_EVENTLOGARGS];
53 #endif
55 void lmcEventLog (u_int32_t EventNum, u_int32_t arg2, u_int32_t arg3)
57 #ifdef DEBUG
58 lmcEventLogBuf[lmcEventLogIndex++] = EventNum;
59 lmcEventLogBuf[lmcEventLogIndex++] = arg2;
60 lmcEventLogBuf[lmcEventLogIndex++] = arg3;
61 lmcEventLogBuf[lmcEventLogIndex++] = jiffies;
63 lmcEventLogIndex &= (LMC_EVENTLOGSIZE * LMC_EVENTLOGARGS) - 1;
64 #endif
67 void lmc_trace(struct net_device *dev, char *msg){
68 #ifdef LMC_TRACE
69 unsigned long j = jiffies + 3; /* Wait for 50 ms */
71 if(in_interrupt()){
72 printk("%s: * %s\n", dev->name, msg);
73 // while(time_before(jiffies, j+10))
74 // ;
76 else {
77 printk("%s: %s\n", dev->name, msg);
78 while(time_before(jiffies, j))
79 schedule();
81 #endif
85 /* --------------------------- end if_lmc_linux.c ------------------------ */