From patchwork Thu Jun 7 06:09:53 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rajeshwari Birje X-Patchwork-Id: 163478 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 6C54AB6FB6 for ; Thu, 7 Jun 2012 16:06:34 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id DC2B02811B; Thu, 7 Jun 2012 08:06:29 +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 m3ezuN2IX23j; Thu, 7 Jun 2012 08:06:29 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id E9A862817A; Thu, 7 Jun 2012 08:06:18 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 0E5B628171 for ; Thu, 7 Jun 2012 08:06:16 +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 60RzFEgAuf5V for ; Thu, 7 Jun 2012 08:06:15 +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 mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) by theia.denx.de (Postfix) with ESMTP id 9146528186 for ; Thu, 7 Jun 2012 08:06:13 +0200 (CEST) Received: from epcpsbgm1.samsung.com (mailout4.samsung.com [203.254.224.34]) by mailout4.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0M58004P6GX9EXM0@mailout4.samsung.com> for u-boot@lists.denx.de; Thu, 07 Jun 2012 15:06:11 +0900 (KST) X-AuditID: cbfee61a-b7f9f6d0000016a8-db-4fd044d34e11 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id 2B.16.05800.3D440DF4; Thu, 07 Jun 2012 15:06:11 +0900 (KST) Received: from rajeshwari-linux.sisodomain.com ([107.108.215.115]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0M5800J8XGX3ZV30@mmp1.samsung.com> for u-boot@lists.denx.de; Thu, 07 Jun 2012 15:06:11 +0900 (KST) From: Rajeshwari Shinde To: u-boot@lists.denx.de Date: Thu, 07 Jun 2012 11:39:53 +0530 Message-id: <1339049394-4816-8-git-send-email-rajeshwari.s@samsung.com> X-Mailer: git-send-email 1.7.4.4 In-reply-to: <1339049394-4816-1-git-send-email-rajeshwari.s@samsung.com> References: <1339049394-4816-1-git-send-email-rajeshwari.s@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrEJMWRmVeSWpSXmKPExsVy+t9jAd3LLhf8DX5eVLR4u7eT3YHR4+yd HYwBjFFcNimpOZllqUX6dglcGc9+HGQvWM9Z8a15LUsD4wP2LkZODgkBE4k7t+YxQdhiEhfu rWcDsYUEFjFKfHkV2sXIBWSvYpLYuaQDrIhNwEhi68lpjCC2iICExK/+q2A2s0Ajo8SO1a4g trCAlcTZOSfB4iwCqhL79vczg9i8Au4S1xp+sUEsU5A4NvUrK4jNKeAhseUbRL0QUM3Hd5tZ JzDyLmBkWMUomlqQXFCclJ5rqFecmFtcmpeul5yfu4kR7PNnUjsYVzZYHGIU4GBU4uHlcLzg L8SaWFZcmXuIUYKDWUmEV6DsvL8Qb0piZVVqUX58UWlOavEhRmkOFiVx3iZroGqB9MSS1OzU 1ILUIpgsEwenVAPjXPGY5paYy57TZkh+DE94++Dad9bVflN2cNw4dz3yRGyr/7b7/4K+FRuc fan2wny3c39i22tHgxyO7Pp/cue//et/zOO+mTlqQktUjpt745YVcdrXE/fyPv909e/j54qH buu+zY5kjpMq/3rHo5pHZN2dPQF/m7u/frkzpTjli9OfZVn5ITwblFiKMxINtZiLihMB9BDO z/UBAAA= X-TM-AS-MML: No Cc: patches@linaro.org, alim.akhtar@samsung.com, hs@denx.de Subject: [U-Boot] [PATCH 7/8 V2] I2C: Add support for Multi channel 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 adds multiple i2c channel support for I2C. Signed-off-by: Alim Akhtar Signed-off-by: Rajeshwari Shinde Acked-by: Simon Glass --- drivers/i2c/s3c24x0_i2c.c | 27 +++++++++++++++++++++++++++ 1 files changed, 27 insertions(+), 0 deletions(-) diff --git a/drivers/i2c/s3c24x0_i2c.c b/drivers/i2c/s3c24x0_i2c.c index a71f147..7521cb8 100644 --- a/drivers/i2c/s3c24x0_i2c.c +++ b/drivers/i2c/s3c24x0_i2c.c @@ -191,6 +191,33 @@ static void i2c_bus_init(struct s3c24x0_i2c *i2c, unsigned int bus) i2c_ch_init(i2c, CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE); } +/* + * MULTI BUS I2C support + */ + +#ifdef CONFIG_I2C_MULTI_BUS +int i2c_set_bus_num(unsigned int bus) +{ + struct s3c24x0_i2c *i2c; + + if ((bus < 0) || (bus >= CONFIG_MAX_I2C_NUM)) { + debug("Bad bus: %d\n", bus); + return -1; + } + + g_current_bus = bus; + i2c = get_base_i2c(g_current_bus); + i2c_bus_init(i2c, g_current_bus); + + return 0; +} + +unsigned int i2c_get_bus_num(void) +{ + return g_current_bus; +} +#endif + #ifdef CONFIG_EXYNOS5 void i2c_init(int speed, int slaveadd) {