From: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
To: Shubhrajyoti D <shubhrajyoti-l0cyMroinI0@public.gmane.org>
Cc: linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org,
w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org,
Jon Hunter <jon-hunter-l0cyMroinI0@public.gmane.org>
Subject: Re: [PATCHv8 06/13] I2C: OMAP: Correct I2C revision for OMAP3
Date: Wed, 20 Jun 2012 03:32:35 -0700 [thread overview]
Message-ID: <20120620103235.GD12766@atomide.com> (raw)
In-Reply-To: <1340029828-20751-7-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
* Shubhrajyoti D <shubhrajyoti-l0cyMroinI0@public.gmane.org> [120618 07:35]:
> From: Jon Hunter <jon-hunter-l0cyMroinI0@public.gmane.org>
>
> The OMAP3530 is based upon the same silicon as the OMAP3430 and so the I2C
> revision is the same for 3430 and 3530. However, the OMAP3630 device has the
> same I2C revision as OMAP4. Correct the revision definition to reflect this.
>
> This patch is based on work done by Jon Hunter <jon-hunter-l0cyMroinI0@public.gmane.org>
> Changes from his patch
> - Update OMAP_I2C_REV_ON_3430 also to reflect that it is same as 3530
...
> /* timeout waiting for the controller to respond */
> #define OMAP_I2C_TIMEOUT (msecs_to_jiffies(1000))
> @@ -298,7 +298,7 @@ static int omap_i2c_reset(struct omap_i2c_dev *dev)
> omap_i2c_write_reg(dev, OMAP_I2C_SYSC_REG,
> SYSC_AUTOIDLE_MASK);
>
> - } else if (dev->rev >= OMAP_I2C_REV_ON_3430) {
> + } else if (dev->rev >= OMAP_I2C_REV_ON_3430_3530) {
> dev->syscstate = SYSC_AUTOIDLE_MASK;
> dev->syscstate |= SYSC_ENAWAKEUP_MASK;
> dev->syscstate |= (SYSC_IDLEMODE_SMART <<
Having to patch all over the place for these revision defines leads
into unmaintainable code as new SoCs get added.
Please instead just check the revision once during init, then set
up some feature bits like I2C_OMAP_NEEDS_XYZ_RESET that the runtime
code can check.
> @@ -1055,7 +1055,7 @@ omap_i2c_probe(struct platform_device *pdev)
> if (dev->flags & OMAP_I2C_FLAG_APPLY_ERRATA_I207)
> dev->errata |= I2C_OMAP_ERRATA_I207;
>
> - if (dev->rev <= OMAP_I2C_REV_ON_3430)
> + if (dev->rev <= OMAP_I2C_REV_ON_3430_3530)
> dev->errata |= I2C_OMAP_ERRATA_I462;
>
> if (!(dev->flags & OMAP_I2C_FLAG_NO_FIFO)) {
> @@ -1073,7 +1073,7 @@ omap_i2c_probe(struct platform_device *pdev)
>
> dev->fifo_size = (dev->fifo_size / 2);
>
> - if (dev->rev >= OMAP_I2C_REV_ON_3530_4430)
> + if (dev->rev >= OMAP_I2C_REV_ON_3630_4430)
> dev->b_hw = 0; /* Disable hardware fixes */
> else
> dev->b_hw = 1; /* Enable hardware fixes */
That way the code does not need to change when new SoC revisions
get added.
Tony
next prev parent reply other threads:[~2012-06-20 10:32 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-18 14:30 [PATCHv8 00/13] I2C cleanups Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 01/13] I2C: OMAP: I2C register restore only if context is lost Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 02/13] I2C: OMAP: Remove the definition of SYSS_RESETDONE_MASK Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 05/13] I2C: OMAP: Optimise the remove code Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 09/13] I2C: OMAP: Do not initialise the completion everytime Shubhrajyoti D
[not found] ` <1340029828-20751-1-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-06-18 14:30 ` [PATCHv8 03/13] I2C: OMAP: Remove reset at init Shubhrajyoti D
2012-06-20 10:29 ` Tony Lindgren
[not found] ` <20120620102905.GC12766-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2012-06-21 7:03 ` Shubhrajyoti
2012-06-21 7:20 ` Tony Lindgren
2012-06-21 9:30 ` Shubhrajyoti
[not found] ` <4FE2E9D3.5060304-l0cyMroinI0@public.gmane.org>
2012-06-26 11:15 ` Tony Lindgren
2012-06-18 14:30 ` [PATCHv8 04/13] I2C: OMAP: Recover from Bus Busy condition Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 06/13] I2C: OMAP: Correct I2C revision for OMAP3 Shubhrajyoti D
[not found] ` <1340029828-20751-7-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-06-20 10:32 ` Tony Lindgren [this message]
2012-06-20 13:01 ` Shubhrajyoti
[not found] ` <4FE1C9AC.3020104-l0cyMroinI0@public.gmane.org>
2012-06-20 14:14 ` Tony Lindgren
[not found] ` <20120620141437.GN12766-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2012-06-21 6:56 ` Shubhrajyoti Datta
2012-06-18 14:30 ` [PATCHv8 07/13] I2C: OMAP: use devm_* functions Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 08/13] I2C: OMAP: Use SET_RUNTIME_PM_OPS Shubhrajyoti D
2012-06-18 14:30 ` [PATCHv8 10/13] I2C: OMAP: simplify num_bytes handling Shubhrajyoti D
[not found] ` <1340029828-20751-11-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-06-18 15:22 ` Wolfram Sang
2012-06-18 14:30 ` [PATCHv8 11/13] I2C: OMAP: decrease indentation level on data handling Shubhrajyoti D
2012-06-18 15:25 ` Wolfram Sang
2012-06-18 14:30 ` [PATCHv8 13/13] I2C: OMAP: simplify omap_i2c_ack_stat() Shubhrajyoti D
[not found] ` <1340029828-20751-14-git-send-email-shubhrajyoti-l0cyMroinI0@public.gmane.org>
2012-06-18 15:30 ` Wolfram Sang
[not found] ` <20120618153000.GC10768-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2012-06-19 9:20 ` Shubhrajyoti Datta
2012-06-19 13:33 ` Wolfram Sang
2012-06-18 15:33 ` [PATCHv8 00/13] I2C cleanups Wolfram Sang
2012-06-18 14:30 ` [PATCHv8 12/13] I2C: OMAP: add blank lines Shubhrajyoti D
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=20120620103235.GD12766@atomide.com \
--to=tony-4v6ys6ai5vpbdgjk7y7tuq@public.gmane.org \
--cc=ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org \
--cc=jon-hunter-l0cyMroinI0@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 \
--cc=shubhrajyoti-l0cyMroinI0@public.gmane.org \
--cc=w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).