From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: None (no SPF record) identity=mailfrom; client-ip=2a00:1450:4864:20::143; helo=mail-lf1-x143.google.com; envelope-from=mw@semihalf.com; receiver=edk2-devel@lists.01.org Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) (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 DF4C72117B56A for ; Fri, 19 Oct 2018 18:58:16 -0700 (PDT) Received: by mail-lf1-x143.google.com with SMTP id t22-v6so26555152lfb.7 for ; Fri, 19 Oct 2018 18:58:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=55SwWButntU5Do+euKSHARz3BRc17jA4+bwxMB5/UW0=; b=xlNxLrVzoQu8uILEarW4QtgeLzJdq04fQAPhPPBtoa4TLG2Z3owDaM9xhMKIgVZhCe +ncxuysC8hnX84z+/vwu1hI80BnkalpJGIf8u9fCxlNhi+nTHarHSvc8a6au48VgsyTv HSUNMxSVQMlcG8nAZl1Ee8dzVvAKhu5TjCGGsUaijTvJxJ7vaNMqlsMtErwtZbNp5T93 YsCryPFYYh4OaTOJfe/UW2JQjMTYr/bKIJ8sr64UjceLZzBFTfgsgLPabUi3StBdec0I lUb4Q4z3LQF1G/FW/659NjfAhMabwoZKPZyyv5o7V1zQy1+X+TLn4APS1xbGFVMg9KFn aEPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=55SwWButntU5Do+euKSHARz3BRc17jA4+bwxMB5/UW0=; b=PHx8Usdn7VZKrH11aYJ6iNVxAXO/qrAiJWdrkdKKR0t9N/1JHaHSvvEgz2fAdTX9AN 6VJ/cwSlWYPlEX7gYfYhv0nxnQ1209kLpi9LfhRA9mIfg3lkqpJhmm/3gDTSxkWZuBgS 1A0pVDsZX2j0GSoXHBhyleRXqi7RUOzST5DGpSjAPWllT5+/coToimBR74rNTVdAf4Bd 8fyf0fdavzAfDFddceBvyGYLO/eHyUBWY2zqWCk6tVYJvgOz+qQ0STEFtvYgTGcANH0c fO/ruMN0rLTYER3FnGVD6bUrpkn69wFf537kHXajE4lNTxGc/EobxhoYyfmeURlx/LJF 2Scw== X-Gm-Message-State: ABuFfoijDnz2eWwRvHoXJKOD2Csn6aOblCQFgvJ9qU3MMxNMgIi39IGQ fWwSLGE9u0EwpLDfUwFONx5g3vylBsE= X-Google-Smtp-Source: ACcGV63TKiAIoVNHVS1+iDnmigP8N5Di2XYV6inLO/Cy4XTZ7zTIR+JtCyQ1IGbpJm7RwVgOl5DGEw== X-Received: by 2002:a19:d408:: with SMTP id l8-v6mr4544483lfg.25.1540000694874; Fri, 19 Oct 2018 18:58:14 -0700 (PDT) Received: from gilgamesh.semihalf.com (31-172-191-173.noc.fibertech.net.pl. [31.172.191.173]) by smtp.gmail.com with ESMTPSA id p63-v6sm5562777lfg.46.2018.10.19.18.58.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 19 Oct 2018 18:58:14 -0700 (PDT) From: Marcin Wojtas To: edk2-devel@lists.01.org Cc: leif.lindholm@linaro.org, ard.biesheuvel@linaro.org, nadavh@marvell.com, mw@semihalf.com, jsd@semihalf.com, jaz@semihalf.com, kostap@marvell.com Date: Sat, 20 Oct 2018 03:57:38 +0200 Message-Id: <1540000661-1956-10-git-send-email-mw@semihalf.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1540000661-1956-1-git-send-email-mw@semihalf.com> References: <1540000661-1956-1-git-send-email-mw@semihalf.com> Subject: [platforms: PATCH 09/12] Marvell/Drivers: I2c: Use common header for macros 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: Sat, 20 Oct 2018 01:58:17 -0000 Hitherto I2c solution used same macros, defined in multiple places. Move them to a new common header. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Marcin Wojtas --- Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.h | 10 ------- Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.h | 17 ++--------- Silicon/Marvell/Include/Protocol/MvI2c.h | 31 ++++++++++++++++++++ Silicon/Marvell/Applications/EepromCmd/EepromCmd.c | 5 +--- Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.c | 3 +- Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c | 4 +-- 6 files changed, 37 insertions(+), 33 deletions(-) create mode 100644 Silicon/Marvell/Include/Protocol/MvI2c.h diff --git a/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.h b/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.h index b1af645..c32ee48 100644 --- a/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.h +++ b/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.h @@ -41,16 +41,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define MAX_BUFFER_LENGTH 64 -/* - * I2C_FLAG_NORESTART is not part of PI spec, it allows to continue - * transmission without repeated start operation. - * FIXME: This flag is also defined in Drivers/I2c/MvI2cDxe/MvI2cDxe.h - * and it's important to have both version synced. This solution is - * temporary and shared flag should be used by both files. - * Situation is analogous with I2C_GUID, which also should be common, but is - * for now defined same way in two header files. - */ -#define I2C_FLAG_NORESTART 0x00000002 #define I2C_GUID \ { \ 0xadc1901b, 0xb83c, 0x4831, { 0x8f, 0x59, 0x70, 0x89, 0x8f, 0x26, 0x57, 0x1e } \ diff --git a/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.h b/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.h index 3c9beaf..6850c34 100644 --- a/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.h +++ b/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.h @@ -32,8 +32,8 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *******************************************************************************/ -#ifndef __MV_I2C_H__ -#define __MV_I2C_H__ +#ifndef __MV_I2C_DXE_H__ +#define __MV_I2C_DXE_H__ #include @@ -75,17 +75,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define I2C_FAST 0x2 #define I2C_FASTEST 0x3 -/* - * I2C_FLAG_NORESTART is not part of PI spec, it allows to continue - * transmission without repeated start operation. - * FIXME: This flag is also defined in - * Platforms/Marvell/Include/Protocol/Eeprom.h and it's important to have both - * version synced. This solution is temporary and shared flag should be used by - * both files. - * Situation is analogous with I2C_GUID, which also should be common, but is - * for now defined same way in two header files. - */ -#define I2C_FLAG_NORESTART 0x00000002 #define I2C_GUID \ { \ 0xadc1901b, 0xb83c, 0x4831, { 0x8f, 0x59, 0x70, 0x89, 0x8f, 0x26, 0x57, 0x1e } \ @@ -266,4 +255,4 @@ MvI2cEnableConf ( IN EFI_STATUS *I2cStatus OPTIONAL ); -#endif // __MV_I2C_H__ +#endif // __MV_I2C_DXE_H__ diff --git a/Silicon/Marvell/Include/Protocol/MvI2c.h b/Silicon/Marvell/Include/Protocol/MvI2c.h new file mode 100644 index 0000000..d8e644e --- /dev/null +++ b/Silicon/Marvell/Include/Protocol/MvI2c.h @@ -0,0 +1,31 @@ +/** +* +* Copyright (c) 2018, Marvell International Ltd. 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. +* +**/ +#ifndef __MV_I2C_H__ +#define __MV_I2C_H__ + +/* + * I2C_FLAG_NORESTART is not part of PI spec, it allows to continue + * transmission without repeated start operation. + */ +#define I2C_FLAG_NORESTART 0x00000002 + +/* + * Helper macros for maintaining multiple I2C buses + * and devices defined via EFI_I2C_DEVICE. + */ +#define I2C_DEVICE_ADDRESS(Index) ((Index) & MAX_UINT16) +#define I2C_DEVICE_BUS(Index) ((Index) >> 16) +#define I2C_DEVICE_INDEX(Bus, Address) (((Address) & MAX_UINT16) | (Bus) << 16) + +#endif diff --git a/Silicon/Marvell/Applications/EepromCmd/EepromCmd.c b/Silicon/Marvell/Applications/EepromCmd/EepromCmd.c index f43e411..a390f23 100644 --- a/Silicon/Marvell/Applications/EepromCmd/EepromCmd.c +++ b/Silicon/Marvell/Applications/EepromCmd/EepromCmd.c @@ -52,10 +52,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include - -#define I2C_DEVICE_INDEX(bus, address) (((address) & 0xffff) | (bus) << 16) -#define I2C_DEVICE_ADDRESS(index) ((index) & 0xffff) -#define I2C_DEVICE_BUS(index) ((index) >> 16) +#include CONST CHAR16 ShellEepromFileName[] = L"ShellCommand"; EFI_HANDLE ShellEepromHiiHandle = NULL; diff --git a/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.c b/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.c index 9d2f650..90d0d1e 100644 --- a/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.c +++ b/Silicon/Marvell/Drivers/I2c/MvEepromDxe/MvEepromDxe.c @@ -35,6 +35,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include +#include #include #include @@ -49,8 +50,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "MvEepromDxe.h" -#define I2C_DEVICE_INDEX(bus, address) (((address) & 0xffff) | (bus) << 16) - STATIC CONST EFI_GUID I2cGuid = I2C_GUID; EFI_DRIVER_BINDING_PROTOCOL gDriverBindingProtocol = { diff --git a/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c b/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c index 9ec4929..582e2b9 100755 --- a/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c +++ b/Silicon/Marvell/Drivers/I2c/MvI2cDxe/MvI2cDxe.c @@ -37,6 +37,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include +#include #include #include @@ -628,9 +629,6 @@ MvI2cStartRequest ( STATIC CONST EFI_GUID DevGuid = I2C_GUID; -#define I2C_DEVICE_INDEX(bus, address) (((address) & 0xffff) | (bus) << 16) -#define I2C_DEVICE_ADDRESS(index) ((index) & 0xffff) - STATIC EFI_STATUS MvI2cAllocDevice ( -- 2.7.4