Message ID | 1409235244-25783-13-git-send-email-ard.biesheuvel@linaro.org |
---|---|
State | New |
Headers | show |
On 08/28/14 16:14, Ard Biesheuvel wrote: > This introduces an implementation of ArmPlatformSysConfigLib for virtual > machines. This is currently a stub, but some peripheral drivers (such as > the PL031 RTC driver) rely on one to be available. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Michael Casadevall <michael.casadevall@linaro.org> > Acked-by: Laszlo Ersek <lersek@redhat.com> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> > --- > .../ArmVirtualizationPlatformSysConfigLib.c | 90 ++++++++++++++++++++++ > .../ArmVirtualizationPlatformSysConfigLib.inf | 35 +++++++++ > 2 files changed, 125 insertions(+) > create mode 100644 ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c > create mode 100644 ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf > > diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c > new file mode 100644 > index 000000000000..725042214303 > --- /dev/null > +++ b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c > @@ -0,0 +1,90 @@ > +/** @file > + > + Copyright (c) 2011-2012, ARM Ltd. All rights reserved.<BR> > + Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR> > + > + 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 <Base.h> > +#include <Library/IoLib.h> > +#include <Library/DebugLib.h> > + > +#include <Library/ArmPlatformSysConfigLib.h> > +#include <ArmPlatform.h> > + > + > +RETURN_STATUS > +ArmPlatformSysConfigInitialize ( > + VOID > + ) > +{ > + return RETURN_SUCCESS; > +} > + > +/*************************************** > + * GENERAL FUNCTION: AccessSysCfgRegister > + * Interacts with > + * SYS_CFGSTAT > + * SYS_CFGDATA > + * SYS_CFGCTRL > + * for setting and for reading out values > + ***************************************/ > + > +RETURN_STATUS > +AccessSysCfgRegister ( > + IN UINT32 ReadWrite, > + IN UINT32 Function, > + IN UINT32 Site, > + IN UINT32 Position, > + IN UINT32 Device, > + IN OUT UINT32* Data > + ) > +{ > + return RETURN_UNSUPPORTED; > +} > + > +RETURN_STATUS > +ArmPlatformSysConfigGet ( > + IN SYS_CONFIG_FUNCTION Function, > + OUT UINT32* Value > + ) > +{ > + return RETURN_UNSUPPORTED; > +} > + > +RETURN_STATUS > +ArmPlatformSysConfigGetValues ( > + IN SYS_CONFIG_FUNCTION Function, > + IN UINTN Size, > + OUT UINT32* Values > + ) > +{ > + return RETURN_UNSUPPORTED; > +} > + > +RETURN_STATUS > +ArmPlatformSysConfigSet ( > + IN SYS_CONFIG_FUNCTION Function, > + IN UINT32 Value > + ) > +{ > + return RETURN_UNSUPPORTED; > +} > + > +RETURN_STATUS > +ArmPlatformSysConfigSetDevice ( > + IN SYS_CONFIG_FUNCTION Function, > + IN UINT32 Device, > + IN UINT32 Value > + ) > +{ > + return RETURN_UNSUPPORTED; > +} > diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf > new file mode 100644 > index 000000000000..deaccdc30a0f > --- /dev/null > +++ b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf > @@ -0,0 +1,35 @@ > +#/** @file > +# > +# Component description file for AArch64VirtualizationSysConfigLib module > +# > +# Copyright (c) 2011-2012, ARM Ltd. All rights reserved.<BR> > +# Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR> > +# > +# 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. > +# > +#**/ > + > +[Defines] > + INF_VERSION = 0x00010005 > + BASE_NAME = ArmVirtualizationPlatformSysConfigLib > + FILE_GUID = b5988e68-a2cc-49ac-9ca8-8cc78420ae45 > + MODULE_TYPE = BASE > + VERSION_STRING = 1.0 > + LIBRARY_CLASS = ArmPlatformSysConfigLib > + > +[Sources.common] > + ArmVirtualizationPlatformSysConfigLib.c > + > +[Packages] > + MdePkg/MdePkg.dec > + ArmPlatformPkg/ArmPlatformPkg.dec > + > +[LibraryClasses] > + BaseLib > + IoLib > Search this patch for "AArch64VirtualizationSysConfigLib" :) If you want, you can fix that up for v6; same as you already did with BASE_NAME. My ACK stands. Thanks, Laszlo ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/
> -----Original Message----- > From: Laszlo Ersek [mailto:lersek@redhat.com] > Sent: 28 August 2014 23:08 > To: Ard Biesheuvel; Olivier Martin; edk2-devel@lists.sourceforge.net; > peter.maydell@linaro.org; christoffer.dall@linaro.org; > drjones@redhat.com; ilias.biris@linaro.org; leif.lindholm@linaro.org > Cc: Michael Casadevall > Subject: Re: [PATCH v4 12/16] ArmVirtualizationPkg: add > ArmVirtualizationPlatformSysConfigLib library > > On 08/28/14 16:14, Ard Biesheuvel wrote: > > This introduces an implementation of ArmPlatformSysConfigLib for > virtual > > machines. This is currently a stub, but some peripheral drivers (such > as > > the PL031 RTC driver) rely on one to be available. > > > > Contributed-under: TianoCore Contribution Agreement 1.0 > > Signed-off-by: Michael Casadevall <michael.casadevall@linaro.org> > > Acked-by: Laszlo Ersek <lersek@redhat.com> > > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> > > --- > > Search this patch for "AArch64VirtualizationSysConfigLib" :) > > If you want, you can fix that up for v6; same as you already did with > BASE_NAME. My ACK stands. > > Thanks, > Laszlo The v6 would also be a good opportunity to remove the trailing spaces from ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConf igLib/ArmVirtualizationPlatformSysConfigLib.inf and remove the unused [LibraryClasses] and include headers. ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/
diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c new file mode 100644 index 000000000000..725042214303 --- /dev/null +++ b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.c @@ -0,0 +1,90 @@ +/** @file + + Copyright (c) 2011-2012, ARM Ltd. All rights reserved.<BR> + Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR> + + 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 <Base.h> +#include <Library/IoLib.h> +#include <Library/DebugLib.h> + +#include <Library/ArmPlatformSysConfigLib.h> +#include <ArmPlatform.h> + + +RETURN_STATUS +ArmPlatformSysConfigInitialize ( + VOID + ) +{ + return RETURN_SUCCESS; +} + +/*************************************** + * GENERAL FUNCTION: AccessSysCfgRegister + * Interacts with + * SYS_CFGSTAT + * SYS_CFGDATA + * SYS_CFGCTRL + * for setting and for reading out values + ***************************************/ + +RETURN_STATUS +AccessSysCfgRegister ( + IN UINT32 ReadWrite, + IN UINT32 Function, + IN UINT32 Site, + IN UINT32 Position, + IN UINT32 Device, + IN OUT UINT32* Data + ) +{ + return RETURN_UNSUPPORTED; +} + +RETURN_STATUS +ArmPlatformSysConfigGet ( + IN SYS_CONFIG_FUNCTION Function, + OUT UINT32* Value + ) +{ + return RETURN_UNSUPPORTED; +} + +RETURN_STATUS +ArmPlatformSysConfigGetValues ( + IN SYS_CONFIG_FUNCTION Function, + IN UINTN Size, + OUT UINT32* Values + ) +{ + return RETURN_UNSUPPORTED; +} + +RETURN_STATUS +ArmPlatformSysConfigSet ( + IN SYS_CONFIG_FUNCTION Function, + IN UINT32 Value + ) +{ + return RETURN_UNSUPPORTED; +} + +RETURN_STATUS +ArmPlatformSysConfigSetDevice ( + IN SYS_CONFIG_FUNCTION Function, + IN UINT32 Device, + IN UINT32 Value + ) +{ + return RETURN_UNSUPPORTED; +} diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf new file mode 100644 index 000000000000..deaccdc30a0f --- /dev/null +++ b/ArmPlatformPkg/ArmVirtualizationPkg/Library/ArmVirtualizationPlatformSysConfigLib/ArmVirtualizationPlatformSysConfigLib.inf @@ -0,0 +1,35 @@ +#/** @file +# +# Component description file for AArch64VirtualizationSysConfigLib module +# +# Copyright (c) 2011-2012, ARM Ltd. All rights reserved.<BR> +# Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR> +# +# 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. +# +#**/ + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = ArmVirtualizationPlatformSysConfigLib + FILE_GUID = b5988e68-a2cc-49ac-9ca8-8cc78420ae45 + MODULE_TYPE = BASE + VERSION_STRING = 1.0 + LIBRARY_CLASS = ArmPlatformSysConfigLib + +[Sources.common] + ArmVirtualizationPlatformSysConfigLib.c + +[Packages] + MdePkg/MdePkg.dec + ArmPlatformPkg/ArmPlatformPkg.dec + +[LibraryClasses] + BaseLib + IoLib