]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Bus/Pci/EhciDxe/UsbHcMem.c
MdeModulePkg: Apply uncrustify changes
[mirror_edk2.git] / MdeModulePkg / Bus / Pci / EhciDxe / UsbHcMem.c
index 177c49f1e4070f0cbcf481c0e4d8b048cd8f9abe..0a3ceb9f711ac03991973939409832ef3e5b637b 100644 (file)
@@ -2,21 +2,13 @@
 \r
   Routine procedures for memory allocate/free.\r
 \r
-Copyright (c) 2007 - 2009, 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 - 2016, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
-\r
 #include "Ehci.h"\r
 \r
-\r
 /**\r
   Allocate a block of memory to be used by the buffer pool.\r
 \r
@@ -28,17 +20,17 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 **/\r
 USBHC_MEM_BLOCK *\r
 UsbHcAllocMemBlock (\r
-  IN  USBHC_MEM_POOL      *Pool,\r
-  IN  UINTN               Pages\r
+  IN  USBHC_MEM_POOL  *Pool,\r
+  IN  UINTN           Pages\r
   )\r
 {\r
-  USBHC_MEM_BLOCK         *Block;\r
-  EFI_PCI_IO_PROTOCOL     *PciIo;\r
-  VOID                    *BufHost;\r
-  VOID                    *Mapping;\r
-  EFI_PHYSICAL_ADDRESS    MappedAddr;\r
-  UINTN                   Bytes;\r
-  EFI_STATUS              Status;\r
+  USBHC_MEM_BLOCK       *Block;\r
+  EFI_PCI_IO_PROTOCOL   *PciIo;\r
+  VOID                  *BufHost;\r
+  VOID                  *Mapping;\r
+  EFI_PHYSICAL_ADDRESS  MappedAddr;\r
+  UINTN                 Bytes;\r
+  EFI_STATUS            Status;\r
 \r
   PciIo = Pool->PciIo;\r
 \r
@@ -53,9 +45,9 @@ UsbHcAllocMemBlock (
   //\r
   ASSERT (USBHC_MEM_UNIT * 8 <= EFI_PAGE_SIZE);\r
 \r
-  Block->BufLen   = EFI_PAGES_TO_SIZE (Pages);\r
-  Block->BitsLen  = Block->BufLen / (USBHC_MEM_UNIT * 8);\r
-  Block->Bits     = AllocateZeroPool (Block->BitsLen);\r
+  Block->BufLen  = EFI_PAGES_TO_SIZE (Pages);\r
+  Block->BitsLen = Block->BufLen / (USBHC_MEM_UNIT * 8);\r
+  Block->Bits    = AllocateZeroPool (Block->BitsLen);\r
 \r
   if (Block->Bits == NULL) {\r
     gBS->FreePool (Block);\r
@@ -79,7 +71,7 @@ UsbHcAllocMemBlock (
     goto FREE_BITARRAY;\r
   }\r
 \r
-  Bytes = EFI_PAGES_TO_SIZE (Pages);\r
+  Bytes  = EFI_PAGES_TO_SIZE (Pages);\r
   Status = PciIo->Map (\r
                     PciIo,\r
                     EfiPciIoOperationBusMasterCommonBuffer,\r
@@ -102,9 +94,9 @@ UsbHcAllocMemBlock (
     goto FREE_BUFFER;\r
   }\r
 \r
-  Block->BufHost  = BufHost;\r
-  Block->Buf      = (UINT8 *) ((UINTN) MappedAddr);\r
-  Block->Mapping  = Mapping;\r
+  Block->BufHost = BufHost;\r
+  Block->Buf     = (UINT8 *)((UINTN)MappedAddr);\r
+  Block->Mapping = Mapping;\r
 \r
   return Block;\r
 \r
@@ -117,7 +109,6 @@ FREE_BITARRAY:
   return NULL;\r
 }\r
 \r
-\r
 /**\r
   Free the memory block from the memory pool.\r
 \r
@@ -127,11 +118,11 @@ FREE_BITARRAY:
 **/\r
 VOID\r
 UsbHcFreeMemBlock (\r
-  IN USBHC_MEM_POOL       *Pool,\r
-  IN USBHC_MEM_BLOCK      *Block\r
+  IN USBHC_MEM_POOL   *Pool,\r
+  IN USBHC_MEM_BLOCK  *Block\r
   )\r
 {\r
-  EFI_PCI_IO_PROTOCOL     *PciIo;\r
+  EFI_PCI_IO_PROTOCOL  *PciIo;\r
 \r
   ASSERT ((Pool != NULL) && (Block != NULL));\r
 \r
@@ -147,7 +138,6 @@ UsbHcFreeMemBlock (
   gBS->FreePool (Block);\r
 }\r
 \r
-\r
 /**\r
   Alloc some memory from the block.\r
 \r
@@ -160,22 +150,22 @@ UsbHcFreeMemBlock (
 **/\r
 VOID *\r
 UsbHcAllocMemFromBlock (\r
-  IN  USBHC_MEM_BLOCK     *Block,\r
-  IN  UINTN               Units\r
+  IN  USBHC_MEM_BLOCK  *Block,\r
+  IN  UINTN            Units\r
   )\r
 {\r
-  UINTN                   Byte;\r
-  UINT8                   Bit;\r
-  UINTN                   StartByte;\r
-  UINT8                   StartBit;\r
-  UINTN                   Available;\r
-  UINTN                   Count;\r
+  UINTN  Byte;\r
+  UINT8  Bit;\r
+  UINTN  StartByte;\r
+  UINT8  StartBit;\r
+  UINTN  Available;\r
+  UINTN  Count;\r
 \r
   ASSERT ((Block != 0) && (Units != 0));\r
 \r
-  StartByte  = 0;\r
-  StartBit   = 0;\r
-  Available  = 0;\r
+  StartByte = 0;\r
+  StartBit  = 0;\r
+  Available = 0;\r
 \r
   for (Byte = 0, Bit = 0; Byte < Block->BitsLen;) {\r
     //\r
@@ -191,13 +181,12 @@ UsbHcAllocMemFromBlock (
       }\r
 \r
       NEXT_BIT (Byte, Bit);\r
-\r
     } else {\r
       NEXT_BIT (Byte, Bit);\r
 \r
-      Available  = 0;\r
-      StartByte  = Byte;\r
-      StartBit   = Bit;\r
+      Available = 0;\r
+      StartByte = Byte;\r
+      StartBit  = Bit;\r
     }\r
   }\r
 \r
@@ -208,50 +197,54 @@ UsbHcAllocMemFromBlock (
   //\r
   // Mark the memory as allocated\r
   //\r
-  Byte  = StartByte;\r
-  Bit   = StartBit;\r
+  Byte = StartByte;\r
+  Bit  = StartBit;\r
 \r
   for (Count = 0; Count < Units; Count++) {\r
     ASSERT (!USB_HC_BIT_IS_SET (Block->Bits[Byte], Bit));\r
 \r
-    Block->Bits[Byte] = (UINT8) (Block->Bits[Byte] | USB_HC_BIT (Bit));\r
+    Block->Bits[Byte] = (UINT8)(Block->Bits[Byte] | USB_HC_BIT (Bit));\r
     NEXT_BIT (Byte, Bit);\r
   }\r
 \r
-  return Block->Buf + (StartByte * 8 + StartBit) * USBHC_MEM_UNIT;\r
+  return Block->BufHost + (StartByte * 8 + StartBit) * USBHC_MEM_UNIT;\r
 }\r
 \r
 /**\r
-  Get the pci memory address according to the allocated host memory address.\r
+  Calculate the corresponding pci bus address according to the Mem parameter.\r
 \r
   @param  Pool           The memory pool of the host controller.\r
-  @param  Mem            The memory to free.\r
-  @param  Size           The size of the memory to free.\r
+  @param  Mem            The pointer to host memory.\r
+  @param  Size           The size of the memory region.\r
 \r
   @return the pci memory address\r
 **/\r
 EFI_PHYSICAL_ADDRESS\r
 UsbHcGetPciAddressForHostMem (\r
-  IN USBHC_MEM_POOL       *Pool,\r
-  IN VOID                 *Mem,\r
-  IN UINTN                Size\r
+  IN USBHC_MEM_POOL  *Pool,\r
+  IN VOID            *Mem,\r
+  IN UINTN           Size\r
   )\r
 {\r
-  USBHC_MEM_BLOCK         *Head;\r
-  USBHC_MEM_BLOCK         *Block;\r
-  UINTN                   AllocSize;\r
-  EFI_PHYSICAL_ADDRESS    PhyAddr;\r
-  UINTN                   Offset;\r
+  USBHC_MEM_BLOCK       *Head;\r
+  USBHC_MEM_BLOCK       *Block;\r
+  UINTN                 AllocSize;\r
+  EFI_PHYSICAL_ADDRESS  PhyAddr;\r
+  UINTN                 Offset;\r
 \r
   Head      = Pool->Head;\r
   AllocSize = USBHC_MEM_ROUND (Size);\r
 \r
+  if (Mem == NULL) {\r
+    return 0;\r
+  }\r
+\r
   for (Block = Head; Block != NULL; Block = Block->Next) {\r
     //\r
     // scan the memory block list for the memory block that\r
     // completely contains the allocated memory.\r
     //\r
-    if ((Block->Buf <= (UINT8 *) Mem) && (((UINT8 *) Mem + AllocSize) <= (Block->Buf + Block->BufLen))) {\r
+    if ((Block->BufHost <= (UINT8 *)Mem) && (((UINT8 *)Mem + AllocSize) <= (Block->BufHost + Block->BufLen))) {\r
       break;\r
     }\r
   }\r
@@ -260,12 +253,11 @@ UsbHcGetPciAddressForHostMem (
   //\r
   // calculate the pci memory address for host memory address.\r
   //\r
-  Offset = (UINT8 *)Mem - Block->BufHost;\r
-  PhyAddr = (EFI_PHYSICAL_ADDRESS)(Block->Buf + Offset);\r
+  Offset  = (UINT8 *)Mem - Block->BufHost;\r
+  PhyAddr = (EFI_PHYSICAL_ADDRESS)(UINTN)(Block->Buf + Offset);\r
   return PhyAddr;\r
 }\r
 \r
-\r
 /**\r
   Insert the memory block to the pool's list of the blocks.\r
 \r
@@ -275,8 +267,8 @@ UsbHcGetPciAddressForHostMem (
 **/\r
 VOID\r
 UsbHcInsertMemBlockToPool (\r
-  IN USBHC_MEM_BLOCK      *Head,\r
-  IN USBHC_MEM_BLOCK      *Block\r
+  IN USBHC_MEM_BLOCK  *Head,\r
+  IN USBHC_MEM_BLOCK  *Block\r
   )\r
 {\r
   ASSERT ((Head != NULL) && (Block != NULL));\r
@@ -284,7 +276,6 @@ UsbHcInsertMemBlockToPool (
   Head->Next  = Block;\r
 }\r
 \r
-\r
 /**\r
   Is the memory block empty?\r
 \r
@@ -296,10 +287,10 @@ UsbHcInsertMemBlockToPool (
 **/\r
 BOOLEAN\r
 UsbHcIsMemBlockEmpty (\r
-  IN USBHC_MEM_BLOCK     *Block\r
+  IN USBHC_MEM_BLOCK  *Block\r
   )\r
 {\r
-  UINTN                   Index;\r
+  UINTN  Index;\r
 \r
   for (Index = 0; Index < Block->BitsLen; Index++) {\r
     if (Block->Bits[Index] != 0) {\r
@@ -310,7 +301,6 @@ UsbHcIsMemBlockEmpty (
   return TRUE;\r
 }\r
 \r
-\r
 /**\r
   Unlink the memory block from the pool's list.\r
 \r
@@ -320,11 +310,11 @@ UsbHcIsMemBlockEmpty (
 **/\r
 VOID\r
 UsbHcUnlinkMemBlock (\r
-  IN USBHC_MEM_BLOCK      *Head,\r
-  IN USBHC_MEM_BLOCK      *BlockToUnlink\r
+  IN USBHC_MEM_BLOCK  *Head,\r
+  IN USBHC_MEM_BLOCK  *BlockToUnlink\r
   )\r
 {\r
-  USBHC_MEM_BLOCK         *Block;\r
+  USBHC_MEM_BLOCK  *Block;\r
 \r
   ASSERT ((Head != NULL) && (BlockToUnlink != NULL));\r
 \r
@@ -337,7 +327,6 @@ UsbHcUnlinkMemBlock (
   }\r
 }\r
 \r
-\r
 /**\r
   Initialize the memory management pool for the host controller.\r
 \r
@@ -357,7 +346,7 @@ UsbHcInitMemPool (
   IN UINT32               Which4G\r
   )\r
 {\r
-  USBHC_MEM_POOL          *Pool;\r
+  USBHC_MEM_POOL  *Pool;\r
 \r
   Pool = AllocatePool (sizeof (USBHC_MEM_POOL));\r
 \r
@@ -378,7 +367,6 @@ UsbHcInitMemPool (
   return Pool;\r
 }\r
 \r
-\r
 /**\r
   Release the memory management pool.\r
 \r
@@ -390,10 +378,10 @@ UsbHcInitMemPool (
 **/\r
 EFI_STATUS\r
 UsbHcFreeMemPool (\r
-  IN USBHC_MEM_POOL       *Pool\r
+  IN USBHC_MEM_POOL  *Pool\r
   )\r
 {\r
-  USBHC_MEM_BLOCK *Block;\r
+  USBHC_MEM_BLOCK  *Block;\r
 \r
   ASSERT (Pool->Head != NULL);\r
 \r
@@ -412,7 +400,6 @@ UsbHcFreeMemPool (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Allocate some memory from the host controller's memory pool\r
   which can be used to communicate with host controller.\r
@@ -425,16 +412,16 @@ UsbHcFreeMemPool (
 **/\r
 VOID *\r
 UsbHcAllocateMem (\r
-  IN  USBHC_MEM_POOL      *Pool,\r
-  IN  UINTN               Size\r
+  IN  USBHC_MEM_POOL  *Pool,\r
+  IN  UINTN           Size\r
   )\r
 {\r
-  USBHC_MEM_BLOCK         *Head;\r
-  USBHC_MEM_BLOCK         *Block;\r
-  USBHC_MEM_BLOCK         *NewBlock;\r
-  VOID                    *Mem;\r
-  UINTN                   AllocSize;\r
-  UINTN                   Pages;\r
+  USBHC_MEM_BLOCK  *Head;\r
+  USBHC_MEM_BLOCK  *Block;\r
+  USBHC_MEM_BLOCK  *NewBlock;\r
+  VOID             *Mem;\r
+  UINTN            AllocSize;\r
+  UINTN            Pages;\r
 \r
   Mem       = NULL;\r
   AllocSize = USBHC_MEM_ROUND (Size);\r
@@ -472,7 +459,7 @@ UsbHcAllocateMem (
   NewBlock = UsbHcAllocMemBlock (Pool, Pages);\r
 \r
   if (NewBlock == NULL) {\r
-    DEBUG ((EFI_D_INFO, "UsbHcAllocateMem: failed to allocate block\n"));\r
+    DEBUG ((DEBUG_ERROR, "UsbHcAllocateMem: failed to allocate block\n"));\r
     return NULL;\r
   }\r
 \r
@@ -489,7 +476,6 @@ UsbHcAllocateMem (
   return Mem;\r
 }\r
 \r
-\r
 /**\r
   Free the allocated memory back to the memory pool.\r
 \r
@@ -500,42 +486,42 @@ UsbHcAllocateMem (
 **/\r
 VOID\r
 UsbHcFreeMem (\r
-  IN USBHC_MEM_POOL       *Pool,\r
-  IN VOID                 *Mem,\r
-  IN UINTN                Size\r
+  IN USBHC_MEM_POOL  *Pool,\r
+  IN VOID            *Mem,\r
+  IN UINTN           Size\r
   )\r
 {\r
-  USBHC_MEM_BLOCK         *Head;\r
-  USBHC_MEM_BLOCK         *Block;\r
-  UINT8                   *ToFree;\r
-  UINTN                   AllocSize;\r
-  UINTN                   Byte;\r
-  UINTN                   Bit;\r
-  UINTN                   Count;\r
+  USBHC_MEM_BLOCK  *Head;\r
+  USBHC_MEM_BLOCK  *Block;\r
+  UINT8            *ToFree;\r
+  UINTN            AllocSize;\r
+  UINTN            Byte;\r
+  UINTN            Bit;\r
+  UINTN            Count;\r
 \r
   Head      = Pool->Head;\r
   AllocSize = USBHC_MEM_ROUND (Size);\r
-  ToFree    = (UINT8 *) Mem;\r
+  ToFree    = (UINT8 *)Mem;\r
 \r
   for (Block = Head; Block != NULL; Block = Block->Next) {\r
     //\r
     // scan the memory block list for the memory block that\r
     // completely contains the memory to free.\r
     //\r
-    if ((Block->Buf <= ToFree) && ((ToFree + AllocSize) <= (Block->Buf + Block->BufLen))) {\r
+    if ((Block->BufHost <= ToFree) && ((ToFree + AllocSize) <= (Block->BufHost + Block->BufLen))) {\r
       //\r
       // compute the start byte and bit in the bit array\r
       //\r
-      Byte  = ((ToFree - Block->Buf) / USBHC_MEM_UNIT) / 8;\r
-      Bit   = ((ToFree - Block->Buf) / USBHC_MEM_UNIT) % 8;\r
+      Byte = ((ToFree - Block->BufHost) / USBHC_MEM_UNIT) / 8;\r
+      Bit  = ((ToFree - Block->BufHost) / USBHC_MEM_UNIT) % 8;\r
 \r
       //\r
-      // reset associated bits in bit arry\r
+      // reset associated bits in bit array\r
       //\r
       for (Count = 0; Count < (AllocSize / USBHC_MEM_UNIT); Count++) {\r
         ASSERT (USB_HC_BIT_IS_SET (Block->Bits[Byte], Bit));\r
 \r
-        Block->Bits[Byte] = (UINT8) (Block->Bits[Byte] ^ USB_HC_BIT (Bit));\r
+        Block->Bits[Byte] = (UINT8)(Block->Bits[Byte] ^ USB_HC_BIT (Bit));\r
         NEXT_BIT (Byte, Bit);\r
       }\r
 \r
@@ -558,5 +544,5 @@ UsbHcFreeMem (
     UsbHcFreeMemBlock (Pool, Block);\r
   }\r
 \r
-  return ;\r
+  return;\r
 }\r