VOID\r
)\r
{\r
- EFI_STATUS Status;\r
- EDKII_IOMMU_PPI *IoMmu;\r
+ EFI_STATUS Status;\r
+ EDKII_IOMMU_PPI *IoMmu;\r
\r
IoMmu = NULL;\r
Status = PeiServicesLocatePpi (\r
&gEdkiiIoMmuPpiGuid,\r
0,\r
NULL,\r
- (VOID **) &IoMmu\r
+ (VOID **)&IoMmu\r
);\r
if (!EFI_ERROR (Status) && (IoMmu != NULL)) {\r
return IoMmu;\r
**/\r
EFI_STATUS\r
IoMmuMap (\r
- IN EDKII_IOMMU_OPERATION Operation,\r
- IN VOID *HostAddress,\r
- IN OUT UINTN *NumberOfBytes,\r
- OUT EFI_PHYSICAL_ADDRESS *DeviceAddress,\r
- OUT VOID **Mapping\r
+ IN EDKII_IOMMU_OPERATION Operation,\r
+ IN VOID *HostAddress,\r
+ IN OUT UINTN *NumberOfBytes,\r
+ OUT EFI_PHYSICAL_ADDRESS *DeviceAddress,\r
+ OUT VOID **Mapping\r
)\r
{\r
- EFI_STATUS Status;\r
- UINT64 Attribute;\r
- EDKII_IOMMU_PPI *IoMmu;\r
+ EFI_STATUS Status;\r
+ UINT64 Attribute;\r
+ EDKII_IOMMU_PPI *IoMmu;\r
\r
IoMmu = GetIoMmu ();\r
\r
if (IoMmu != NULL) {\r
Status = IoMmu->Map (\r
- IoMmu,\r
- Operation,\r
- HostAddress,\r
- NumberOfBytes,\r
- DeviceAddress,\r
- Mapping\r
- );\r
+ IoMmu,\r
+ Operation,\r
+ HostAddress,\r
+ NumberOfBytes,\r
+ DeviceAddress,\r
+ Mapping\r
+ );\r
if (EFI_ERROR (Status)) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
+\r
switch (Operation) {\r
- case EdkiiIoMmuOperationBusMasterRead:\r
- case EdkiiIoMmuOperationBusMasterRead64:\r
- Attribute = EDKII_IOMMU_ACCESS_READ;\r
- break;\r
- case EdkiiIoMmuOperationBusMasterWrite:\r
- case EdkiiIoMmuOperationBusMasterWrite64:\r
- Attribute = EDKII_IOMMU_ACCESS_WRITE;\r
- break;\r
- case EdkiiIoMmuOperationBusMasterCommonBuffer:\r
- case EdkiiIoMmuOperationBusMasterCommonBuffer64:\r
- Attribute = EDKII_IOMMU_ACCESS_READ | EDKII_IOMMU_ACCESS_WRITE;\r
- break;\r
- default:\r
- ASSERT(FALSE);\r
- return EFI_INVALID_PARAMETER;\r
+ case EdkiiIoMmuOperationBusMasterRead:\r
+ case EdkiiIoMmuOperationBusMasterRead64:\r
+ Attribute = EDKII_IOMMU_ACCESS_READ;\r
+ break;\r
+ case EdkiiIoMmuOperationBusMasterWrite:\r
+ case EdkiiIoMmuOperationBusMasterWrite64:\r
+ Attribute = EDKII_IOMMU_ACCESS_WRITE;\r
+ break;\r
+ case EdkiiIoMmuOperationBusMasterCommonBuffer:\r
+ case EdkiiIoMmuOperationBusMasterCommonBuffer64:\r
+ Attribute = EDKII_IOMMU_ACCESS_READ | EDKII_IOMMU_ACCESS_WRITE;\r
+ break;\r
+ default:\r
+ ASSERT (FALSE);\r
+ return EFI_INVALID_PARAMETER;\r
}\r
+\r
Status = IoMmu->SetAttribute (\r
IoMmu,\r
*Mapping,\r
}\r
} else {\r
*DeviceAddress = (EFI_PHYSICAL_ADDRESS)(UINTN)HostAddress;\r
- *Mapping = NULL;\r
- Status = EFI_SUCCESS;\r
+ *Mapping = NULL;\r
+ Status = EFI_SUCCESS;\r
}\r
+\r
return Status;\r
}\r
\r
**/\r
EFI_STATUS\r
IoMmuUnmap (\r
- IN VOID *Mapping\r
+ IN VOID *Mapping\r
)\r
{\r
- EFI_STATUS Status;\r
- EDKII_IOMMU_PPI *IoMmu;\r
+ EFI_STATUS Status;\r
+ EDKII_IOMMU_PPI *IoMmu;\r
\r
IoMmu = GetIoMmu ();\r
\r
} else {\r
Status = EFI_SUCCESS;\r
}\r
+\r
return Status;\r
}\r
\r
EFI_PHYSICAL_ADDRESS HostPhyAddress;\r
EDKII_IOMMU_PPI *IoMmu;\r
\r
- *HostAddress = NULL;\r
+ *HostAddress = NULL;\r
*DeviceAddress = 0;\r
\r
IoMmu = GetIoMmu ();\r
return EFI_OUT_OF_RESOURCES;\r
}\r
\r
- NumberOfBytes = EFI_PAGES_TO_SIZE(Pages);\r
- Status = IoMmu->Map (\r
- IoMmu,\r
- EdkiiIoMmuOperationBusMasterCommonBuffer,\r
- *HostAddress,\r
- &NumberOfBytes,\r
- DeviceAddress,\r
- Mapping\r
- );\r
+ NumberOfBytes = EFI_PAGES_TO_SIZE (Pages);\r
+ Status = IoMmu->Map (\r
+ IoMmu,\r
+ EdkiiIoMmuOperationBusMasterCommonBuffer,\r
+ *HostAddress,\r
+ &NumberOfBytes,\r
+ DeviceAddress,\r
+ Mapping\r
+ );\r
if (EFI_ERROR (Status)) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
+\r
Status = IoMmu->SetAttribute (\r
IoMmu,\r
*Mapping,\r
if (EFI_ERROR (Status)) {\r
return EFI_OUT_OF_RESOURCES;\r
}\r
- *HostAddress = (VOID *)(UINTN)HostPhyAddress;\r
+\r
+ *HostAddress = (VOID *)(UINTN)HostPhyAddress;\r
*DeviceAddress = HostPhyAddress;\r
- *Mapping = NULL;\r
+ *Mapping = NULL;\r
}\r
+\r
return Status;\r
}\r
\r
**/\r
EFI_STATUS\r
IoMmuFreeBuffer (\r
- IN UINTN Pages,\r
- IN VOID *HostAddress,\r
- IN VOID *Mapping\r
+ IN UINTN Pages,\r
+ IN VOID *HostAddress,\r
+ IN VOID *Mapping\r
)\r
{\r
- EFI_STATUS Status;\r
- EDKII_IOMMU_PPI *IoMmu;\r
+ EFI_STATUS Status;\r
+ EDKII_IOMMU_PPI *IoMmu;\r
\r
IoMmu = GetIoMmu ();\r
\r
} else {\r
Status = EFI_SUCCESS;\r
}\r
+\r
return Status;\r
}\r