参考
https://www.cnblogs.com/52php/p/5724390.html
嵌入式操作系统---打印函数(printf/sprintf)的实现 :https://blog.csdn.net/u010961173/article/details/79769747
int firmware_printf(const struct firmware *pfw, unsigned long fw_addr)
{
int i=0, n=0, size=0, col=16;
const u8 *pdata;
char str[1024];
char a_str[64];
pdata = pfw->data;
size = pfw->size;
memset(str, '\0', sizeof(a_str));
memset(str, '\0', sizeof(str));
while(n<size){
col = ((size-n)>col)?col:(size-n);
for(i=0;i<col;i++){
sprintf(a_str, "%02x ", *(pdata+i));
strcat(str, a_str);
}
pr_info("%s \n", str);
memset(str, '\0', sizeof(str));
/*
pr_info("*%02x %02x %02x %02x %02x %02x %02x %02x \n",
*pdata, *(pdata+1), *(pdata+2), *(pdata+3),
*(pdata+4), *(pdata+5), *(pdata+6), *(pdata+7));
*/
pdata += col;
n += col;
}
return 0;
}
结果如下:
[ 38.985631@0] 74 61 72 74 00 68 69 66 69 34 64 73 70 5f 67 65
[ 38.985637@0] 74 5f 69 6e 66 6f 00 5f 5f 6c 69 62 63 5f 73 74
[ 38.985642@0] 61 72 74 5f 6d 61 69 6e 40 40 47 4c 49 42 43 5f
[ 38.985647@0] 32 2e 34 00 73 74 72 65 72 72 6f 72 40 40 47 4c
[ 38.985660@0] 49 42 43 5f 32 2e 34 00 5f 5f 67 6d 6f 6e 5f 73
[ 38.985665@0] 74 61 72 74 5f 5f 00 6f 70 65 6e 40 40 47 4c 49
[ 38.985670@0] 42 43 5f 32 2e 34 00 5f 5f 64 73 6f 5f 68 61 6e
[ 38.985676@0] 64 6c 65 00 5f 49 4f 5f 73 74 64 69 6e 5f 75 73
[ 38.985681@0] 65 64 00 68 69 66 69 34 64 73 70 5f 6c 6f 61 64
[ 38.985686@0] 00 5f 5f 6c 69 62 63 5f 63 73 75 5f 69 6e 69 74
[ 38.985691@0] 00 5f 5f 65 72 72 6e 6f 5f 6c 6f 63 61 74 69 6f
[ 38.985696@0] 6e 40 40 47 4c 49 42 43 5f 32 2e 34 00 5f 65 6e
[ 38.985709@0] 64 00 5f 73 74 61 72 74 00 5f 5f 65 6e 64 5f 5f
[ 38.985714@0] 00 5f 5f 62 73 73 5f 73 74 61 72 74 00 6d 61 69
[ 38.985720@0] 6e 00 5f 4a 76 5f 52 65 67 69 73 74 65 72 43 6c
[ 38.985725@0] 61 73 73 65 73 00 5f 5f 54 4d 43 5f 45 4e 44 5f
[ 38.985730@0] 5f 00 5f 49 54 4d 5f 72 65 67 69 73 74 65 72 54
[ 38.985735@0] 4d 43 6c 6f 6e 65 54 61 62 6c 65 00 61 62 6f 72
[ 38.985740@0] 74 40 40 47 4c 49 42 43 5f 32 2e 34 00 5f 69 6e
[ 38.985745@0] 69 74 00 63 6c 6f 73 65 40 40 47 4c 49 42 43 5f
[ 38.985747@0] 32 2e 34 00