]> git.proxmox.com Git - mirror_edk2.git/blame - QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Dxe/OhciDebug.c
QuarkSocPkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / QuarkSocPkg / QuarkSouthCluster / Usb / Ohci / Dxe / OhciDebug.c
CommitLineData
9b6bbcdb
MK
1/** @file\r
2This file provides the information dump support for OHCI when in debug mode.\r
3\r
4Copyright (c) 2013-2015 Intel Corporation.\r
5\r
c9f231d0 6SPDX-License-Identifier: BSD-2-Clause-Patent\r
9b6bbcdb
MK
7\r
8**/\r
9\r
10\r
11#include "Ohci.h"\r
12\r
13\r
14/*++\r
15\r
16 Print the data of ED and the TDs attached to the ED\r
17\r
18 @param Uhc Pointer to OHCI private data\r
19 @param Ed Pointer to a ED to free\r
20 @param Td Pointer to the Td head\r
21\r
22 @retval EFI_SUCCESS ED\r
23\r
24**/\r
25EFI_STATUS\r
26OhciDumpEdTdInfo (\r
27 IN USB_OHCI_HC_DEV *Uhc,\r
28 IN ED_DESCRIPTOR *Ed,\r
29 IN TD_DESCRIPTOR *Td,\r
30 BOOLEAN Stage\r
31 )\r
32{\r
33 UINT32 Index;\r
34\r
35 if (Stage) {\r
36 DEBUG ((EFI_D_INFO, "\n Before executing command\n"));\r
37 }else{\r
38 DEBUG ((EFI_D_INFO, "\n after executing command\n"));\r
39 }\r
40 if (Ed != NULL) {\r
41 DEBUG ((EFI_D_INFO, "\nED Address:%p, ED buffer:\n", Ed));\r
42 DEBUG ((EFI_D_INFO, "DWord0 :TD Tail :TD Head :Next ED\n"));\r
43 for (Index = 0; Index < sizeof (ED_DESCRIPTOR)/4; Index ++) {\r
44 DEBUG ((EFI_D_INFO, "%8x ", *((UINT32*)(Ed) + Index) ));\r
45 }\r
46 DEBUG ((EFI_D_INFO, "\nNext TD buffer:%p\n", Td));\r
47 }\r
48 while (Td != NULL) {\r
49 if (Td->Word0.DirPID == TD_SETUP_PID) {\r
50 DEBUG ((EFI_D_INFO, "\nSetup PID "));\r
51 }else if (Td->Word0.DirPID == TD_OUT_PID) {\r
52 DEBUG ((EFI_D_INFO, "\nOut PID "));\r
53 }else if (Td->Word0.DirPID == TD_IN_PID) {\r
54 DEBUG ((EFI_D_INFO, "\nIn PID "));\r
55 }else if (Td->Word0.DirPID == TD_NODATA_PID) {\r
56 DEBUG ((EFI_D_INFO, "\nNo data PID "));\r
57 }\r
58 DEBUG ((EFI_D_INFO, "TD Address:%p, TD buffer:\n", Td));\r
59 DEBUG ((EFI_D_INFO, "DWord0 :CuBuffer:Next TD :Buff End:Next TD :DataBuff:ActLength\n"));\r
60 for (Index = 0; Index < sizeof (TD_DESCRIPTOR)/4; Index ++) {\r
61 DEBUG ((EFI_D_INFO, "%8x ", *((UINT32*)(Td) + Index) ));\r
62 }\r
63 DEBUG ((EFI_D_INFO, "\nCurrent TD Data buffer(size%d)\n", (UINT32)Td->ActualSendLength));\r
64 for (Index = 0; Index < Td->ActualSendLength; Index ++) {\r
65 DEBUG ((EFI_D_INFO, "%2x ", *(UINT8 *)(UINTN)(Td->DataBuffer + Index) ));\r
66 }\r
67 Td = (TD_DESCRIPTOR *)(UINTN)(Td->NextTDPointer);\r
68 }\r
69 DEBUG ((EFI_D_INFO, "\n TD buffer End\n"));\r
70\r
71 return EFI_SUCCESS;\r
72}\r
73\r
74\r
75\r
76\r
77\r
78\r