/************************************************************************

    AudioScience HPI driver
    Copyright (C) 1997-2011  AudioScience Inc. <support@audioscience.com>

    This program is free software; you can redistribute it and/or modify
    it under the terms of version 2 of the GNU General Public License as
    published by the Free Software Foundation;

    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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

Debug macro translation.

************************************************************************/

#include "hpi_internal.h"
#include "hpidebug.h"

/* Debug level; 0 quiet; 1 informative, 2 debug, 3 verbose debug.  */
int hpi_debug_level = HPI_DEBUG_LEVEL_DEFAULT;

void hpi_debug_init(void)
{
	printk(KERN_INFO "debug start\n");
}

int hpi_debug_level_set(int level)
{
	int old_level;

	old_level = hpi_debug_level;
	hpi_debug_level = level;
	return old_level;
}

int hpi_debug_level_get(void)
{
	return hpi_debug_level;
}

void hpi_debug_message(struct hpi_message *phm, char *sz_fileline)
{
	if (phm) {
		printk(KERN_DEBUG "HPI_MSG%d,%d,%d,%d,%d\n", phm->version,
			phm->adapter_index, phm->obj_index, phm->function,
			phm->u.c.attribute);
	}

}

void hpi_debug_data(u16 *pdata, u32 len)
{
	u32 i;
	int j;
	int k;
	int lines;
	int cols = 8;

	lines = (len + cols - 1) / cols;
	if (lines > 8)
		lines = 8;

	for (i = 0, j = 0; j < lines; j++) {
		printk(KERN_DEBUG "%p:", (pdata + i));

		for (k = 0; k < cols && i < len; i++, k++)
			printk("%s%04x", k == 0 ? "" : " ", pdata[i]);

		printk("\n");
	}
}
r_error_r.c?id=0becc0ae5b42828785b589f686725ff5bc3b9b25'>commit</a><a href='/cgit.cgi/linux/net-next.git/diff/tools/lib/str_error_r.c?id=0becc0ae5b42828785b589f686725ff5bc3b9b25'>diff</a></td><td class='form'><form class='right' method='get' action='/cgit.cgi/linux/net-next.git/log/tools/lib/str_error_r.c'>
<input type='hidden' name='id' value='0becc0ae5b42828785b589f686725ff5bc3b9b25'/><input type='hidden' name='showmsg' value='1'/><select name='qt'>
<option value='grep'>log msg</option>
<option value='author'>author</option>
<option value='committer'>committer</option>
<option value='range'>range</option>
</select>
<input class='txt' type='search' size='10' name='q' value=''/>
<input type='submit' value='search'/>
</form>
</td></tr></table>
<div class='path'>path: <a href='/cgit.cgi/linux/net-next.git/log/?id=0becc0ae5b42828785b589f686725ff5bc3b9b25&amp;showmsg=1'>root</a>/<a href='/cgit.cgi/linux/net-next.git/log/tools?id=0becc0ae5b42828785b589f686725ff5bc3b9b25&amp;showmsg=1'>tools</a>/<a href='/cgit.cgi/linux/net-next.git/log/tools/lib?id=0becc0ae5b42828785b589f686725ff5bc3b9b25&amp;showmsg=1'>lib</a>/<a href='/cgit.cgi/linux/net-next.git/log/tools/lib/str_error_r.c?id=0becc0ae5b42828785b589f686725ff5bc3b9b25&amp;showmsg=1'>str_error_r.c</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th class='left'>Age</th><th class='left'>Commit message (<a href='/cgit.cgi/linux/net-next.git/log/tools/lib/str_error_r.c?id=0becc0ae5b42828785b589f686725ff5bc3b9b25'>Collapse</a>)</th><th class='left'>Author</th><th class='left'>Files</th><th class='left'>Lines</th></tr>