From: Heiko Schocher <hs@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 4/5] I2C: mvi2c: add multi bus support
Date: Tue, 15 Mar 2011 08:01:21 +0100 [thread overview]
Message-ID: <4D7F0EC1.2070808@denx.de> (raw)
In-Reply-To: <1300160443-12552-5-git-send-email-leiwen@marvell.com>
Hello Lei,
Lei Wen wrote:
> Signed-off-by: Lei Wen <leiwen@marvell.com>
> ---
> drivers/i2c/mvi2c.c | 37 ++++++++++++++++++++++++++++++++++++-
> 1 files changed, 36 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/i2c/mvi2c.c b/drivers/i2c/mvi2c.c
> index 0e37417..ca1add8 100644
> --- a/drivers/i2c/mvi2c.c
> +++ b/drivers/i2c/mvi2c.c
> @@ -131,9 +131,38 @@ struct pxa_i2c {
> u32 isar;
> };
>
> -static struct pxa_i2c *base = (struct pxa_i2c *)CONFIG_PXA_I2C_REG;
> #define PXAI2C_AND(reg, val) writel(readl(reg) & val, reg)
> #define PXAI2C_OR(reg, val) writel(readl(reg) | val, reg)
> +static struct pxa_i2c *base;
> +
> +#ifdef CONFIG_I2C_MULTI_BUS
> +static u32 i2c_regs[CONFIG_PXA_I2C_NUM] = CONFIG_PXA_I2C_REG;
> +static unsigned int bus_initialized[CONFIG_PXA_I2C_NUM];
> +static unsigned int current_bus = 0;
> +
> +int i2c_set_bus_num(unsigned int bus)
> +{
> + if ((bus < 0) || (bus >= CONFIG_PXA_I2C_NUM)) {
> + printf("Bad bus: %d\n", bus);
> + return -1;
> + }
> +
> + base = (struct pxa_i2c *)i2c_regs[bus];
> + current_bus = bus;
> +
> + if(!bus_initialized[current_bus]) {
^
add a space here, thanks
> + i2c_init(CONFIG_SYS_I2C_SPEED, CONFIG_SYS_I2C_SLAVE);
> + bus_initialized[current_bus] = 1;
> + }
> +
> + return 0;
> +}
> +
> +unsigned int i2c_get_bus_num(void)
> +{
> + return current_bus;
> +}
> +#endif
>
> /**
> * i2c_pxa_reset: - reset the host controller
> @@ -311,6 +340,12 @@ i2c_transfer_finish:
>
> void i2c_init(int speed, int slaveaddr)
> {
> +#ifdef CONFIG_I2C_MULTI_BUS
> + base = (struct pxa_i2c *)i2c_regs[current_bus];
> +#else
> + base = (struct pxa_i2c *)CONFIG_PXA_I2C_REG;
> +#endif
> +
> #ifdef CONFIG_SYS_I2C_INIT_BOARD
> u32 icr;
> /* call board specific i2c bus reset routine before accessing the */
beside of that, your patch looks good.
bye,
Heiko
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
next prev parent reply other threads:[~2011-03-15 7:01 UTC|newest]
Thread overview: 123+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-14 10:16 [U-Boot] [PATCH 1/8] pxa: move i2c driver to the common place Lei Wen
2011-03-14 10:16 ` [U-Boot] [PATCH 2/8] pxa_i2c: use structure to replace the direclty define Lei Wen
2011-03-14 10:16 ` [U-Boot] [PATCH 3/8] I2C: add i2c support for Pantheon platform Lei Wen
2011-03-14 10:16 ` [U-Boot] [PATCH 4/8] I2C: pxa_i2c: add multi bus support Lei Wen
2011-03-14 10:16 ` [U-Boot] [PATCH 5/8] I2C: add i2c support for Armada100 platform Lei Wen
2011-03-14 12:03 ` [U-Boot] [PATCH 1/8] pxa: move i2c driver to the common place Prafulla Wadaskar
2011-03-15 1:36 ` Lei Wen
2011-03-15 3:40 ` [U-Boot] [PATCH 0/5] add i2c support to pantheon and aramada100 Lei Wen
2011-03-15 8:12 ` Wolfgang Denk
2011-03-17 6:26 ` Lei Wen
2011-03-17 6:45 ` [U-Boot] [PATCH V3 " Lei Wen
2011-03-28 5:48 ` [U-Boot] [PATCH V4 0/6] " Lei Wen
2011-03-28 6:53 ` [U-Boot] [PATCH V5 " Lei Wen
2011-03-31 8:37 ` [U-Boot] [PATCH V6 0/5] " Lei Wen
2011-04-03 13:00 ` [U-Boot] [PATCH V7 " Lei Wen
2011-04-05 8:00 ` [U-Boot] [PATCH V8 0/6] " Lei Wen
2011-04-07 13:29 ` Prafulla Wadaskar
2011-04-07 13:33 ` Heiko Schocher
2011-04-13 14:01 ` Prafulla Wadaskar
2011-04-13 14:14 ` Lei Wen
2011-04-13 14:26 ` Prafulla Wadaskar
2011-04-13 14:36 ` Lei Wen
2011-04-13 14:38 ` Prafulla Wadaskar
2011-04-05 8:00 ` [U-Boot] [PATCH V8 1/6] pxa: move i2c driver to the common place Lei Wen
2011-04-20 22:32 ` Wolfgang Denk
2011-04-21 2:42 ` Lei Wen
2011-04-21 2:47 ` Macpaul Lin
2011-04-21 2:50 ` Lei Wen
2011-04-21 3:31 ` [U-Boot] [PATCH V8.1 " Lei Wen
2011-04-05 8:00 ` [U-Boot] [PATCH V8 2/6] mv_i2c: fix timeout value to be consistent with comments Lei Wen
2011-04-05 8:00 ` [U-Boot] [PATCH V8 3/6] mv_i2c: use structure to replace the direclty define Lei Wen
2011-04-05 8:00 ` [U-Boot] [PATCH V8 4/6] I2C: add i2c support for Pantheon platform Lei Wen
2011-04-05 8:00 ` [U-Boot] [PATCH V8 5/6] I2C: mv_i2c: add multi bus support Lei Wen
2011-04-05 8:01 ` [U-Boot] [PATCH V8 6/6] I2C: add i2c support for Armada100 platform Lei Wen
2011-04-03 13:00 ` [U-Boot] [PATCH V7 1/5] pxa: move i2c driver to the common place Lei Wen
2011-04-03 13:00 ` [U-Boot] [PATCH V7 2/5] mv_i2c: use structure to replace the direclty define Lei Wen
2011-04-03 13:27 ` Wolfgang Denk
2011-04-03 13:00 ` [U-Boot] [PATCH V7 3/5] I2C: add i2c support for Pantheon platform Lei Wen
2011-04-03 13:00 ` [U-Boot] [PATCH V7 4/5] I2C: mv_i2c: add multi bus support Lei Wen
2011-04-03 13:00 ` [U-Boot] [PATCH V7 5/5] I2C: add i2c support for Armada100 platform Lei Wen
2011-03-31 8:37 ` [U-Boot] [PATCH V6 1/5] pxa: move i2c driver to the common place Lei Wen
2011-03-31 8:37 ` [U-Boot] [PATCH V6 2/5] mv_i2c: use structure to replace the direclty define Lei Wen
2011-04-01 18:29 ` Prafulla Wadaskar
2011-04-03 11:30 ` Lei Wen
2011-04-03 13:21 ` Wolfgang Denk
2011-03-31 8:37 ` [U-Boot] [PATCH V6 3/5] I2C: add i2c support for Pantheon platform Lei Wen
2011-04-01 18:34 ` Prafulla Wadaskar
2011-04-03 11:32 ` Lei Wen
2011-03-31 8:37 ` [U-Boot] [PATCH V6 4/5] I2C: mv_i2c: add multi bus support Lei Wen
2011-04-01 18:36 ` Prafulla Wadaskar
2011-03-31 8:37 ` [U-Boot] [PATCH V6 5/5] I2C: add i2c support for Armada100 platform Lei Wen
2011-04-01 18:39 ` Prafulla Wadaskar
2011-03-28 6:53 ` [U-Boot] [PATCH V5 1/6] io: add and* and or* operation api to set and clear bit Lei Wen
2011-03-28 6:53 ` [U-Boot] [PATCH V5 2/6] pxa: move i2c driver to the common place Lei Wen
2011-03-28 6:53 ` [U-Boot] [PATCH V5 3/6] mv_i2c: use structure to replace the direclty define Lei Wen
2011-03-29 13:27 ` Prafulla Wadaskar
2011-03-30 14:11 ` Lei Wen
2011-03-30 18:54 ` Prafulla Wadaskar
2011-03-28 6:53 ` [U-Boot] [PATCH V5 4/6] I2C: add i2c support for Pantheon platform Lei Wen
2011-03-29 13:07 ` Prafulla Wadaskar
2011-03-30 14:05 ` Lei Wen
2011-03-30 18:56 ` Prafulla Wadaskar
2011-03-31 7:49 ` Lei Wen
2011-03-28 6:53 ` [U-Boot] [PATCH V5 5/6] I2C: mv_i2c: add multi bus support Lei Wen
2011-03-28 6:53 ` [U-Boot] [PATCH V5 6/6] I2C: add i2c support for Armada100 platform Lei Wen
2011-03-29 13:09 ` Prafulla Wadaskar
2011-03-28 5:48 ` [U-Boot] [PATCH V4 1/6] io: add and* and or* operation api to set and clear bit Lei Wen
2011-03-28 5:57 ` Wolfgang Denk
2011-03-28 6:01 ` Lei Wen
2011-03-28 6:03 ` Lei Wen
2011-03-28 6:29 ` Wolfgang Denk
2011-03-28 7:04 ` Lei Wen
2011-03-28 16:05 ` Scott Wood
2011-03-29 2:47 ` Lei Wen
2011-03-29 16:03 ` Scott Wood
2011-03-30 14:08 ` Lei Wen
2011-03-29 2:53 ` [U-Boot] [PATCH V5.1 " Lei Wen
2011-03-29 5:40 ` Prafulla Wadaskar
2011-03-29 5:44 ` Mike Frysinger
2011-03-28 5:48 ` [U-Boot] [PATCH V4 2/6] pxa: move i2c driver to the common place Lei Wen
2011-03-28 5:48 ` [U-Boot] [PATCH V4 3/6] mv_i2c: use structure to replace the direclty define Lei Wen
2011-03-28 5:48 ` [U-Boot] [PATCH V4 4/6] I2C: add i2c support for Pantheon platform Lei Wen
2011-03-28 5:48 ` [U-Boot] [PATCH V4 5/6] I2C: mv_i2c: add multi bus support Lei Wen
2011-03-28 5:48 ` [U-Boot] [PATCH V4 6/6] I2C: add i2c support for Armada100 platform Lei Wen
2011-03-17 6:45 ` [U-Boot] [PATCH V3 1/5] pxa: move i2c driver to the common place Lei Wen
2011-03-22 11:42 ` Prafulla Wadaskar
2011-03-22 12:43 ` Lei Wen
2011-03-23 7:38 ` Prafulla Wadaskar
2011-03-23 8:22 ` Heiko Schocher
2011-03-23 8:43 ` Lei Wen
2011-03-23 8:53 ` Heiko Schocher
2011-03-23 8:56 ` Lei Wen
2011-03-23 9:07 ` Heiko Schocher
2011-03-23 9:16 ` Prafulla Wadaskar
2011-03-23 9:12 ` Prafulla Wadaskar
2011-03-17 6:45 ` [U-Boot] [PATCH V3 2/5] mv_i2c: use structure to replace the direclty define Lei Wen
2011-03-22 11:17 ` Prafulla Wadaskar
2011-03-22 12:34 ` Lei Wen
2011-03-22 15:16 ` Wolfgang Denk
2011-03-23 8:48 ` Lei Wen
2011-03-17 6:45 ` [U-Boot] [PATCH V3 3/5] I2C: add i2c support for Pantheon platform Lei Wen
2011-03-22 11:22 ` Prafulla Wadaskar
2011-03-22 12:38 ` Lei Wen
2011-03-17 6:45 ` [U-Boot] [PATCH V3 4/5] I2C: mv_i2c: add multi bus support Lei Wen
2011-03-17 6:45 ` [U-Boot] [PATCH V3 5/5] I2C: add i2c support for Armada100 platform Lei Wen
2011-03-22 11:40 ` Prafulla Wadaskar
2011-03-22 12:39 ` Lei Wen
2011-03-15 3:40 ` [U-Boot] [PATCH V2 1/5] pxa: move i2c driver to the common place Lei Wen
2011-03-15 6:48 ` Heiko Schocher
2011-03-17 6:25 ` Lei Wen
2011-03-15 8:09 ` Wolfgang Denk
2011-03-15 3:40 ` [U-Boot] [PATCH v2 2/5] mvi2c: use structure to replace the direclty define Lei Wen
2011-03-15 6:54 ` Heiko Schocher
2011-03-17 6:28 ` Lei Wen
2011-03-17 7:12 ` Heiko Schocher
2011-03-15 3:40 ` [U-Boot] [PATCH v2 3/5] I2C: add i2c support for Pantheon platform Lei Wen
2011-03-15 6:58 ` Heiko Schocher
2011-03-15 3:40 ` [U-Boot] [PATCH v2 4/5] I2C: mvi2c: add multi bus support Lei Wen
2011-03-15 7:01 ` Heiko Schocher [this message]
2011-03-15 3:40 ` [U-Boot] [PATCH v2 5/5] I2C: add i2c support for Armada100 platform Lei Wen
2011-03-15 7:08 ` Heiko Schocher
2011-03-17 6:38 ` Lei Wen
2011-03-17 7:15 ` Heiko Schocher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D7F0EC1.2070808@denx.de \
--to=hs@denx.de \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.