aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAndy Green <andy@warmcat.com>2011-09-23 13:31:25 -0400
committerPaolo Pisati <paolo.pisati@canonical.com>2012-08-17 04:19:23 -0400
commit8ec253e2185614fd05d3922260a2f24f04784a04 (patch)
tree8073bfd171c2094cb7114a5aea61ca57a9288c5f /arch
parent6005dc6082fb389d88338e3cdc3af2feabed0531 (diff)
I2C: OMAP2+: Tag all OMAP2+ hwmod defintions with I2C IP revision
Since we cannot trust (or even reliably find) the OMAP I2C peripheral unit's own revision register, we must inform the OMAP i2c driver of which IP version it is running on. We do this by tagging the omap_hwmod_class for i2c on all the OMAP2+ platform / cpu specific hwmod init and passing it up to the driver (next patches). Cc: patches@linaro.org Cc: Ben Dooks <ben-linux@fluff.org> Reported-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Andy Green <andy.green@linaro.org> Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Paul Walmsley <paul@pwsan.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2420_data.c1
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_2430_data.c1
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_3xxx_data.c1
-rw-r--r--arch/arm/mach-omap2/omap_hwmod_44xx_data.c1
4 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
index c4d0ae87d62..2223c4453c3 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c
@@ -1447,6 +1447,7 @@ static struct omap_hwmod_class_sysconfig i2c_sysc = {
1447static struct omap_hwmod_class i2c_class = { 1447static struct omap_hwmod_class i2c_class = {
1448 .name = "i2c", 1448 .name = "i2c",
1449 .sysc = &i2c_sysc, 1449 .sysc = &i2c_sysc,
1450 .rev = OMAP_I2C_IP_VERSION_1,
1450}; 1451};
1451 1452
1452static struct omap_i2c_dev_attr i2c_dev_attr; 1453static struct omap_i2c_dev_attr i2c_dev_attr;
diff --git a/arch/arm/mach-omap2/omap_hwmod_2430_data.c b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
index 0c272be1b49..dbcc36e50ee 100644
--- a/arch/arm/mach-omap2/omap_hwmod_2430_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_2430_data.c
@@ -1524,6 +1524,7 @@ static struct omap_hwmod_class_sysconfig i2c_sysc = {
1524static struct omap_hwmod_class i2c_class = { 1524static struct omap_hwmod_class i2c_class = {
1525 .name = "i2c", 1525 .name = "i2c",
1526 .sysc = &i2c_sysc, 1526 .sysc = &i2c_sysc,
1527 .rev = OMAP_I2C_IP_VERSION_1,
1527}; 1528};
1528 1529
1529static struct omap_i2c_dev_attr i2c_dev_attr = { 1530static struct omap_i2c_dev_attr i2c_dev_attr = {
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
index 78efb5936fb..80839b1f08d 100644
--- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c
@@ -1460,6 +1460,7 @@ static struct omap_hwmod omap3xxx_uart4_hwmod = {
1460static struct omap_hwmod_class i2c_class = { 1460static struct omap_hwmod_class i2c_class = {
1461 .name = "i2c", 1461 .name = "i2c",
1462 .sysc = &i2c_sysc, 1462 .sysc = &i2c_sysc,
1463 .rev = OMAP_I2C_IP_VERSION_1,
1463}; 1464};
1464 1465
1465/* 1466/*
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
index 2c6029bfa73..a4cda736dff 100644
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -2348,6 +2348,7 @@ static struct omap_hwmod_class_sysconfig omap44xx_i2c_sysc = {
2348static struct omap_hwmod_class omap44xx_i2c_hwmod_class = { 2348static struct omap_hwmod_class omap44xx_i2c_hwmod_class = {
2349 .name = "i2c", 2349 .name = "i2c",
2350 .sysc = &omap44xx_i2c_sysc, 2350 .sysc = &omap44xx_i2c_sysc,
2351 .rev = OMAP_I2C_IP_VERSION_2,
2351}; 2352};
2352 2353
2353/* i2c1 */ 2354/* i2c1 */