]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Omap35xxPkg/Gpio/Gpio.c
BaseTools/Capsule: Do not support -o with --dump-info
[mirror_edk2.git] / Omap35xxPkg / Gpio / Gpio.c
index 83bbe5b1105168bf7f79382e40bdf04a1472b1fc..4d713f7bf58dd40a2d90f3fd8b23ba91d81d1d48 100644 (file)
-/** @file
-
-  Copyright (c) 2008-2009, Apple Inc. All rights reserved.
-  
-  All rights reserved. This program and the accompanying materials
-  are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
-  http://opensource.org/licenses/bsd-license.php
-
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
-**/
-
-#include <Uefi.h>
-
-#include <Library/IoLib.h>
-#include <Library/OmapLib.h>
-#include <Library/UefiBootServicesTableLib.h>
-
-#include <Protocol/EmbeddedGpio.h>
-
-#include <Omap3530/Omap3530.h>
-
-EFI_STATUS
-Get (
-  IN  EMBEDDED_GPIO     *This,
-  IN  EMBEDDED_GPIO_PIN Gpio,
-  OUT UINTN               *Value
-  )
-{
-  UINTN  Port;
-  UINTN  Pin;
-  UINT32 DataInRegister;
-
-  if (Value == NULL)
-  {
-    return EFI_UNSUPPORTED;
-  }
-
-  Port    = GPIO_PORT(Gpio);
-  Pin     = GPIO_PIN(Gpio);
-
-  DataInRegister = GpioBase(Port) + GPIO_DATAIN;
-
-  if (MmioRead32 (DataInRegister) & GPIO_DATAIN_MASK(Pin)) {
-    *Value = 1;
-  } else {
-    *Value = 0;
-  }
-
-  return EFI_SUCCESS;
-}
-
-EFI_STATUS
-Set (
-  IN  EMBEDDED_GPIO       *This,
-  IN  EMBEDDED_GPIO_PIN   Gpio,
-  IN  EMBEDDED_GPIO_MODE  Mode
-  )
-{
-  UINTN  Port;
-  UINTN  Pin;
-  UINT32 OutputEnableRegister;
-  UINT32 SetDataOutRegister;
-  UINT32 ClearDataOutRegister;
-
-  Port    = GPIO_PORT(Gpio);
-  Pin     = GPIO_PIN(Gpio);
-
-  OutputEnableRegister = GpioBase(Port) + GPIO_OE;
-  SetDataOutRegister   = GpioBase(Port) + GPIO_SETDATAOUT;
-  ClearDataOutRegister = GpioBase(Port) + GPIO_CLEARDATAOUT;
-
-  switch (Mode)
-  {
-    case GPIO_MODE_INPUT:
-      MmioAndThenOr32(OutputEnableRegister, ~GPIO_OE_MASK(Pin), GPIO_OE_INPUT(Pin));
-      break;
-
-    case GPIO_MODE_OUTPUT_0:
-      MmioWrite32 (ClearDataOutRegister, GPIO_CLEARDATAOUT_BIT(Pin));
-      MmioAndThenOr32(OutputEnableRegister, ~GPIO_OE_MASK(Pin), GPIO_OE_OUTPUT(Pin));
-      break;
-
-    case GPIO_MODE_OUTPUT_1:
-      MmioWrite32 (SetDataOutRegister, GPIO_SETDATAOUT_BIT(Pin));
-      MmioAndThenOr32(OutputEnableRegister, ~GPIO_OE_MASK(Pin), GPIO_OE_OUTPUT(Pin));
-      break;
-
-    default:
-      return EFI_UNSUPPORTED;
-  }
-
-  return EFI_SUCCESS;
-}
-
-EFI_STATUS
-GetMode (
-  IN  EMBEDDED_GPIO       *This,
-  IN  EMBEDDED_GPIO_PIN   Gpio,
-  OUT EMBEDDED_GPIO_MODE  *Mode
-  )
-{
-  return EFI_UNSUPPORTED;
-}
-
-EFI_STATUS
-SetPull (
-  IN  EMBEDDED_GPIO       *This,
-  IN  EMBEDDED_GPIO_PIN   Gpio,
-  IN  EMBEDDED_GPIO_PULL  Direction
-  )
-{
-  return EFI_UNSUPPORTED;
-}
-
-EMBEDDED_GPIO Gpio = {
-  Get,
-  Set,
-  GetMode,
-  SetPull
-};
-
-EFI_STATUS
-GpioInitialize (
-  IN EFI_HANDLE         ImageHandle,
-  IN EFI_SYSTEM_TABLE   *SystemTable
-  )
-{
-  EFI_STATUS  Status;
-  
-  Status = gBS->InstallMultipleProtocolInterfaces(&ImageHandle, &gEmbeddedGpioProtocolGuid, &Gpio, NULL);
-  return Status;
-}
+/** @file\r
+\r
+  Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
+\r
+  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
+\r
+**/\r
+\r
+#include <Uefi.h>\r
+\r
+#include <Library/IoLib.h>\r
+#include <Library/OmapLib.h>\r
+#include <Library/UefiBootServicesTableLib.h>\r
+\r
+#include <Protocol/EmbeddedGpio.h>\r
+\r
+#include <Omap3530/Omap3530.h>\r
+\r
+EFI_STATUS\r
+Get (\r
+  IN  EMBEDDED_GPIO     *This,\r
+  IN  EMBEDDED_GPIO_PIN Gpio,\r
+  OUT UINTN               *Value\r
+  )\r
+{\r
+  UINTN  Port;\r
+  UINTN  Pin;\r
+  UINT32 DataInRegister;\r
+\r
+  if (Value == NULL)\r
+  {\r
+    return EFI_UNSUPPORTED;\r
+  }\r
+\r
+  Port    = GPIO_PORT(Gpio);\r
+  Pin     = GPIO_PIN(Gpio);\r
+\r
+  DataInRegister = GpioBase(Port) + GPIO_DATAIN;\r
+\r
+  if (MmioRead32 (DataInRegister) & GPIO_DATAIN_MASK(Pin)) {\r
+    *Value = 1;\r
+  } else {\r
+    *Value = 0;\r
+  }\r
+\r
+  return EFI_SUCCESS;\r
+}\r
+\r
+EFI_STATUS\r
+Set (\r
+  IN  EMBEDDED_GPIO       *This,\r
+  IN  EMBEDDED_GPIO_PIN   Gpio,\r
+  IN  EMBEDDED_GPIO_MODE  Mode\r
+  )\r
+{\r
+  UINTN  Port;\r
+  UINTN  Pin;\r
+  UINT32 OutputEnableRegister;\r
+  UINT32 SetDataOutRegister;\r
+  UINT32 ClearDataOutRegister;\r
+\r
+  Port    = GPIO_PORT(Gpio);\r
+  Pin     = GPIO_PIN(Gpio);\r
+\r
+  OutputEnableRegister = GpioBase(Port) + GPIO_OE;\r
+  SetDataOutRegister   = GpioBase(Port) + GPIO_SETDATAOUT;\r
+  ClearDataOutRegister = GpioBase(Port) + GPIO_CLEARDATAOUT;\r
+\r
+  switch (Mode)\r
+  {\r
+    case GPIO_MODE_INPUT:\r
+      MmioAndThenOr32(OutputEnableRegister, ~GPIO_OE_MASK(Pin), GPIO_OE_INPUT(Pin));\r
+      break;\r
+\r
+    case GPIO_MODE_OUTPUT_0:\r
+      MmioWrite32 (ClearDataOutRegister, GPIO_CLEARDATAOUT_BIT(Pin));\r
+      MmioAndThenOr32(OutputEnableRegister, ~GPIO_OE_MASK(Pin), GPIO_OE_OUTPUT(Pin));\r
+      break;\r
+\r
+    case GPIO_MODE_OUTPUT_1:\r
+      MmioWrite32 (SetDataOutRegister, GPIO_SETDATAOUT_BIT(Pin));\r
+      MmioAndThenOr32(OutputEnableRegister, ~GPIO_OE_MASK(Pin), GPIO_OE_OUTPUT(Pin));\r
+      break;\r
+\r
+    default:\r
+      return EFI_UNSUPPORTED;\r
+  }\r
+\r
+  return EFI_SUCCESS;\r
+}\r
+\r
+EFI_STATUS\r
+GetMode (\r
+  IN  EMBEDDED_GPIO       *This,\r
+  IN  EMBEDDED_GPIO_PIN   Gpio,\r
+  OUT EMBEDDED_GPIO_MODE  *Mode\r
+  )\r
+{\r
+  return EFI_UNSUPPORTED;\r
+}\r
+\r
+EFI_STATUS\r
+SetPull (\r
+  IN  EMBEDDED_GPIO       *This,\r
+  IN  EMBEDDED_GPIO_PIN   Gpio,\r
+  IN  EMBEDDED_GPIO_PULL  Direction\r
+  )\r
+{\r
+  return EFI_UNSUPPORTED;\r
+}\r
+\r
+EMBEDDED_GPIO Gpio = {\r
+  Get,\r
+  Set,\r
+  GetMode,\r
+  SetPull\r
+};\r
+\r
+EFI_STATUS\r
+GpioInitialize (\r
+  IN EFI_HANDLE         ImageHandle,\r
+  IN EFI_SYSTEM_TABLE   *SystemTable\r
+  )\r
+{\r
+  EFI_STATUS  Status;\r
+\r
+  Status = gBS->InstallMultipleProtocolInterfaces(&ImageHandle, &gEmbeddedGpioProtocolGuid, &Gpio, NULL);\r
+  return Status;\r
+}\r