162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci/************************************************************************ 362306a36Sopenharmony_ci 462306a36Sopenharmony_ci AudioScience HPI driver 562306a36Sopenharmony_ci Copyright (C) 1997-2011 AudioScience Inc. <support@audioscience.com> 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci 862306a36Sopenharmony_ciDebug macro translation. 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci************************************************************************/ 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#include "hpi_internal.h" 1362306a36Sopenharmony_ci#include "hpidebug.h" 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci/* Debug level; 0 quiet; 1 informative, 2 debug, 3 verbose debug. */ 1662306a36Sopenharmony_ciint hpi_debug_level = HPI_DEBUG_LEVEL_DEFAULT; 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_civoid hpi_debug_init(void) 1962306a36Sopenharmony_ci{ 2062306a36Sopenharmony_ci printk(KERN_INFO "debug start\n"); 2162306a36Sopenharmony_ci} 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciint hpi_debug_level_set(int level) 2462306a36Sopenharmony_ci{ 2562306a36Sopenharmony_ci int old_level; 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ci old_level = hpi_debug_level; 2862306a36Sopenharmony_ci hpi_debug_level = level; 2962306a36Sopenharmony_ci return old_level; 3062306a36Sopenharmony_ci} 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_ciint hpi_debug_level_get(void) 3362306a36Sopenharmony_ci{ 3462306a36Sopenharmony_ci return hpi_debug_level; 3562306a36Sopenharmony_ci} 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_civoid hpi_debug_message(struct hpi_message *phm, char *sz_fileline) 3862306a36Sopenharmony_ci{ 3962306a36Sopenharmony_ci if (phm) { 4062306a36Sopenharmony_ci printk(KERN_DEBUG "HPI_MSG%d,%d,%d,%d,%d\n", phm->version, 4162306a36Sopenharmony_ci phm->adapter_index, phm->obj_index, phm->function, 4262306a36Sopenharmony_ci phm->u.c.attribute); 4362306a36Sopenharmony_ci } 4462306a36Sopenharmony_ci 4562306a36Sopenharmony_ci} 4662306a36Sopenharmony_ci 4762306a36Sopenharmony_civoid hpi_debug_data(u16 *pdata, u32 len) 4862306a36Sopenharmony_ci{ 4962306a36Sopenharmony_ci u32 i; 5062306a36Sopenharmony_ci int j; 5162306a36Sopenharmony_ci int k; 5262306a36Sopenharmony_ci int lines; 5362306a36Sopenharmony_ci int cols = 8; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_ci lines = DIV_ROUND_UP(len, cols); 5662306a36Sopenharmony_ci if (lines > 8) 5762306a36Sopenharmony_ci lines = 8; 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ci for (i = 0, j = 0; j < lines; j++) { 6062306a36Sopenharmony_ci printk(KERN_DEBUG "%p:", (pdata + i)); 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_ci for (k = 0; k < cols && i < len; i++, k++) 6362306a36Sopenharmony_ci printk(KERN_CONT "%s%04x", k == 0 ? "" : " ", pdata[i]); 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci printk(KERN_CONT "\n"); 6662306a36Sopenharmony_ci } 6762306a36Sopenharmony_ci} 68