EmbeddedPkg: Introduced a separate SerialPortExtLib library
authoroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 12 Mar 2013 00:40:11 +0000 (00:40 +0000)
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Tue, 12 Mar 2013 00:40:11 +0000 (00:40 +0000)
Formerly only the header was defined and it was expecting the SerialPortExtLib
interface to be implemented by SerialPortLib if supported. This behaviour was
not conform to the EDK2 framework.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14173 6f19259b-4bc3-4df7-8a09-765794883524

14 files changed:
ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb.dsc.inc
ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc
ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.c [new file with mode: 0644]
ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.inf [new file with mode: 0644]
ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.c
BeagleBoardPkg/BeagleBoardPkg.dsc
EmbeddedPkg/EmbeddedPkg.dsc
EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.c [new file with mode: 0644]
EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf [new file with mode: 0644]
EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.c
EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.inf
EmbeddedPkg/SerialDxe/SerialDxe.inf
Omap35xxPkg/Library/SerialPortLib/SerialPortLib.c
Omap35xxPkg/Library/SerialPortLib/SerialPortLib.inf

index 52b324c..bc4807f 100644 (file)
@@ -67,6 +67,7 @@
   EfiResetSystemLib|ArmPlatformPkg/ArmRealViewEbPkg/Library/ResetSystemLib/ResetSystemLib.inf\r
   RealTimeClockLib|ArmPlatformPkg/Library/PL031RealTimeClockLib/PL031RealTimeClockLib.inf\r
   SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf\r
+  SerialPortExtLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.inf\r
   TimerLib|ArmPlatformPkg/Library/SP804TimerLib/SP804TimerLib.inf  \r
   # ARM PL011 UART Driver\r
   PL011UartLib|ArmPlatformPkg/Drivers/PL011Uart/PL011Uart.inf\r
index bbd00fd..47dc0ff 100644 (file)
@@ -77,6 +77,7 @@
   # ARM PL011 UART Driver\r
   PL011UartLib|ArmPlatformPkg/Drivers/PL011Uart/PL011Uart.inf\r
   SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortLib.inf\r
+  SerialPortExtLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.inf\r
   # ARM SP804 Dual Timer Driver\r
   TimerLib|ArmPlatformPkg/Library/SP804TimerLib/SP804TimerLib.inf\r
 \r
