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