All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman-l0cyMroinI0@public.gmane.org>
To: Ben Dooks <ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org>,
	linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: Andy Green <andy.green-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: [PATCH v4 03/18] I2C: OMAP2+: Introduce I2C IP versioning constants
Date: Wed,  1 Jun 2011 17:19:29 -0700	[thread overview]
Message-ID: <1306973984-15165-4-git-send-email-khilman@ti.com> (raw)
In-Reply-To: <1306973984-15165-1-git-send-email-khilman-l0cyMroinI0@public.gmane.org>

From: Andy Green <andy-/Zus8d0mwwtBDgjK7y7TUQ@public.gmane.org>

These represent the two kinds of (incompatible) OMAP I2C
peripheral unit in use so far.

The constants are in linux/i2c-omap.h so the omap i2c driver can have
them too.

Cc: patches-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org
Cc: Ben Dooks <ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org>
Reported-by: Peter Maydell <peter.maydell-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Signed-off-by: Andy Green <andy.green-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Signed-off-by: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
Signed-off-by: Kevin Hilman <khilman-l0cyMroinI0@public.gmane.org>
---
 arch/arm/plat-omap/include/plat/i2c.h |    1 +
 include/linux/i2c-omap.h              |   12 ++++++++++++
 2 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-omap/include/plat/i2c.h b/arch/arm/plat-omap/include/plat/i2c.h
index 878d632..a1d3d06 100644
--- a/arch/arm/plat-omap/include/plat/i2c.h
+++ b/arch/arm/plat-omap/include/plat/i2c.h
@@ -22,6 +22,7 @@
 #define __ASM__ARCH_OMAP_I2C_H
 
 #include <linux/i2c.h>
+#include <linux/i2c-omap.h>
 
 #if defined(CONFIG_I2C_OMAP) || defined(CONFIG_I2C_OMAP_MODULE)
 extern int omap_register_i2c_bus(int bus_id, u32 clkrate,
diff --git a/include/linux/i2c-omap.h b/include/linux/i2c-omap.h
index 7472449..701886d 100644
--- a/include/linux/i2c-omap.h
+++ b/include/linux/i2c-omap.h
@@ -3,6 +3,18 @@
 
 #include <linux/platform_device.h>
 
+/*
+ * Version 2 of the I2C peripheral unit has a different register
+ * layout and extra registers.  The ID register in the V2 peripheral
+ * unit on the OMAP4430 reports the same ID as the V1 peripheral
+ * unit on the OMAP3530, so we must inform the driver which IP
+ * version we know it is running on from platform / cpu-specific
+ * code using these constants in the hwmod class definition.
+ */
+
+#define OMAP_I2C_IP_VERSION_1 1
+#define OMAP_I2C_IP_VERSION_2 2
+
 struct omap_i2c_bus_platform_data {
 	u32		clkrate;
 	void		(*set_mpu_wkup_lat)(struct device *dev, long set);
-- 
1.7.4

WARNING: multiple messages have this Message-ID (diff)
From: khilman@ti.com (Kevin Hilman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 03/18] I2C: OMAP2+: Introduce I2C IP versioning constants
Date: Wed,  1 Jun 2011 17:19:29 -0700	[thread overview]
Message-ID: <1306973984-15165-4-git-send-email-khilman@ti.com> (raw)
In-Reply-To: <1306973984-15165-1-git-send-email-khilman@ti.com>

From: Andy Green <andy@warmcat.com>

These represent the two kinds of (incompatible) OMAP I2C
peripheral unit in use so far.

The constants are in linux/i2c-omap.h so the omap i2c driver can have
them too.

Cc: patches at 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>
---
 arch/arm/plat-omap/include/plat/i2c.h |    1 +
 include/linux/i2c-omap.h              |   12 ++++++++++++
 2 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/arch/arm/plat-omap/include/plat/i2c.h b/arch/arm/plat-omap/include/plat/i2c.h
index 878d632..a1d3d06 100644
--- a/arch/arm/plat-omap/include/plat/i2c.h
+++ b/arch/arm/plat-omap/include/plat/i2c.h
@@ -22,6 +22,7 @@
 #define __ASM__ARCH_OMAP_I2C_H
 
 #include <linux/i2c.h>
+#include <linux/i2c-omap.h>
 
 #if defined(CONFIG_I2C_OMAP) || defined(CONFIG_I2C_OMAP_MODULE)
 extern int omap_register_i2c_bus(int bus_id, u32 clkrate,
diff --git a/include/linux/i2c-omap.h b/include/linux/i2c-omap.h
index 7472449..701886d 100644
--- a/include/linux/i2c-omap.h
+++ b/include/linux/i2c-omap.h
@@ -3,6 +3,18 @@
 
 #include <linux/platform_device.h>
 
+/*
+ * Version 2 of the I2C peripheral unit has a different register
+ * layout and extra registers.  The ID register in the V2 peripheral
+ * unit on the OMAP4430 reports the same ID as the V1 peripheral
+ * unit on the OMAP3530, so we must inform the driver which IP
+ * version we know it is running on from platform / cpu-specific
+ * code using these constants in the hwmod class definition.
+ */
+
+#define OMAP_I2C_IP_VERSION_1 1
+#define OMAP_I2C_IP_VERSION_2 2
+
 struct omap_i2c_bus_platform_data {
 	u32		clkrate;
 	void		(*set_mpu_wkup_lat)(struct device *dev, long set);
-- 
1.7.4

  parent reply	other threads:[~2011-06-02  0:19 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-02  0:19 [PATCH v4 00/18] I2C: OMAP: I2C fixes, removal of cpu_is... from driver Kevin Hilman
2011-06-02  0:19 ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 02/18] I2C: OMAP2+: Name registers in I2C IP V2 only accordingly Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 04/18] I2C: OMAP2+: Tag all OMAP2+ hwmod defintions with I2C IP revision Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 09/18] I2C: OMAP2+: Solve array bounds overflow error on i2c idle Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 10/18] I2C: OMAP2+: address confused probed version naming Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 11/18] I2C: OMAP2+: increase omap_i2c_dev_attr flags from u8 to u32 Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 14/18] I2C: OMAP1/OMAP2+: create omap I2C functionality flags for each cpu_... test Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 15/18] I2C: OMAP2+: add correct functionality flags to all omap2plus i2c dev_attr Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 16/18] I2C: OMAP1: set i2c unit feature implementation flags in platform data Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 17/18] I2C: OMAP2+: Convert omap I2C driver to use feature implementation flags from " Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
2011-06-02  0:19 ` [PATCH v4 18/18] I2C: OMAP1/OMAP2+: prepend I2C IP version to probed version shown in dev_info Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman
     [not found] ` <1306973984-15165-1-git-send-email-khilman-l0cyMroinI0@public.gmane.org>
