]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg/EhciDxe: Use BaseLib linked list iteration macros
authorMichael Kubacki <michael.kubacki@microsoft.com>
Fri, 10 Apr 2020 20:02:13 +0000 (04:02 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Tue, 21 Apr 2020 02:20:51 +0000 (02:20 +0000)
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1959

Replaces usage of the linked list iteration macros defined in Ehci.h
with the common definition in BaseLib.h.

Cc: Dandan Bi <dandan.bi@intel.com>
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Guomin Jiang <guomin.jiang@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Bret Barkelew <bret.barkelew@microsoft.com>
MdeModulePkg/Bus/Pci/EhciDxe/Ehci.h
MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.c
MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.c
MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.c

index 31fb171497a8d08d10295671ec7c3c6aca155d9e..65933d94396ec02a0d4fcb23ef385a118ee60e9d 100644 (file)
@@ -3,6 +3,7 @@
   Provides some data struct used by EHCI controller driver.\r
 \r
 Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) Microsoft Corporation.<BR>\r
 SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
@@ -80,20 +81,6 @@ typedef struct _USB2_HC_DEV  USB2_HC_DEV;
 //\r
 #define  EHC_TPL                     TPL_NOTIFY\r
 \r
-//\r
-//Iterate through the double linked list. NOT delete safe\r
-//\r
-#define EFI_LIST_FOR_EACH(Entry, ListHead)    \\r
-  for(Entry = (ListHead)->ForwardLink; Entry != (ListHead); Entry = Entry->ForwardLink)\r
-\r
-//\r
-//Iterate through the double linked list. This is delete-safe.\r
-//Don't touch NextEntry\r
-//\r
-#define EFI_LIST_FOR_EACH_SAFE(Entry, NextEntry, ListHead)            \\r
-  for(Entry = (ListHead)->ForwardLink, NextEntry = Entry->ForwardLink;\\r
-      Entry != (ListHead); Entry = NextEntry, NextEntry = Entry->ForwardLink)\r
-\r
 #define EFI_LIST_CONTAINER(Entry, Type, Field) BASE_CR(Entry, Type, Field)\r
 \r
 \r
index e10f6bb357ab98609258f940aafe0a2c33e2faa4..db0e2c6d39c65dbffb5003f460e727d72b9ef445 100644 (file)
@@ -3,6 +3,7 @@
   This file provides the information dump support for EHCI when in debug mode.\r
 \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
@@ -185,7 +186,7 @@ EhcDumpQh (
 \r
   DEBUG ((EFI_D_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
index 7db637aa2cb92b97ddafd952fe737767cef7b8da..5fe7cf4669396edac3b9586d5e7fc3035c04392f 100644 (file)
@@ -3,6 +3,7 @@
   EHCI transfer scheduling routines.\r
 \r
 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) Microsoft Corporation.<BR>\r
 SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
@@ -577,7 +578,7 @@ EhcCheckUrbResult (
     goto ON_EXIT;\r
   }\r
 \r
-  EFI_LIST_FOR_EACH (Entry, &Urb->Qh->Qtds) {\r
+  BASE_LIST_FOR_EACH (Entry, &Urb->Qh->Qtds) {\r
     Qtd   = EFI_LIST_CONTAINER (Entry, EHC_QTD, QtdList);\r
     QtdHw = &Qtd->QtdHw;\r
     State = (UINT8) QtdHw->Status;\r
@@ -757,7 +758,7 @@ EhciDelAsyncIntTransfer (
   Direction = (((EpNum & 0x80) != 0) ? EfiUsbDataIn : EfiUsbDataOut);\r
   EpNum    &= 0x0F;\r
 \r
-  EFI_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {\r
+  BASE_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {\r
     Urb = EFI_LIST_CONTAINER (Entry, URB, UrbList);\r
 \r
     if ((Urb->Ep.DevAddr == DevAddr) && (Urb->Ep.EpAddr == EpNum) &&\r
@@ -797,7 +798,7 @@ EhciDelAllAsyncIntTransfers (
   LIST_ENTRY              *Next;\r
   URB                     *Urb;\r
 \r
-  EFI_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {\r
+  BASE_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {\r
     Urb = EFI_LIST_CONTAINER (Entry, URB, UrbList);\r
 \r
     EhcUnlinkQhFromPeriod (Ehc, Urb->Qh);\r
@@ -965,7 +966,7 @@ EhcUpdateAsyncRequest (
   if (Urb->Result == EFI_USB_NOERROR) {\r
     FirstQtd = NULL;\r
 \r
-    EFI_LIST_FOR_EACH (Entry, &Urb->Qh->Qtds) {\r
+    BASE_LIST_FOR_EACH (Entry, &Urb->Qh->Qtds) {\r
       Qtd = EFI_LIST_CONTAINER (Entry, EHC_QTD, QtdList);\r
 \r
       if (FirstQtd == NULL) {\r
@@ -1049,7 +1050,7 @@ EhcMonitorAsyncRequests (
   OldTpl  = gBS->RaiseTPL (EHC_TPL);\r
   Ehc     = (USB2_HC_DEV *) Context;\r
 \r
-  EFI_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {\r
+  BASE_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {\r
     Urb = EFI_LIST_CONTAINER (Entry, URB, UrbList);\r
 \r
     //\r
index ac5ddd259a831a21cb30da5c3fa962bc75b95103..37cef6d130f7e5825a624f947492330f250aa038 100644 (file)
@@ -4,6 +4,7 @@
     URB (Usb Request Block).\r
 \r
 Copyright (c) 2007 - 2010, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) Microsoft Corporation.<BR>\r
 SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
@@ -299,7 +300,7 @@ EhcFreeQtds (
   LIST_ENTRY              *Next;\r
   EHC_QTD                 *Qtd;\r
 \r
-  EFI_LIST_FOR_EACH_SAFE (Entry, Next, Qtds) {\r
+  BASE_LIST_FOR_EACH_SAFE (Entry, Next, Qtds) {\r
     Qtd = EFI_LIST_CONTAINER (Entry, EHC_QTD, QtdList);\r
 \r
     RemoveEntryList (&Qtd->QtdList);\r
@@ -482,7 +483,7 @@ EhcCreateQtds (
   //\r
   // OK, all the QTDs needed are created. Now, fix the NextQtd point\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
 \r
     //\r