From patchwork Tue Sep 3 06:20:14 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rajeshwari Birje X-Patchwork-Id: 272119 X-Patchwork-Delegate: hs@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 168AA2C00BE for ; Tue, 3 Sep 2013 16:19:01 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 658594A0AE; Tue, 3 Sep 2013 08:18:59 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ux915ChKwkHS; Tue, 3 Sep 2013 08:18:59 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 4B34A4A0A2; Tue, 3 Sep 2013 08:18:55 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id B4E3C4A0A2 for ; Tue, 3 Sep 2013 08:18:49 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id CcmHx01pc2NO for ; Tue, 3 Sep 2013 08:18:43 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mailout1.samsung.com (mailout1.samsung.com [203.254.224.24]) by theia.denx.de (Postfix) with ESMTP id 0CEDA4A09F for ; Tue, 3 Sep 2013 08:18:35 +0200 (CEST) Received: from epcpsbgr4.samsung.com (u144.gpu120.samsung.co.kr [203.254.230.144]) by mailout1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MSJ007SYDIWO7Q0@mailout1.samsung.com> for u-boot@lists.denx.de; Tue, 03 Sep 2013 15:18:32 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [172.20.52.125]) by epcpsbgr4.samsung.com (EPCPMTA) with SMTP id C8.D7.31253.83F75225; Tue, 03 Sep 2013 15:18:32 +0900 (KST) X-AuditID: cbfee690-b7f3b6d000007a15-09-52257f380e30 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id CB.9A.09055.83F75225; Tue, 03 Sep 2013 15:18:32 +0900 (KST) Received: from localhost.localdomain.com ([107.108.73.95]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MSJ009TBDIQS402@mmp1.samsung.com>; Tue, 03 Sep 2013 15:18:31 +0900 (KST) From: Rajeshwari S Shinde To: u-boot@lists.denx.de Date: Tue, 03 Sep 2013 11:50:14 +0530 Message-id: <1378189214-22972-1-git-send-email-rajeshwari.s@samsung.com> X-Mailer: git-send-email 1.7.11.7 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrILMWRmVeSWpSXmKPExsWyRsSkVteiXjXIoP+TosXD9TdZLHbcuc9s 0XGkhdFiyuEvLBbftmxjtFj+eiO7xdu9newO7B6zGy6yeMybdYLFY8GmUo871/aweZy9s4PR o2/LKsYAtigum5TUnMyy1CJ9uwSujHcrZAseilUsvLSbsYHxjlAXIyeHhICJxJTje9ggbDGJ C/fWg9lCAksZJaZc5oep6di6grGLkQsovohRom3uTyYIp4tJYs/l7+xdjBwcbEBVG08kgDSI CEhI/Oq/CtbALNDEKDHxaR8TSEJYIFrizZM2VhCbRUBVYu/DP2BxXgEPiZXT/0BdoSgxY8kz Rgi7m13i974UiHoBiW+TD7GA7JIQkJXYdIAZokRS4uCKGywTGAUXMDKsYhRNLUguKE5KLzLR K07MLS7NS9dLzs/dxAgM3tP/nk3YwXjvgPUhxmSgcROZpUST84HBn1cSb2hsZmRhamJqbGRu aUaasJI4r3qLdaCQQHpiSWp2ampBalF8UWlOavEhRiYOTqkGRu+CbZP+m3skHzh8jlNltZp2 f6SD/J3H82+k70gpdvU1iZ4VxfS8bPrtNokkgeCF+5wuO85erXNj2+242iCfC9+ND+bkSyY7 TnL8XRri+pDjQwvzDH+uEw7sH9dGL1oU6CbmwbGydIKT/c9LKofZZz3hZpk6q7hCtnA2u7vl ycD6e7uEdxjMV2Ipzkg01GIuKk4EAATToNF0AgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrAIsWRmVeSWpSXmKPExsVy+t9jAV2LetUgg0WHJCwerr/JYrHjzn1m i44jLYwWUw5/YbH4tmUbo8Xy1xvZLd7u7WR3YPeY3XCRxWPerBMsHgs2lXrcubaHzePsnR2M Hn1bVjEGsEU1MNpkpCampBYppOYl56dk5qXbKnkHxzvHm5oZGOoaWlqYKynkJeam2iq5+ATo umXmAB2jpFCWmFMKFApILC5W0rfDNCE0xE3XAqYxQtc3JAiux8gADSSsYcx4t0K24KFYxcJL uxkbGO8IdTFyckgImEh0bF3BCGGLSVy4t56ti5GLQ0hgEaNE29yfTBBOF5PEnsvf2bsYOTjY gDo2nkgAaRARkJD41X+VEaSGWaCJUWLi0z4mkISwQLTEmydtrCA2i4CqxN6Hf8DivAIeEiun /2GD2KYoMWPJM8YJjNwLGBlWMYqmFiQXFCel5xrqFSfmFpfmpesl5+duYgTHxzOpHYwrGywO MQpwMCrx8HLsVQkSYk0sK67MPcQowcGsJMIr9A0oxJuSWFmVWpQfX1Sak1p8iDEZaPtEZinR 5Hxg7OaVxBsam5ibGptamliYmFmSJqwkznug1TpQSCA9sSQ1OzW1ILUIZgsTB6dUA+Nei7LL Zeumvua/yGJW9eBJ5/tf+/6ryB9+tUHCqPPVpF06t2be8k+S57x7wi13+W6tKu/DmZOW3+gS 6b1091tUpNI/5e5Me+cdt4Pfuze3LOXr2MOck804Tc1XN2FrobJEyP70TLFjLysUuQ0+rhDa 6mobwv9zQrfW4zP2CkErTEtuPilvdlZiKc5INNRiLipOBABhde3I0wIAAA== DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Cc: u-boot-review@google.com, patches@linaro.org, hs@denx.de Subject: [U-Boot] [PATCH] Exynos5250: I2C: Fix driver as per new I2C multibus/multiadapter support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de This patch fixes the S3C24xx I2C driver as per new I2C multibus/multiadapter support for Exynos5250. Change-Id: I95873fef7d312310670e3bb33ad9532c10f60463 Signed-off-by: Rajeshwari S Shinde --- drivers/i2c/s3c24x0_i2c.c | 14 +++++++------- include/configs/exynos5250-dt.h | 3 ++- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/i2c/s3c24x0_i2c.c b/drivers/i2c/s3c24x0_i2c.c index cd09c78..5fdb85f 100644 --- a/drivers/i2c/s3c24x0_i2c.c +++ b/drivers/i2c/s3c24x0_i2c.c @@ -53,7 +53,7 @@ static unsigned int g_current_bus __attribute__((section(".data"))); #ifdef CONFIG_OF_CONTROL static int i2c_busses __attribute__((section(".data"))); -static struct s3c24x0_i2c_bus i2c_bus[CONFIG_MAX_I2C_NUM] +static struct s3c24x0_i2c_bus i2c_bus_data[CONFIG_SYS_NUM_I2C_BUSES] __attribute__((section(".data"))); #endif @@ -160,7 +160,7 @@ int i2c_set_bus_num(unsigned int bus) { struct s3c24x0_i2c *i2c; - if ((bus < 0) || (bus >= CONFIG_MAX_I2C_NUM)) { + if ((bus < 0) || (bus >= CONFIG_SYS_NUM_I2C_BUSES)) { debug("Bad bus: %d\n", bus); return -1; } @@ -503,12 +503,12 @@ int i2c_write(uchar chip, uint addr, int alen, uchar *buffer, int len) void board_i2c_init(const void *blob) { int i; - int node_list[CONFIG_MAX_I2C_NUM]; + int node_list[CONFIG_SYS_NUM_I2C_BUSES]; int count; count = fdtdec_find_aliases_for_id(blob, "i2c", COMPAT_SAMSUNG_S3C2440_I2C, node_list, - CONFIG_MAX_I2C_NUM); + CONFIG_SYS_NUM_I2C_BUSES); for (i = 0; i < count; i++) { struct s3c24x0_i2c_bus *bus; @@ -516,7 +516,7 @@ void board_i2c_init(const void *blob) if (node <= 0) continue; - bus = &i2c_bus[i]; + bus = &i2c_bus_data[i]; bus->regs = (struct s3c24x0_i2c *) fdtdec_get_addr(blob, node, "reg"); bus->id = pinmux_decode_periph_id(blob, node); @@ -529,7 +529,7 @@ void board_i2c_init(const void *blob) static struct s3c24x0_i2c_bus *get_bus(unsigned int bus_idx) { if (bus_idx < i2c_busses) - return &i2c_bus[bus_idx]; + return &i2c_bus_data[bus_idx]; debug("Undefined bus: %d\n", bus_idx); return NULL; @@ -540,7 +540,7 @@ int i2c_get_bus_num_fdt(int node) int i; for (i = 0; i < i2c_busses; i++) { - if (node == i2c_bus[i].node) + if (node == i2c_bus_data[i].node) return i; } diff --git a/include/configs/exynos5250-dt.h b/include/configs/exynos5250-dt.h index 2b93a45..e6a2cd0 100644 --- a/include/configs/exynos5250-dt.h +++ b/include/configs/exynos5250-dt.h @@ -254,8 +254,9 @@ #define CONFIG_SYS_I2C_SPEED 100000 /* 100 Kbps */ #define CONFIG_DRIVER_S3C24X0_I2C #define CONFIG_I2C_MULTI_BUS -#define CONFIG_MAX_I2C_NUM 8 #define CONFIG_SYS_I2C_SLAVE 0x0 +#define CONFIG_SYS_I2C_MAX_HOPS 1 +#define CONFIG_SYS_NUM_I2C_BUSES 8 #define CONFIG_I2C_EDID /* PMIC */