On Sat, Oct 20, 2018 at 03:57:34AM +0200, Marcin Wojtas wrote: > This patch implements ArmadaBoarDescLib library for > Armada80x0Db and introduces ArmadaBoardDescGpioGet > routine with per-board I2C IO expander description. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Marcin Wojtas <m...@semihalf.com> > --- > Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc > | 3 ++ > > Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf > | 34 +++++++++++++ > > Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c > | 50 ++++++++++++++++++++ > 3 files changed, 87 insertions(+) > create mode 100644 > Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf > create mode 100644 > Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c > > diff --git a/Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc > b/Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc > index 92e2dc8..42f7bd3 100644 > --- a/Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc > +++ b/Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc > @@ -54,6 +54,9 @@ > [Components.AARCH64] > Silicon/Marvell/Armada7k8k/AcpiTables/Armada80x0Db.inf > > +[LibraryClasses.common] > + > ArmadaBoardDescLib|Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf > + > > ################################################################################ > # > # Pcd Section - list of all EDK II PCD Entries defined by this Platform > diff --git > a/Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf > > b/Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf > new file mode 100644 > index 0000000..2d39d96 > --- /dev/null > +++ > b/Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.inf > @@ -0,0 +1,34 @@ > +## @file > +# > +# Copyright (C) 2018, Marvell International Ltd. and its affiliates<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 = 0x0001001A > + BASE_NAME = Armada80x0DbBoardDescLib > + FILE_GUID = fee9e874-1481-4b4f-9882-966bd0d1310f > + MODULE_TYPE = BASE > + VERSION_STRING = 1.0 > + LIBRARY_CLASS = ArmadaBoardDescLib > + > +[Sources] > + Armada80x0DbBoardDescLib.c > + > +[Packages] > + MdeModulePkg/MdeModulePkg.dec > + MdePkg/MdePkg.dec > + Silicon/Marvell/Marvell.dec > + > +[LibraryClasses] > + DebugLib > + IoLib > diff --git > a/Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c > > b/Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c > new file mode 100644 > index 0000000..16561bc > --- /dev/null > +++ > b/Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoardDescLib.c > @@ -0,0 +1,50 @@ > +/** > +* > +* Copyright (C) 2018, Marvell International Ltd. and its affiliates. > +* > +* 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/ArmadaBoardDescLib.h> > +#include <Library/BaseMemoryLib.h> > +#include <Library/DebugLib.h> > +#include <Library/IoLib.h> > +#include <Library/MemoryAllocationLib.h> > +#include <Library/UefiBootServicesTableLib.h> > + > +#include <Protocol/MvGpio.h> > + > +STATIC MV_I2C_IO_EXPANDER_DESC mI2cIoExpanderDescTemplate[] = {
No objection to the above (apart from the I2c bit, see previous patches), but: this is a STATIC array - it doesn't need to worry about namespace. And it isn't really a template - it is the actual description. So ... you could just call it mGpioExpanders or something. Same I2c -> GPIO comment as for preceding patches. > + { > + PCA9555_ID, > + 0x21, > + 0x0, > + }, > + { > + PCA9555_ID, > + 0x25, > + 0x0, > + }, > +}; > + > +EFI_STATUS > +EFIAPI > +ArmadaBoardDescGpioGet ( > + IN OUT MV_I2C_IO_EXPANDER_DESC **I2cIoExpanderDesc, > + IN OUT UINTN *I2cIoExpanderCount > + ) > +{ > + *I2cIoExpanderCount = ARRAY_SIZE (mI2cIoExpanderDescTemplate); > + *I2cIoExpanderDesc = mI2cIoExpanderDescTemplate; > + > + return EFI_SUCCESS; > +} > -- > 2.7.4 > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel