[PATCH 2 00/18] I2C: OMAP: Fixes and removal of cpu_... from driver
Cousson, Benoit
b-cousson at ti.com
Tue Mar 8 16:36:36 EST 2011
Hi Andy,
Thanks for that really fast update. That looks pretty good at first
glance. I still have to review in details.
And we need to find some volunteers for OMAP1 & 2 testing.
Thanks,
Benoit
On 3/8/2011 12:07 PM, Andy Green wrote:
> The following series removes cpu_...() usage completely from the
> omap-i2c driver by having decisions about functional implementation
> choices in the SoC held in cpu-specific hwmod tables that are
> already established, or for OMAP1 where there is no hwmod, set at
> OMAP1-specific i2c bus addition time.
>
> Along the way it solves two issues with the existing implementation,
> that only 16-bit accesses are documented to be allowed to the I2C
> peripheral unit, and that due to a confusion in the existing driver
> about whether it is faced with a newer IP version on OMAP3530, currently
> it writes to a random non-existent I2C register at times on that
> platform.
>
> The patch series is quite extended from the first try thanks to
> comments from Benoit Cousson.
>
> Patches are tested on OMAP3530 and OMAP4430 I have but will need
> confirming they don't break anything on OMAP1xxx and OMAP2xxx as
> agreed with Benoit.
>
> Cc: patches at linaro.org
> Cc: Ben Dooks<ben-linux at fluff.org>
> Reported-by: Peter Maydell<peter.maydell at linaro.org>
>
> ---
>
> Andy Green (18):
> I2C: OMAP1/OMAP2+: prepend I2C IP version to probed version shown in dev_info
> I2C: OMAP2+: Convert omap I2C driver to use feature implementation flags from platform data
> I2C: OMAP1: set i2c unit feature implementation flags in platform data
> I2C: OMAP2+: add correct functionality flags to all omap2plus i2c dev_attr
> I2C: OMAP1/OMAP2+: create omap I2C functionality flags for each cpu_... test
> I2C: OMAP2+: Pass flags up to omap i2c platform_data as well
> I2C: OMAP1/OMAP2+: add flags field to omap i2c platform data
> I2C: OMAP2+: increase omap_i2c_dev_attr flags from u8 to u32
> I2C: OMAP2+: address confused probed version naming
> I2C: OMAP2+: Solve array bounds overflow error on i2c idle
> I2C: OMAP2+: use platform_data ip revision to select register map
> I2C: OMAP2+: Pass hwmod rev knowledge via platform_data when i2c bus added
> I2C: OMAP1: set IP revision in platform data
> I2C: OMAP: add rev to omap i2c platform data
> I2C: OMAP2+: Tag all OMAP2+ hwmod defintions with I2C IP revision
> I2C: OMAP2+: Introduce I2C IP versioning constants
> I2C: OMAP2+: Name registers in I2C IP V2 only accordingly
> I2C: OMAP2+: Set hwmod flags to only allow 16-bit accesses to i2c
>
>
> arch/arm/mach-omap2/omap_hwmod_2420_data.c | 8 ++
> arch/arm/mach-omap2/omap_hwmod_2430_data.c | 6 ++
> arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 13 ++++
> arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 18 ++++-
> arch/arm/plat-omap/i2c.c | 27 ++++++++
> arch/arm/plat-omap/include/plat/i2c.h | 3 +
> drivers/i2c/busses/i2c-omap.c | 98 +++++++++++++++-------------
> include/linux/i2c-omap.h | 29 ++++++++
> 8 files changed, 151 insertions(+), 51 deletions(-)
>
More information about the linux-arm-kernel
mailing list