I2C: OMAP2+: Solve array bounds overflow error on i2c idle
authorAndy Green <andy@warmcat.com>
Tue, 8 Mar 2011 11:08:27 +0000 (11:08 +0000)
committerTony Lindgren <tony@atomide.com>
Tue, 8 Mar 2011 23:23:15 +0000 (15:23 -0800)
commitb3d9e1e21e16c25b339894fba20fe0a19ff6a4b1
tree17eb21b16dc4aabebe108d4cf533556ec3e55786
parentb86ee6c89177aed2aa1355771aef2ac2a66e3254
I2C: OMAP2+: Solve array bounds overflow error on i2c idle

This solves the main problem the patch series is about.  Prior
to this patch on OMAP3530 the driver wrongly interprets the I2C
peripheral unit's own reported revision as meaning it is running
on an IP V2 device and must use the extended registers.

In fact OMAP3530 is IP V1 with the smaller register set, the
reason for the confusion is that the hardware does in fact report
having the same IP revision index as is found on an OMAP4430,
which really is IP V2 and has the extended registers.

This corrects the test for which registers to use so that it
decides using hwmod knowledge found in the platform_data.

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>
drivers/i2c/busses/i2c-omap.c