\r
This file provides the information dump support for EHCI when in debug mode.\r
\r
-Copyright (c) 2007, Intel Corporation\r
-All rights reserved. This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution. The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2007 - 2013, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) Microsoft Corporation.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
-\r
#include "Ehci.h"\r
\r
/**\r
\r
@param State The state in the QTD/QH.\r
\r
- @return None.\r
-\r
**/\r
VOID\r
EhcDumpStatus (\r
- IN UINT32 State\r
+ IN UINT32 State\r
)\r
{\r
if (EHC_BIT_IS_SET (State, QTD_STAT_DO_PING)) {\r
- DEBUG ((EFI_D_INFO, " Do_Ping"));\r
+ DEBUG ((DEBUG_VERBOSE, " Do_Ping"));\r
} else {\r
- DEBUG ((EFI_D_INFO, " Do_Out"));\r
+ DEBUG ((DEBUG_VERBOSE, " Do_Out"));\r
}\r
\r
if (EHC_BIT_IS_SET (State, QTD_STAT_DO_CS)) {\r
- DEBUG ((EFI_D_INFO, " Do_CS"));\r
+ DEBUG ((DEBUG_VERBOSE, " Do_CS"));\r
} else {\r
- DEBUG ((EFI_D_INFO, " Do_SS"));\r
+ DEBUG ((DEBUG_VERBOSE, " Do_SS"));\r
}\r
\r
if (EHC_BIT_IS_SET (State, QTD_STAT_TRANS_ERR)) {\r
- DEBUG ((EFI_D_INFO, " Transfer_Error"));\r
+ DEBUG ((DEBUG_VERBOSE, " Transfer_Error"));\r
}\r
\r
if (EHC_BIT_IS_SET (State, QTD_STAT_BABBLE_ERR)) {\r
- DEBUG ((EFI_D_INFO, " Babble_Error"));\r
+ DEBUG ((DEBUG_VERBOSE, " Babble_Error"));\r
}\r
\r
if (EHC_BIT_IS_SET (State, QTD_STAT_BUFF_ERR)) {\r
- DEBUG ((EFI_D_INFO, " Buffer_Error"));\r
+ DEBUG ((DEBUG_VERBOSE, " Buffer_Error"));\r
}\r
\r
if (EHC_BIT_IS_SET (State, QTD_STAT_HALTED)) {\r
- DEBUG ((EFI_D_INFO, " Halted"));\r
+ DEBUG ((DEBUG_VERBOSE, " Halted"));\r
}\r
\r
if (EHC_BIT_IS_SET (State, QTD_STAT_ACTIVE)) {\r
- DEBUG ((EFI_D_INFO, " Active"));\r
+ DEBUG ((DEBUG_VERBOSE, " Active"));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "\n"));\r
+ DEBUG ((DEBUG_VERBOSE, "\n"));\r
}\r
\r
-\r
/**\r
Dump the fields of a QTD.\r
\r
@param Qtd The QTD to dump.\r
@param Msg The message to print before the dump.\r
\r
- @return None\r
-\r
**/\r
VOID\r
EhcDumpQtd (\r
- IN EHC_QTD *Qtd,\r
- IN CHAR8 *Msg\r
+ IN EHC_QTD *Qtd,\r
+ IN CHAR8 *Msg\r
)\r
{\r
- QTD_HW *QtdHw;\r
- UINTN Index;\r
+ QTD_HW *QtdHw;\r
+ UINTN Index;\r
\r
if (Msg != NULL) {\r
- DEBUG ((EFI_D_INFO, Msg));\r
+ DEBUG ((DEBUG_VERBOSE, Msg));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "Queue TD @ 0x%x, data length %d\n", Qtd, Qtd->DataLen));\r
+ DEBUG ((DEBUG_VERBOSE, "Queue TD @ 0x%p, data length %d\n", Qtd, (UINT32)Qtd->DataLen));\r
\r
QtdHw = &Qtd->QtdHw;\r
\r
- DEBUG ((EFI_D_INFO, "Next QTD : %x\n", QtdHw->NextQtd));\r
- DEBUG ((EFI_D_INFO, "AltNext QTD : %x\n", QtdHw->AltNext));\r
- DEBUG ((EFI_D_INFO, "Status : %x\n", QtdHw->Status));\r
+ DEBUG ((DEBUG_VERBOSE, "Next QTD : %x\n", QtdHw->NextQtd));\r
+ DEBUG ((DEBUG_VERBOSE, "AltNext QTD : %x\n", QtdHw->AltNext));\r
+ DEBUG ((DEBUG_VERBOSE, "Status : %x\n", QtdHw->Status));\r
EhcDumpStatus (QtdHw->Status);\r
\r
if (QtdHw->Pid == QTD_PID_SETUP) {\r
- DEBUG ((EFI_D_INFO, "PID : Setup\n"));\r
-\r
+ DEBUG ((DEBUG_VERBOSE, "PID : Setup\n"));\r
} else if (QtdHw->Pid == QTD_PID_INPUT) {\r
- DEBUG ((EFI_D_INFO, "PID : IN\n"));\r
-\r
+ DEBUG ((DEBUG_VERBOSE, "PID : IN\n"));\r
} else if (QtdHw->Pid == QTD_PID_OUTPUT) {\r
- DEBUG ((EFI_D_INFO, "PID : OUT\n"));\r
-\r
+ DEBUG ((DEBUG_VERBOSE, "PID : OUT\n"));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "Error Count : %d\n", QtdHw->ErrCnt));\r
- DEBUG ((EFI_D_INFO, "Current Page : %d\n", QtdHw->CurPage));\r
- DEBUG ((EFI_D_INFO, "IOC : %d\n", QtdHw->IOC));\r
- DEBUG ((EFI_D_INFO, "Total Bytes : %d\n", QtdHw->TotalBytes));\r
- DEBUG ((EFI_D_INFO, "Data Toggle : %d\n", QtdHw->DataToggle));\r
+ DEBUG ((DEBUG_VERBOSE, "Error Count : %d\n", QtdHw->ErrCnt));\r
+ DEBUG ((DEBUG_VERBOSE, "Current Page : %d\n", QtdHw->CurPage));\r
+ DEBUG ((DEBUG_VERBOSE, "IOC : %d\n", QtdHw->Ioc));\r
+ DEBUG ((DEBUG_VERBOSE, "Total Bytes : %d\n", QtdHw->TotalBytes));\r
+ DEBUG ((DEBUG_VERBOSE, "Data Toggle : %d\n", QtdHw->DataToggle));\r
\r
for (Index = 0; Index < 5; Index++) {\r
- DEBUG ((EFI_D_INFO, "Page[%d] : 0x%x\n", Index, QtdHw->Page[Index]));\r
+ DEBUG ((DEBUG_VERBOSE, "Page[%d] : 0x%x\n", (UINT32)Index, QtdHw->Page[Index]));\r
}\r
}\r
\r
-\r
/**\r
Dump the queue head.\r
\r
@param Msg The message to print before the dump.\r
@param DumpBuf Whether to dump the memory buffer of the associated QTD.\r
\r
- @return None\r
-\r
**/\r
VOID\r
EhcDumpQh (\r
- IN EHC_QH *Qh,\r
- IN CHAR8 *Msg,\r
- IN BOOLEAN DumpBuf\r
+ IN EHC_QH *Qh,\r
+ IN CHAR8 *Msg,\r
+ IN BOOLEAN DumpBuf\r
)\r
{\r
- EHC_QTD *Qtd;\r
- QH_HW *QhHw;\r
- LIST_ENTRY *Entry;\r
- UINTN Index;\r
+ EHC_QTD *Qtd;\r
+ QH_HW *QhHw;\r
+ LIST_ENTRY *Entry;\r
+ UINTN Index;\r
\r
if (Msg != NULL) {\r
- DEBUG ((EFI_D_INFO, Msg));\r
+ DEBUG ((DEBUG_VERBOSE, Msg));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "Queue head @ 0x%p, interval %d, next qh %x\n",\r
- Qh, Qh->Interval, Qh->NextQh));\r
+ DEBUG ((\r
+ DEBUG_VERBOSE,\r
+ "Queue head @ 0x%p, interval %ld, next qh %p\n",\r
+ Qh,\r
+ (UINT64)Qh->Interval,\r
+ Qh->NextQh\r
+ ));\r
\r
QhHw = &Qh->QhHw;\r
\r
- DEBUG ((EFI_D_INFO, "Hoziontal link: %x\n", QhHw->HorizonLink));\r
- DEBUG ((EFI_D_INFO, "Device address: %d\n", QhHw->DeviceAddr));\r
- DEBUG ((EFI_D_INFO, "Inactive : %d\n", QhHw->Inactive));\r
- DEBUG ((EFI_D_INFO, "EP number : %d\n", QhHw->EpNum));\r
- DEBUG ((EFI_D_INFO, "EP speed : %d\n", QhHw->EpSpeed));\r
- DEBUG ((EFI_D_INFO, "DT control : %d\n", QhHw->DtCtrl));\r
- DEBUG ((EFI_D_INFO, "Reclaim head : %d\n", QhHw->ReclaimHead));\r
- DEBUG ((EFI_D_INFO, "Max packet len: %d\n", QhHw->MaxPacketLen));\r
- DEBUG ((EFI_D_INFO, "Ctrl EP : %d\n", QhHw->CtrlEp));\r
- DEBUG ((EFI_D_INFO, "Nak reload : %d\n", QhHw->NakReload));\r
-\r
- DEBUG ((EFI_D_INFO, "SMask : %x\n", QhHw->SMask));\r
- DEBUG ((EFI_D_INFO, "CMask : %x\n", QhHw->CMask));\r
- DEBUG ((EFI_D_INFO, "Hub address : %d\n", QhHw->HubAddr));\r
- DEBUG ((EFI_D_INFO, "Hub port : %d\n", QhHw->PortNum));\r
- DEBUG ((EFI_D_INFO, "Multiplier : %d\n", QhHw->Multiplier));\r
-\r
- DEBUG ((EFI_D_INFO, "Cur QTD : %x\n", QhHw->CurQtd));\r
-\r
- DEBUG ((EFI_D_INFO, "Next QTD : %x\n", QhHw->NextQtd));\r
- DEBUG ((EFI_D_INFO, "AltNext QTD : %x\n", QhHw->AltQtd));\r
- DEBUG ((EFI_D_INFO, "Status : %x\n", QhHw->Status));\r
+ DEBUG ((DEBUG_VERBOSE, "Hoziontal link: %x\n", QhHw->HorizonLink));\r
+ DEBUG ((DEBUG_VERBOSE, "Device address: %d\n", QhHw->DeviceAddr));\r
+ DEBUG ((DEBUG_VERBOSE, "Inactive : %d\n", QhHw->Inactive));\r
+ DEBUG ((DEBUG_VERBOSE, "EP number : %d\n", QhHw->EpNum));\r
+ DEBUG ((DEBUG_VERBOSE, "EP speed : %d\n", QhHw->EpSpeed));\r
+ DEBUG ((DEBUG_VERBOSE, "DT control : %d\n", QhHw->DtCtrl));\r
+ DEBUG ((DEBUG_VERBOSE, "Reclaim head : %d\n", QhHw->ReclaimHead));\r
+ DEBUG ((DEBUG_VERBOSE, "Max packet len: %d\n", QhHw->MaxPacketLen));\r
+ DEBUG ((DEBUG_VERBOSE, "Ctrl EP : %d\n", QhHw->CtrlEp));\r
+ DEBUG ((DEBUG_VERBOSE, "Nak reload : %d\n", QhHw->NakReload));\r
+\r
+ DEBUG ((DEBUG_VERBOSE, "SMask : %x\n", QhHw->SMask));\r
+ DEBUG ((DEBUG_VERBOSE, "CMask : %x\n", QhHw->CMask));\r
+ DEBUG ((DEBUG_VERBOSE, "Hub address : %d\n", QhHw->HubAddr));\r
+ DEBUG ((DEBUG_VERBOSE, "Hub port : %d\n", QhHw->PortNum));\r
+ DEBUG ((DEBUG_VERBOSE, "Multiplier : %d\n", QhHw->Multiplier));\r
+\r
+ DEBUG ((DEBUG_VERBOSE, "Cur QTD : %x\n", QhHw->CurQtd));\r
+\r
+ DEBUG ((DEBUG_VERBOSE, "Next QTD : %x\n", QhHw->NextQtd));\r
+ DEBUG ((DEBUG_VERBOSE, "AltNext QTD : %x\n", QhHw->AltQtd));\r
+ DEBUG ((DEBUG_VERBOSE, "Status : %x\n", QhHw->Status));\r
\r
EhcDumpStatus (QhHw->Status);\r
\r
if (QhHw->Pid == QTD_PID_SETUP) {\r
- DEBUG ((EFI_D_INFO, "PID : Setup\n"));\r
-\r
+ DEBUG ((DEBUG_VERBOSE, "PID : Setup\n"));\r
} else if (QhHw->Pid == QTD_PID_INPUT) {\r
- DEBUG ((EFI_D_INFO, "PID : IN\n"));\r
-\r
+ DEBUG ((DEBUG_VERBOSE, "PID : IN\n"));\r
} else if (QhHw->Pid == QTD_PID_OUTPUT) {\r
- DEBUG ((EFI_D_INFO, "PID : OUT\n"));\r
+ DEBUG ((DEBUG_VERBOSE, "PID : OUT\n"));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "Error Count : %d\n", QhHw->ErrCnt));\r
- DEBUG ((EFI_D_INFO, "Current Page : %d\n", QhHw->CurPage));\r
- DEBUG ((EFI_D_INFO, "IOC : %d\n", QhHw->IOC));\r
- DEBUG ((EFI_D_INFO, "Total Bytes : %d\n", QhHw->TotalBytes));\r
- DEBUG ((EFI_D_INFO, "Data Toggle : %d\n", QhHw->DataToggle));\r
+ DEBUG ((DEBUG_VERBOSE, "Error Count : %d\n", QhHw->ErrCnt));\r
+ DEBUG ((DEBUG_VERBOSE, "Current Page : %d\n", QhHw->CurPage));\r
+ DEBUG ((DEBUG_VERBOSE, "IOC : %d\n", QhHw->Ioc));\r
+ DEBUG ((DEBUG_VERBOSE, "Total Bytes : %d\n", QhHw->TotalBytes));\r
+ DEBUG ((DEBUG_VERBOSE, "Data Toggle : %d\n", QhHw->DataToggle));\r
\r
for (Index = 0; Index < 5; Index++) {\r
- DEBUG ((EFI_D_INFO, "Page[%d] : 0x%x\n", Index, QhHw->Page[Index]));\r
+ DEBUG ((DEBUG_VERBOSE, "Page[%d] : 0x%x\n", Index, QhHw->Page[Index]));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "\n"));\r
+ DEBUG ((DEBUG_VERBOSE, "\n"));\r
\r
- EFI_LIST_FOR_EACH (Entry, &Qh->Qtds) {\r
+ BASE_LIST_FOR_EACH (Entry, &Qh->Qtds) {\r
Qtd = EFI_LIST_CONTAINER (Entry, EHC_QTD, QtdList);\r
EhcDumpQtd (Qtd, NULL);\r
\r
}\r
}\r
\r
-\r
/**\r
Dump the buffer in the form of hex.\r
\r
@param Buf The buffer to dump.\r
@param Len The length of buffer.\r
\r
- @return None.\r
-\r
**/\r
VOID\r
EhcDumpBuf (\r
- IN UINT8 *Buf,\r
- IN UINTN Len\r
+ IN UINT8 *Buf,\r
+ IN UINTN Len\r
)\r
{\r
- UINTN Index;\r
+ UINTN Index;\r
\r
for (Index = 0; Index < Len; Index++) {\r
if (Index % 16 == 0) {\r
- DEBUG ((EFI_D_INFO,"\n"));\r
+ DEBUG ((DEBUG_VERBOSE, "\n"));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "%02x ", Buf[Index]));\r
+ DEBUG ((DEBUG_VERBOSE, "%02x ", Buf[Index]));\r
}\r
\r
- DEBUG ((EFI_D_INFO, "\n"));\r
+ DEBUG ((DEBUG_VERBOSE, "\n"));\r
}\r