From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: None (no SPF record) identity=mailfrom; client-ip=2607:f8b0:4864:20::142; helo=mail-it1-x142.google.com; envelope-from=mw@semihalf.com; receiver=edk2-devel@lists.01.org Received: from mail-it1-x142.google.com (mail-it1-x142.google.com [IPv6:2607:f8b0:4864:20::142]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 9E41521B02822 for ; Thu, 17 Jan 2019 04:26:24 -0800 (PST) Received: by mail-it1-x142.google.com with SMTP id h65so863404ith.3 for ; Thu, 17 Jan 2019 04:26:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=KvsQyGXPWxzrYYwEub77NtksZsfQuaFZhOEj98/zWtc=; b=nDuUGCy50GIiyT42UjdbqDRi2o7o4dznAYv+SgL2m4NSdI24oXD5GnSQHRbD2sUo79 FwwO5G7Zd91DM7j8tuRBGzxZbaGPqI1MViyKYnUMBjufMVqTI5TJzZdNhZnORPmkOpjK oAFMNwvng/+8wkiRARZKgJB60pXo91fGDbrQ3u3uqvdBvOBMu9sFyRIdziK22ViYh20j mcwU9h3f4ooRWKcvnG93Zwu5CQqJmO2OT6pGDlKoZH/jQN4MOA8I+Ons3UAo+rQWvNsI 5DR6NqCIE9WKJ9rF23J9knNHDI/eNquf58DQb1F8DrlvCUqgdPiT+AjXX8C3gL41jXZv To6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=KvsQyGXPWxzrYYwEub77NtksZsfQuaFZhOEj98/zWtc=; b=cwDyZij9lqzg6n3r+UK0ZeRub1pq0PG8lieh0Ragkd8x9pwLP2DBsk23cEuyglOjaY yrOz4SO1wfOHdxf4R7NMFOmJ3eW17MXgXKXFZRb3z2MuftMQ6jmx6m/AuZFHxxIlDCfm /fX7OxoPbaAFpO7O/35TS8j7l8vxRHs9jBjF+c5DBv+NXga74G0vpzVr0FigN7/cHS0F LcC0j7hyOV9trksZdTnLi9gS1JlQGq3PqpTTCDUeaaY2fNtX5iUQTdSL5o3CK53GBsuJ tpxdWRehD0T+riaET5f2fULfmIdPNMryJNyP3/1a4qOpvocnYc8igBW+Qs6POYmUCCrm c1XA== X-Gm-Message-State: AJcUukcnTB5J5x6R2pX0lHQeAKujbpsSXBQ5KZ8y1tk35PXmqd47Tq8f dsVk0qp/ZlVKGNge2BFkIk5gHecYy2sMgJNM8iuNXQVb X-Google-Smtp-Source: ALg8bN6qBNoerc+uZxbVyHbb+Je+/6WzoOqpLUw5sFPDUMtonnB8kDlxvlqpFup3VlvS5wkPm/J0k81Vx/Xqw1N6J+Y= X-Received: by 2002:a24:eb0b:: with SMTP id h11mr8301684itj.138.1547727983783; Thu, 17 Jan 2019 04:26:23 -0800 (PST) MIME-Version: 1.0 References: <1547723715-4562-1-git-send-email-mw@semihalf.com> <20190117120356.wabcsghw2tfu5qra@bivouac.eciton.net> In-Reply-To: <20190117120356.wabcsghw2tfu5qra@bivouac.eciton.net> From: Marcin Wojtas Date: Thu, 17 Jan 2019 13:26:11 +0100 Message-ID: To: Leif Lindholm Cc: edk2-devel-01 , Ard Biesheuvel , nadavh@marvell.com, "jsd@semihalf.com" , Grzegorz Jaszczyk , Kostya Porotchkin Subject: Re: [platforms: PATCH v3 00/12] Armada 7k8k GPIO support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Jan 2019 12:26:24 -0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Leif, czw., 17 sty 2019 o 13:04 Leif Lindholm napisa= =C5=82(a): > > So, I was about to say that apart from the "class" to be deleted from > 3/12 subject line, things were fine so I was going to fix that locally > and push. > > However. 3/12 is missing the Contributed-under tag. > Can you please separately confirm that it is intended to be > contributed under TianoCore Contribution Agreement 1.1? > Sure, done. Please let know if I should resubmit. Best regards, Marcin > / = Leif > > On Thu, Jan 17, 2019 at 12:15:03PM +0100, Marcin Wojtas wrote: > > Hi, > > > > I submit v3 of the GPIO patchset for the Marvell SoCs. > > The changes are not significant and they address all the comments > > from the previous version. Please find the details in the changelog > > below. > > > > Patches are available in the github: > > https://github.com/MarvellEmbeddedProcessors/edk2-open-platform/commits= /gpio-upstream-r20190117 > > > > I am looking forward to your feedback. > > > > Best regards, > > Marcin > > > > Changelog: > > v2->v3: > > * 1,2,4,12/12 > > - Add Leif's RB > > > > * 3/12 > > - Change MvGpio.h to be library header (Library/MvGpioLib.h) > > - Introduce MvGpioLib library > > - Add PCA_ID enums in this patch (instead from PCA9xxx addition) > > > > * 5,6/12 > > - Use PCA_ID enum from the beginning > > > > * 7/12 > > - Use static global variable and allocate it only only once > > - s/I2C/GPIO/ > > > > * 8/12 > > - Simplify error path after changing approach to not freeing > > already allocated GpioDescription in MvBoardDescDxe > > - Change signature to non-generic > > > > * 10/12 > > - Simplify error path after changing approach to not freeing > > already allocated GpioDescription in MvBoardDescDxe > > - No need to update PCA_ID in this patch > > > > v1->v2: > > * All > > - rebase on top of the master branch and Xenon changes > > > > * 1/12 > > - s/AP/AP806/ in order to avoid confusion > > - drop desc/DESC usage and improve variables naming > > - use GPIO_CONTROLLER from EmbeddedGpio.h instead of custom MV_SOC_GP= IO > > - update commit message > > > > * 2,3,4,5/12 > > - drop desc/DESC usage and improve variables naming > > - drop reference to I2c and use GpioExpander > > - improve commit logs > > > > * 6/12 > > - drop desc/DESC usage and improve variables naming > > - drop reference to I2c and use GpioExpander > > - remove global variable - same as for other interfaces the consumer > > is responsible for avoiding memory leak > > > > * 7/12 > > - use MV_GPIO_ prefix > > - switch to EMBEDDED_GPIO > > - remove custom Marvell GPIO Protocol and types > > - add subroutine to MvGpioGetProtocol and more coments to clarify the= code > > - add driver types and related enums in other commits > > > > * 8/12 > > - extend error path in the entry point, rename variables > > - use MV_GPIO_ prefix > > - switch to EMBEDDED_GPIO > > - remove custom Marvell GPIO Protocol and types > > - replace '!!' expression for obtaining pin state > > - remove BIT() macro > > - use generic mDevicePathTemplate name > > - put validate function under '#if !defined(MDEPKG_NDEBUG)' and > > call from inside ASSERT_EFI_ERROR, add comment > > - update commit message > > - add common enum for describing controllers > > - change authorship > > > > - 9/12 > > - Add Leif's RB > > > > * 10/12 > > - same modifications as 8/12 > > - use I2C flags directly and remove PCA95XX_OPERATION enum > > - add common enum for describing controllers > > > > * 11/12 > > - Add Leif's RB > > > > * 12/12 > > - Add local headers > > - Make STATIC names more generic > > - s/GetInitializerForType/NonDiscoverableDeviceInitializerGet/ > > - Use global enum for McBin GPIO controller > > > > > > Marcin Wojtas (12): > > Marvell/Library: ArmadaSoCDescLib: Add GPIO information > > Marvell/Library: ArmadaBoardDescLib: Add GPIO information > > Marvell/Library: Introduce MvGpioLib class > > SolidRun/Armada80x0McBin: Extend board description library with GPIO > > Marvell/Armada70x0Db: Extend board description library with GPIO > > Marvell/Armada80x0Db: Extend board description library with GPIO > > Marvell/Drivers: MvBoardDesc: Extend protocol with GPIO support > > Marvell/Drivers: MvGpioDxe: Introduce platform GPIO driver > > Marvell/Drivers: I2c: Use common header for macros > > Marvell/Drivers: MvPca95xxDxe: Introduce GPIO expander driver > > Marvell/Armada7k8k: Enable GPIO drivers compilation > > Marvell/Armada7k8k: Introduce NonDiscoverable device init routines > > > > Silicon/Marvell/Marvell.dec = | 2 + > > Silicon/Marvell/Armada7k8k/Armada7k8k.dsc.inc = | 3 + > > Platform/Marvell/Armada70x0Db/Armada70x0Db.dsc = | 7 +- > > Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc = | 3 + > > Platform/SolidRun/Armada80x0McBin/Armada80x0McBin.dsc = | 3 + > > Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoa= rdDescLib.inf | 1 + > > Platform/Marvell/Armada70x0Db/NonDiscoverableInitLib/NonDiscoverableIn= itLib.inf | 49 ++ > > Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoa= rdDescLib.inf | 1 + > > Platform/Marvell/Armada80x0Db/NonDiscoverableInitLib/NonDiscoverableIn= itLib.inf | 50 ++ > > Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80= x0McBinBoardDescLib.inf | 1 + > > Platform/SolidRun/Armada80x0McBin/NonDiscoverableInitLib/NonDiscoverab= leInitLib.inf | 50 ++ > > Silicon/Marvell/Armada7k8k/Drivers/PlatInitDxe/PlatInitDxe.inf = | 1 + > > Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCD= escLib.inf | 1 + > > Silicon/Marvell/Drivers/BoardDesc/MvBoardDescDxe.inf = | 1 + > > Silicon/Marvell/Drivers/Gpio/MvGpioDxe/MvGpioDxe.inf = | 44 ++ > > Silicon/Marvell/Drivers/Gpio/MvPca95xxDxe/MvPca95xxDxe.inf = | 45 ++ > > Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.inf = | 1 + > > Silicon/Marvell/Drivers/Net/MvMdioDxe/MvMdioDxe.inf = | 1 + > > Silicon/Marvell/Drivers/NonDiscoverableDxe/NonDiscoverableDxe.inf = | 1 + > > Silicon/Marvell/Drivers/SdMmc/XenonDxe/XenonDxe.inf = | 1 + > > Silicon/Marvell/Library/ComPhyLib/ComPhyLib.inf = | 1 + > > Silicon/Marvell/Library/IcuLib/IcuLib.inf = | 1 + > > Silicon/Marvell/Library/MvGpioLib/MvGpioLib.inf = | 32 + > > Silicon/Marvell/Library/UtmiPhyLib/UtmiPhyLib.inf = | 1 + > > Platform/Marvell/Armada70x0Db/NonDiscoverableInitLib/NonDiscoverableIn= itLib.h | 23 + > > Platform/Marvell/Armada80x0Db/NonDiscoverableInitLib/NonDiscoverableIn= itLib.h | 28 + > > Platform/SolidRun/Armada80x0McBin/NonDiscoverableInitLib/NonDiscoverab= leInitLib.h | 20 + > > Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCD= escLib.h | 10 + > > Silicon/Marvell/Drivers/Gpio/MvGpioDxe/MvGpioDxe.h = | 49 ++ > > Silicon/Marvell/Drivers/Gpio/MvPca95xxDxe/MvPca95xxDxe.h = | 65 ++ > > Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.h = | 10 - > > Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.h = | 17 +- > > Silicon/Marvell/Include/Library/ArmadaBoardDescLib.h = | 23 + > > Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h = | 12 + > > Silicon/Marvell/Include/Library/MvGpioLib.h = | 68 +++ > > Silicon/Marvell/Include/Library/NonDiscoverableInitLib.h = | 28 + > > Silicon/Marvell/Include/Protocol/BoardDesc.h = | 8 + > > Silicon/Marvell/Include/Protocol/MvI2c.h = | 31 + > > Platform/Marvell/Armada70x0Db/Armada70x0DbBoardDescLib/Armada70x0DbBoa= rdDescLib.c | 24 + > > Platform/Marvell/Armada70x0Db/NonDiscoverableInitLib/NonDiscoverableIn= itLib.c | 96 +++ > > Platform/Marvell/Armada80x0Db/Armada80x0DbBoardDescLib/Armada80x0DbBoa= rdDescLib.c | 30 + > > Platform/Marvell/Armada80x0Db/NonDiscoverableInitLib/NonDiscoverableIn= itLib.c | 106 ++++ > > Platform/SolidRun/Armada80x0McBin/Armada80x0McBinBoardDescLib/Armada80= x0McBinBoardDescLib.c | 17 + > > Platform/SolidRun/Armada80x0McBin/NonDiscoverableInitLib/NonDiscoverab= leInitLib.c | 71 +++ > > Silicon/Marvell/Applications/EepromCmd/EepromCmd.c = | 5 +- > > Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCD= escLib.c | 39 ++ > > Silicon/Marvell/Drivers/BoardDesc/MvBoardDescDxe.c = | 50 ++ > > Silicon/Marvell/Drivers/Gpio/MvGpioDxe/MvGpioDxe.c = | 353 +++++++++++ > > Silicon/Marvell/Drivers/Gpio/MvPca95xxDxe/MvPca95xxDxe.c = | 645 ++++++++++++++++++++ > > Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.c = | 3 +- > > Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c = | 4 +- > > Silicon/Marvell/Drivers/NonDiscoverableDxe/NonDiscoverableDxe.c = | 13 +- > > Silicon/Marvell/Library/MvGpioLib/MvGpioLib.c = | 132 ++++ > > Platform/Marvell/Armada70x0Db/Armada70x0Db.fdf.inc = | 2 + > > Platform/Marvell/Armada80x0Db/Armada80x0Db.fdf.inc = | 2 + > > Platform/SolidRun/Armada80x0McBin/Armada80x0McBin.fdf.inc = | 2 + > > 56 files changed, 2249 insertions(+), 38 deletions(-) > > create mode 100644 Platform/Marvell/Armada70x0Db/NonDiscoverableInitLi= b/NonDiscoverableInitLib.inf > > create mode 100644 Platform/Marvell/Armada80x0Db/NonDiscoverableInitLi= b/NonDiscoverableInitLib.inf > > create mode 100644 Platform/SolidRun/Armada80x0McBin/NonDiscoverableIn= itLib/NonDiscoverableInitLib.inf > > create mode 100644 Silicon/Marvell/Drivers/Gpio/MvGpioDxe/MvGpioDxe.in= f > > create mode 100644 Silicon/Marvell/Drivers/Gpio/MvPca95xxDxe/MvPca95xx= Dxe.inf > > create mode 100644 Silicon/Marvell/Library/MvGpioLib/MvGpioLib.inf > > create mode 100644 Platform/Marvell/Armada70x0Db/NonDiscoverableInitLi= b/NonDiscoverableInitLib.h > > create mode 100644 Platform/Marvell/Armada80x0Db/NonDiscoverableInitLi= b/NonDiscoverableInitLib.h > > create mode 100644 Platform/SolidRun/Armada80x0McBin/NonDiscoverableIn= itLib/NonDiscoverableInitLib.h > > create mode 100644 Silicon/Marvell/Drivers/Gpio/MvGpioDxe/MvGpioDxe.h > > create mode 100644 Silicon/Marvell/Drivers/Gpio/MvPca95xxDxe/MvPca95xx= Dxe.h > > create mode 100644 Silicon/Marvell/Include/Library/MvGpioLib.h > > create mode 100644 Silicon/Marvell/Include/Library/NonDiscoverableInit= Lib.h > > create mode 100644 Silicon/Marvell/Include/Protocol/MvI2c.h > > create mode 100644 Platform/Marvell/Armada70x0Db/NonDiscoverableInitLi= b/NonDiscoverableInitLib.c > > create mode 100644 Platform/Marvell/Armada80x0Db/NonDiscoverableInitLi= b/NonDiscoverableInitLib.c > > create mode 100644 Platform/SolidRun/Armada80x0McBin/NonDiscoverableIn= itLib/NonDiscoverableInitLib.c > > create mode 100644 Silicon/Marvell/Drivers/Gpio/MvGpioDxe/MvGpioDxe.c > > create mode 100644 Silicon/Marvell/Drivers/Gpio/MvPca95xxDxe/MvPca95xx= Dxe.c > > create mode 100644 Silicon/Marvell/Library/MvGpioLib/MvGpioLib.c > > > > -- > > 2.7.4 > >