diff --git a/ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.c b/ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.c
new file mode 100644 (file)
index 0000000..9bfe42e
--- /dev/null
@@ -0,0 +1,103 @@
+/** @file\r
+  Serial I/O Port library functions with no library constructor/destructor\r
+\r
+  Copyright (c) 2012, ARM Ltd. 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 <Base.h>\r
+\r
+#include <Library/IoLib.h>\r
+#include <Library/PcdLib.h>\r
+#include <Library/SerialPortExtLib.h>\r
+\r
+#include <Drivers/PL011Uart.h>\r
+\r
+/**\r
+  Set new attributes to PL011.\r
+\r
+  @param  BaudRate                The baud rate of the serial device. If the baud rate is not supported,\r
+                                  the speed will be reduced down to the nearest supported one and the\r
+                                  variable's value will be updated accordingly.\r
+  @param  ReceiveFifoDepth        The number of characters the device will buffer on input. If the specified\r
+                                  value is not supported, the variable's value will be reduced down to the\r
+                                  nearest supported one.\r
+  @param  Timeout                 If applicable, the number of microseconds the device will wait\r
+                                  before timing out a Read or a Write operation.\r
+  @param  Parity                  If applicable, this is the EFI_PARITY_TYPE that is computed or checked\r
+                                  as each character is transmitted or received. If the device does not\r
+                                  support parity, the value is the default parity value.\r
+  @param  DataBits                The number of data bits in each character\r
+  @param  StopBits                If applicable, the EFI_STOP_BITS_TYPE number of stop bits per character.\r
+                                  If the device does not support stop bits, the value is the default stop\r
+                                  bit value.\r
+\r
+  @retval EFI_SUCCESS             All attributes were set correctly on the serial device.\r
+  @retval EFI_INVALID_PARAMETERS  One or more of the attributes has an unsupported value.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+SerialPortSetAttributes (\r
+  IN UINT64              BaudRate,\r
+  IN UINT32              ReceiveFifoDepth,\r
+  IN UINT32              Timeout,\r
+  IN EFI_PARITY_TYPE     Parity,\r
+  IN UINT8               DataBits,\r
+  IN EFI_STOP_BITS_TYPE  StopBits\r
+  )\r
+{\r
+  return PL011UartInitializePort (\r
+        (UINTN)PcdGet64 (PcdSerialRegisterBase),\r
+        BaudRate,\r
+        ReceiveFifoDepth,\r
+        Parity,\r
+        DataBits,\r
+        StopBits);\r
+}\r
+\r
+/**\r
+  Set the serial device control bits.\r
+\r
+  @param  Control                 Control bits which are to be set on the serial device.\r
+\r
+  @retval EFI_SUCCESS             The new control bits were set on the serial device.\r
+  @retval EFI_UNSUPPORTED         The serial device does not support this operation.\r
+  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+SerialPortSetControl (\r
+  IN UINT32                  Control\r
+  )\r
+{\r
+  return PL011UartSetControl ((UINTN)PcdGet64 (PcdSerialRegisterBase), Control);\r
+}\r
+\r
+/**\r
+  Get the serial device control bits.\r
+\r
+  @param  Control                 Control signals read from the serial device.\r
+\r
+  @retval EFI_SUCCESS             The control bits were read from the serial device.\r
+  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+SerialPortGetControl (\r
+  OUT UINT32                  *Control\r
+  )\r
+{\r
+  return PL011UartGetControl ((UINTN)PcdGet64 (PcdSerialRegisterBase), Control);\r
+}\r
+\r
diff --git a/ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.inf b/ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortExtLib.inf
new file mode 100644 (file)
index 0000000..89c8c9c
--- /dev/null
@@ -0,0 +1,43 @@
+#/** @file\r
+#  \r
+#  Component description file for PL011SerialPortLib module\r
+#  \r
+#  Copyright (c) 2011-2012, ARM Ltd. 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
+[Defines]\r
+  INF_VERSION                    = 0x00010005\r
+  BASE_NAME                      = PL011SerialPortExtLib\r
+  FILE_GUID                      = 2be281f1-c506-4558-bd98-d6930e6de9d6\r
+  MODULE_TYPE                    = BASE\r
+  VERSION_STRING                 = 1.0\r
+  LIBRARY_CLASS                  = SerialPortExtLib\r
+\r
+[Sources.common]\r
+  PL011SerialPortExtLib.c\r
+\r
+[LibraryClasses]\r
+  PL011UartLib\r
+  PcdLib\r
+\r
+[Packages]\r
+  EmbeddedPkg/EmbeddedPkg.dec\r
+  MdePkg/MdePkg.dec\r
+  MdeModulePkg/MdeModulePkg.dec\r
+  ArmPlatformPkg/ArmPlatformPkg.dec\r
+\r
+[Pcd]\r
+  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase\r
+  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate\r
+  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits\r
+  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity\r
+  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits\r
index 20e8882..09033db 100644 (file)
@@ -103,82 +103,3 @@ SerialPortPoll (
   return PL011UartPoll ((UINTN)PcdGet64 (PcdSerialRegisterBase));\r
 }\r
 \r
-/**\r
-  Set new attributes to PL011.\r
-\r
-  @param  BaudRate                The baud rate of the serial device. If the baud rate is not supported,\r
-                                  the speed will be reduced down to the nearest supported one and the\r
-                                  variable's value will be updated accordingly.\r
-  @param  ReceiveFifoDepth        The number of characters the device will buffer on input. If the specified\r
-                                  value is not supported, the variable's value will be reduced down to the\r
-                                  nearest supported one.\r
-  @param  Timeout                 If applicable, the number of microseconds the device will wait\r
-                                  before timing out a Read or a Write operation.\r
-  @param  Parity                  If applicable, this is the EFI_PARITY_TYPE that is computer or checked\r
-                                  as each character is transmitted or received. If the device does not\r
-                                  support parity, the value is the default parity value.\r
-  @param  DataBits                The number of data bits in each character\r
-  @param  StopBits                If applicable, the EFI_STOP_BITS_TYPE number of stop bits per character.\r
-                                  If the device does not support stop bits, the value is the default stop\r
-                                  bit value.\r
-\r
-  @retval EFI_SUCCESS             All attributes were set correctly on the serial device.\r
-  @retval EFI_INVALID_PARAMETERS  One or more of the attributes has an unsupported value.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortSetAttributes (\r
-  IN UINT64              BaudRate,\r
-  IN UINT32              ReceiveFifoDepth,\r
-  IN UINT32              Timeout,\r
-  IN EFI_PARITY_TYPE     Parity,\r
-  IN UINT8               DataBits,\r
-  IN EFI_STOP_BITS_TYPE  StopBits\r
-  )\r
-{\r
-  return PL011UartInitializePort (\r
-        (UINTN)PcdGet64 (PcdSerialRegisterBase),\r
-        BaudRate,\r
-        ReceiveFifoDepth,\r
-        Parity,\r
-        DataBits,\r
-        StopBits);\r
-}\r
-\r
-/**\r
-  Set the serial device control bits.\r
-\r
-  @param  Control                 Control bits which are to be set on the serial device.\r
-\r
-  @retval EFI_SUCCESS             The new control bits were set on the serial device.\r
-  @retval EFI_UNSUPPORTED         The serial device does not support this operation.\r
-  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortSetControl (\r
-  IN UINT32                  Control\r
-  )\r
-{\r
-  return PL011UartSetControl((UINTN)PcdGet64 (PcdSerialRegisterBase), Control);\r
-}\r
-\r
-/**\r
-  Get the serial device control bits.\r
-\r
-  @param  Control                 Control signals read from the serial device.\r
-\r
-  @retval EFI_SUCCESS             The control bits were read from the serial device.\r
-  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortGetControl (\r
-  OUT UINT32                  *Control\r
-  )\r
-{\r
-  return PL011UartGetControl((UINTN)PcdGet64 (PcdSerialRegisterBase), Control);\r
-}\r
index 0ae8150..1223944 100644 (file)
@@ -83,6 +83,7 @@
   PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf\r
   \r
   SerialPortLib|Omap35xxPkg/Library/SerialPortLib/SerialPortLib.inf\r
+  SerialPortExtLib|EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf \r
   SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf\r
   \r
   RealTimeClockLib|Omap35xxPkg/Library/RealTimeClockLib/RealTimeClockLib.inf\r
index e1a4c22..64b220c 100644 (file)
@@ -3,6 +3,7 @@
 #\r
 #\r
 # Copyright (c) 2007, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2012, ARM Ltd. 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
@@ -69,6 +70,7 @@
   PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf\r
   \r
   SerialPortLib|EmbeddedPkg/Library/TemplateSerialPortLib/TemplateSerialPortLib.inf\r
+  SerialPortExtLib|EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf\r
   RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf\r
   EfiResetSystemLib|EmbeddedPkg/Library/TemplateResetSystemLib/TemplateResetSystemLib.inf\r
   GdbSerialLib|EmbeddedPkg/Library/GdbSerialLib/GdbSerialLib.inf\r
diff --git a/EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.c b/EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.c
new file mode 100644 (file)
index 0000000..5a007c2
--- /dev/null
@@ -0,0 +1,79 @@
+/** @file\r
+  Extended Serial I/O Port library functions\r
+\r
+  Copyright (c) 2012, ARM Ltd. All rights reserved.\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 <Base.h>\r
+\r
+#include <Library/SerialPortLib.h>\r
+#include <Library/SerialPortExtLib.h>\r
+\r
+/**\r
+  Set the serial device control bits.\r
+\r
+  @return    Always return RETURN_UNSUPPORTED.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+SerialPortSetControl (\r
+    IN UINT32                   Control\r
+  )\r
+{\r
+  return RETURN_UNSUPPORTED;\r
+}\r
+\r
+/**\r
+  Get the serial device control bits.\r
+\r
+  @param  Control                 Control signals read from the serial device.\r
+\r
+  @retval EFI_SUCCESS             The control bits were read from the serial device.\r
+  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+SerialPortGetControl (\r
+  OUT UINT32                  *Control\r
+  )\r
+{\r
+  if (SerialPortPoll ()) {\r
+    // If a character is pending don't set EFI_SERIAL_INPUT_BUFFER_EMPTY\r
+    *Control = EFI_SERIAL_OUTPUT_BUFFER_EMPTY;\r
+  } else {\r
+    *Control = EFI_SERIAL_INPUT_BUFFER_EMPTY | EFI_SERIAL_OUTPUT_BUFFER_EMPTY;\r
+  }\r
+  return EFI_SUCCESS;\r
+}\r
+\r
+/**\r
+  Set the serial device attributes.\r
+\r
+  @return    Always return RETURN_UNSUPPORTED.\r
+\r
+**/\r
+RETURN_STATUS\r
+EFIAPI\r
+SerialPortSetAttributes (\r
+  IN UINT64              BaudRate,\r
+  IN UINT32              ReceiveFifoDepth,\r
+  IN UINT32              Timeout,\r
+  IN EFI_PARITY_TYPE     Parity,\r
+  IN UINT8               DataBits,\r
+  IN EFI_STOP_BITS_TYPE  StopBits\r
+  )\r
+{\r
+  return RETURN_UNSUPPORTED;\r
+}\r
+\r
diff --git a/EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf b/EmbeddedPkg/Library/TemplateSerialPortExtLib/TemplateSerialPortExtLib.inf
new file mode 100644 (file)
index 0000000..2e95405
--- /dev/null
@@ -0,0 +1,36 @@
+#/** @file\r
+# Template for Extended Serial Port Library for UEFI drivers\r
+#\r
+# Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2012, ARM Ltd. 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
+#  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
+\r
+[Defines]\r
+  INF_VERSION                    = 0x00010005\r
+  BASE_NAME                      = TemplateSerialPortExtLib\r
+  FILE_GUID                      = 231fe752-40ac-40b0-8d23-4e341309b964\r
+  MODULE_TYPE                    = BASE\r
+  VERSION_STRING                 = 1.0\r
+  LIBRARY_CLASS                  = SerialPortExtLib\r
+\r
+\r
+#\r
+#  VALID_ARCHITECTURES           = ARM IA32 X64 IPF EBC\r
+#\r
+\r
+[Sources.common]\r
+  TemplateSerialPortExtLib.c\r
+\r
+[Packages]\r
+  MdePkg/MdePkg.dec\r
+  EmbeddedPkg/EmbeddedPkg.dec\r
+\r
index 0110189..5d9bb07 100644 (file)
@@ -18,7 +18,6 @@
 \r
 \r
 #include <Library/SerialPortLib.h>\r
-#include <Library/SerialPortExtLib.h>\r
 \r
 /**\r
 \r
@@ -36,65 +35,6 @@ SerialPortInitialize (
   return RETURN_UNSUPPORTED;\r
 }\r
 \r
-/**\r
-  Set the serial device control bits.\r
-\r
-  @return    Always return EFI_UNSUPPORTED.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortSetControl (\r
-    IN UINT32                   Control\r
-  )\r
-{\r
-  return RETURN_UNSUPPORTED;\r
-}\r
-\r
-/**\r
-  Get the serial device control bits.\r
-\r
-  @param  Control                 Control signals read from the serial device.\r
-\r
-  @retval EFI_SUCCESS             The control bits were read from the serial device.\r
-  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortGetControl (\r
-  OUT UINT32                  *Control\r
-  )\r
-{\r
-  if (SerialPortPoll ()) {\r
-    // If a character is pending don't set EFI_SERIAL_INPUT_BUFFER_EMPTY\r
-    *Control = EFI_SERIAL_OUTPUT_BUFFER_EMPTY;\r
-  } else {\r
-    *Control = EFI_SERIAL_INPUT_BUFFER_EMPTY | EFI_SERIAL_OUTPUT_BUFFER_EMPTY;\r
-  }\r
-  return EFI_SUCCESS;\r
-}\r
-\r
-/**\r
-  Set the serial device attributes.\r
-\r
-  @return    Always return EFI_UNSUPPORTED.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortSetAttributes (\r
-  IN OUT  UINT64              *BaudRate,\r
-  IN OUT  UINT32              *ReceiveFifoDepth,\r
-  IN OUT  UINT32              *Timeout,\r
-  IN OUT  EFI_PARITY_TYPE     *Parity,\r
-  IN OUT  UINT8               *DataBits,\r
-  IN OUT  EFI_STOP_BITS_TYPE  *StopBits\r
-  )\r
-{\r
-  return RETURN_UNSUPPORTED;\r
-}\r
-\r
 /**\r
   Write data to serial device.\r
 \r
index 1bc1fc0..f1ece19 100644 (file)
@@ -1,8 +1,8 @@
 #/** @file\r
-# Memory Status Code Library for UEFI drivers\r
+# Template for Serial Port Library for UEFI drivers\r
 #\r
-# Lib to provide memory journal status code reporting Routines\r
 # Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2012, ARM Ltd. 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
   INF_VERSION                    = 0x00010005\r
   BASE_NAME                      = TemplateSerialPortLib\r
   FILE_GUID                      = A9133571-AD4B-4457-94A8-A9CC2CE7574F\r
-  MODULE_TYPE                    = PEIM\r
+  MODULE_TYPE                    = BASE\r
   VERSION_STRING                 = 1.0\r
   LIBRARY_CLASS                  = SerialPortLib\r
 \r
 \r
 #\r
-#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC\r
+#  VALID_ARCHITECTURES           = ARM IA32 X64 IPF EBC\r
 #\r
 \r
 [Sources.common]\r
index 37e8e0e..ed7f377 100644 (file)
@@ -39,6 +39,7 @@
   DebugLib\r
   UefiDriverEntryPoint\r
   SerialPortLib\r
+  SerialPortExtLib\r
 \r
 [Protocols]\r
   gEfiSerialIoProtocolGuid    \r
index 9a70593..2f93140 100644 (file)
@@ -17,7 +17,6 @@
 #include <Base.h>\r
 #include <Library/DebugLib.h>\r
 #include <Library/SerialPortLib.h>\r
-#include <Library/SerialPortExtLib.h>\r
 #include <Library/PcdLib.h>\r
 #include <Library/IoLib.h>\r
 #include <Library/OmapLib.h>\r
@@ -123,57 +122,3 @@ SerialPortPoll (
   }\r
 }\r
 \r
-/**\r
-  Set the serial device control bits.\r
-\r
-  @return    Always return EFI_UNSUPPORTED.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortSetControl (\r
-  IN UINT32                   Control\r
-  )\r
-{\r
-  return RETURN_SUCCESS;\r
-}\r
-\r
-/**\r
-  Get the serial device control bits.\r
-\r
-  @param  Control                 Control signals read from the serial device.\r
-\r
-  @retval EFI_SUCCESS             The control bits were read from the serial device.\r
-  @retval EFI_DEVICE_ERROR        The serial device is not functioning correctly.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortGetControl (\r
-  OUT UINT32                  *Control\r
-  )\r
-{\r
-  return RETURN_SUCCESS;\r
-}\r
-\r
-\r
-/**\r
-  Set the serial device attributes.\r
-\r
-  @return    Always return EFI_UNSUPPORTED.\r
-\r
-**/\r
-RETURN_STATUS\r
-EFIAPI\r
-SerialPortSetAttributes (\r
-  IN UINT64              BaudRate,\r
-  IN UINT32              ReceiveFifoDepth,\r
-  IN UINT32              Timeout,\r
-  IN EFI_PARITY_TYPE     Parity,\r
-  IN UINT8               DataBits,\r
-  IN EFI_STOP_BITS_TYPE  StopBits\r
-  )\r
-{\r
-  return RETURN_SUCCESS;\r
-}\r
-\r
index a7d4fad..340f4a6 100644 (file)
   INF_VERSION                    = 0x00010005\r
   BASE_NAME                      = BeagleBoardSerialPortLib\r
   FILE_GUID                      = 97546cbd-c0ff-4c48-ab0b-e4f58862acd3\r
-  MODULE_TYPE                    = PEIM\r
+  MODULE_TYPE                    = BASE\r
   VERSION_STRING                 = 1.0\r
   LIBRARY_CLASS                  = SerialPortLib\r
 \r
 \r
 #\r
-#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC\r
+#  VALID_ARCHITECTURES           = ARM IA32 X64 IPF EBC\r
 #\r
 \r
 [Sources.common]\r