staging/bcm: add sparse annotations
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / staging / bcm / Debug.c
blob2703f304756d162ed7a366f5c45d683b9b22f045
1 #include "headers.h"
3 static UINT current_debug_level=BCM_SCREAM;
5 int bcm_print_buffer( UINT debug_level, const char *function_name,
6 char *file_name, int line_number, unsigned char *buffer, int bufferlen, enum _BASE_TYPE base)
8 static const char * const buff_dump_base[] = {
9 "DEC", "HEX", "OCT", "BIN"
11 if(debug_level>=current_debug_level)
13 int i=0;
14 printk("\n%s:%s:%d:Buffer dump of size 0x%x in the %s:\n", file_name, function_name, line_number, bufferlen, buff_dump_base[1]);
15 for(;i<bufferlen;i++)
17 if(i && !(i%16) )
18 printk("\n");
19 switch(base)
21 case BCM_BASE_TYPE_DEC:
22 printk("%03d ", buffer[i]);
23 break;
24 case BCM_BASE_TYPE_OCT:
25 printk("%0x03o ", buffer[i]);
26 break;
27 case BCM_BASE_TYPE_BIN:
28 printk("%02x ", buffer[i]);
29 break;
30 case BCM_BASE_TYPE_HEX:
31 default:
32 printk("%02X ", buffer[i]);
33 break;
36 printk("\n");
38 return 0;