summaryrefslogtreecommitdiff
path: root/drivers/i2c/s3c24x0_i2c.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2013-10-15 16:02:10 +0530
committerHeiko Schocher <hs@denx.de>2013-10-17 07:20:26 +0200
commit940dd1624255baac928dbac5dc2e3147477ba02f (patch)
tree7affddc22b510581da3e2daee5e9343f82a590e9 /drivers/i2c/s3c24x0_i2c.h
parente4e2402071e8052eab7fb10ecfbdec01310ac06f (diff)
downloadu-boot-imx-940dd1624255baac928dbac5dc2e3147477ba02f.zip
u-boot-imx-940dd1624255baac928dbac5dc2e3147477ba02f.tar.gz
u-boot-imx-940dd1624255baac928dbac5dc2e3147477ba02f.tar.bz2
exynos: i2c: Change FDT bus setup code to enumerate ports correctly
At present the i2c ports are enumerated in a strange way - the fdtdec_find_aliases_for_id() function is used, but then the ID returned is ignored and the ports are renumbered. The effect is the same provided that the device tree has the ports in the same order, or uses aliases, and has no gaps, but it is not correct. Adjust the code to use the function as intended. This will allows device tree aliases to change the device order if required. As a result, the i2c_busses variable is dropped. We can't be sure that there are no 'holes' in the list of buses, so must check the whole array. Note: it seems that non-FDT operation is now broken in this drive and will need to be reinstated for upstream. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/59369 Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Diffstat (limited to 'drivers/i2c/s3c24x0_i2c.h')
-rw-r--r--drivers/i2c/s3c24x0_i2c.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/i2c/s3c24x0_i2c.h b/drivers/i2c/s3c24x0_i2c.h
index b4a337a..882af62 100644
--- a/drivers/i2c/s3c24x0_i2c.h
+++ b/drivers/i2c/s3c24x0_i2c.h
@@ -16,6 +16,7 @@ struct s3c24x0_i2c {
};
struct s3c24x0_i2c_bus {
+ bool active; /* port is active and available */
int node; /* device tree node */
int bus_num; /* i2c bus number */
struct s3c24x0_i2c *regs;