2011-06-02  0:19   ` [PATCH v4 01/18] I2C: OMAP2+: Set hwmod flags to only allow 16-bit accesses to i2c Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-02  0:19   ` Kevin Hilman [this message]
2011-06-02  0:19     ` [PATCH v4 03/18] I2C: OMAP2+: Introduce I2C IP versioning constants Kevin Hilman
2011-06-02  0:19   ` [PATCH v4 05/18] I2C: OMAP: add rev to omap i2c platform data Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-02  0:19   ` [PATCH v4 06/18] I2C: OMAP1: set IP revision in " Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-02  0:19   ` [PATCH v4 07/18] I2C: OMAP2+: Pass hwmod rev knowledge via platform_data when i2c bus added Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-02  0:19   ` [PATCH v4 08/18] I2C: OMAP2+: use platform_data ip revision to select register map Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-02  0:19   ` [PATCH v4 12/18] I2C: OMAP1/OMAP2+: add flags field to omap i2c platform data Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-02  0:19   ` [PATCH v4 13/18] I2C: OMAP2+: Pass flags up to omap i2c platform_data as well Kevin Hilman
2011-06-02  0:19     ` Kevin Hilman
2011-06-07 13:41   ` [PATCH v4 00/18] I2C: OMAP: I2C fixes, removal of cpu_is... from driver Ben Dooks
2011-06-07 13:41     ` Ben Dooks
2011-06-15 21:36   ` Ben Dooks
2011-06-15 21:36     ` Ben Dooks
     [not found]     ` <20110615213637.GH15795-SMNkleLxa3Z6Wcw2j4pizdi2O/JbrIOy@public.gmane.org>
2011-06-15 23:27       ` Nicolas Pitre
2011-06-15 23:27         ` Nicolas Pitre
2011-06-15 23:33       ` Kevin Hilman
2011-06-15 23:33         ` Kevin Hilman
2011-06-27 22:12         ` Kevin Hilman
2011-06-27 22:12           ` Kevin Hilman
2011-06-27 22:15           ` Kevin Hilman
2011-06-27 22:15             ` Kevin Hilman
2011-07-05 19:00             ` Kevin Hilman
2011-07-05 19:00               ` Kevin Hilman
2011-07-07 23:01               ` Ben Dooks
2011-07-07 23:01                 ` Ben Dooks
2011-07-08 15:14                 ` Kevin Hilman
2011-07-08 15:14                   ` Kevin Hilman

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=1306973984-15165-4-git-send-email-khilman@ti.com \
    --to=khilman-l0cymroini0@public.gmane.org \
    --cc=andy.green-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    /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.