linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: s.hauer@pengutronix.de (Sascha Hauer)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc code to add support for i.MX5
Date: Fri, 4 Dec 2009 11:59:08 +0100	[thread overview]
Message-ID: <20091204105908.GJ15126@pengutronix.de> (raw)
In-Reply-To: <20091204103102.GC3747@matterhorn.verdurent.com>

On Fri, Dec 04, 2009 at 12:31:02PM +0200, Amit Kucheria wrote:
> Some comments below:
> 
> On 09 Dec 04, Sascha Hauer wrote:
> > On Thu, Dec 03, 2009 at 08:12:58PM -0700, Herring Robert-RA7055 wrote:
> > > Amit,
> > > 
> > > I would suggest you refactor the timer code into version 1 and version 2
> > > either as 2 separate files or with a timer_is_v2() function rather than
> > > the mess of cpu_is_X macros it currently has. Essentially there are 2
> > > versions of the timer hardware. Version 1 is found on MX1/MXL and MX21.
> > > Version 2 is found on MX25, MX27, MX31, MX35, MX37, MX51, and future
> > > parts. I will send you what we have done in our tree.
> > Like this:
> > 
> > 
> > commit ed6bbc59e3f6b33b48a0d5ac053220cd318ceee7
> > Author: Sascha Hauer <s.hauer@pengutronix.de>
> > Date:   Tue Nov 17 16:31:13 2009 +0100
> > 
> >     mxc timer: Add mx51 support
> >     
> >     Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> > 
> > diff --git a/arch/arm/plat-mxc/time.c b/arch/arm/plat-mxc/time.c
> > index 844567e..0c45509 100644
> > --- a/arch/arm/plat-mxc/time.c
> > +++ b/arch/arm/plat-mxc/time.c
> > @@ -57,6 +57,9 @@
> >  #define MX3_TCN			0x24
> >  #define MX3_TCMP		0x10
> >  
> > +#define timer_is_v1()	(cpu_is_mx1() || cpu_is_mx27())
>                                                         ^^^^
>                                       Shouldn't this be mx21 according to
> 				      Rob's comment?

i.MX1, i.MX21 and i.MX27 are identical, at least that's what the code
shows, so it should be:

#define timer_is_v1()      (cpu_is_mx1() || cpu_is_mx21() || cpu_is_mx27())
#define timer_is_v2()      (cpu_is_mx3() || cpu_is_mx25() || cpu_is_mx51() || cpu_is_mxc91231())

One difference between i.MX1 and i.MX21/27 is:

static void gpt_irq_acknowledge(void)
{
	if (timer_is_v1()) {
		if (cpu_is_mx1())
			__raw_writel(0, timer_base + MX1_2_TSTAT);
		else
			__raw_writel(MX2_TSTAT_CAPT | MX2_TSTAT_COMP,
				timer_base + MX1_2_TSTAT);
	}

	if (timer_is_v2())
		__raw_writel(MX3_TSTAT_OF1, timer_base + MX3_TSTAT);
}

I'll test the code before applying it to be sure, I can test on all
CPUs except i.MX21 and the 91231.

Sascha


-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

  reply	other threads:[~2009-12-04 10:59 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-04  2:47 [RFC][PATCH 00/10] Base support for Freescale i.MX51 SoC platform Amit Kucheria
2009-12-04  2:47 ` [RFC][PATCH 01/10] arm: mxc: New interrupt controller (TZIC) for i.MX5 family Amit Kucheria
2009-12-04  2:47   ` [RFC][PATCH 02/10] arm: mxc: base support for Freescale i.MX51 processor Amit Kucheria
2009-12-04  2:47     ` [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc code to add support for i.MX5 Amit Kucheria
2009-12-04  2:47       ` [RFC][PATCH 04/10] arm: mxc: Fix Drive Strength Field in the IOMUX controller Amit Kucheria
2009-12-04  2:47         ` [RFC][PATCH 05/10] mxc: Add board support for the i.MX51 babbage board Amit Kucheria
2009-12-04  2:47           ` [RFC][PATCH 06/10] fec: fix uninitialized rx buffer usage Amit Kucheria
2009-12-04  2:47             ` [RFC][PATCH 07/10] fec: Add LAN8700 phy support Amit Kucheria
2009-12-04  2:47               ` [RFC][PATCH 08/10] arm: mxc: Add IO multiplexing support for FEC Amit Kucheria
2009-12-04  2:47                 ` [RFC][PATCH 09/10] fec: Add ARCH_MX5 as a dependency Amit Kucheria
2009-12-04  2:47                   ` [RFC][PATCH 10/10] arm: mxc: Add imx51_defconfig Amit Kucheria
2009-12-04 11:30                 ` [RFC][PATCH 08/10] arm: mxc: Add IO multiplexing support for FEC Sascha Hauer
2009-12-04 11:15               ` [RFC][PATCH 07/10] fec: Add LAN8700 phy support Sascha Hauer
2009-12-04 11:13             ` [RFC][PATCH 06/10] fec: fix uninitialized rx buffer usage Sascha Hauer
2009-12-08  4:31               ` Herring Robert-RA7055
2009-12-04 10:25           ` [RFC][PATCH 05/10] mxc: Add board support for the i.MX51 babbage board Sascha Hauer
2009-12-04 11:03           ` Sascha Hauer
2009-12-10 10:31           ` Russell King - ARM Linux
2009-12-04  9:38         ` [RFC][PATCH 04/10] arm: mxc: Fix Drive Strength Field in the IOMUX controller Uwe Kleine-König
2009-12-04 11:28           ` Sascha Hauer
2009-12-04  3:12       ` [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc code to add support for i.MX5 Herring Robert-RA7055
2009-12-04  8:34         ` Sascha Hauer
2009-12-04 10:31           ` Amit Kucheria
2009-12-04 10:59             ` Sascha Hauer [this message]
2009-12-07 17:17               ` [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc codeto " Herring Robert-RA7055
2009-12-07 20:03                 ` Robert Schwebel
2009-12-07 21:21                   ` [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc codetoadd " Herring Robert-RA7055
2009-12-07 18:06           ` [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc codeto add " Herring Robert-RA7055
2009-12-04  4:05       ` [RFC][PATCH 03/10] arm: mxc: changes to common plat-mxc code to " Andres Salomon
2009-12-04 11:16         ` Amit Kucheria
2009-12-04 10:43       ` Russell King - ARM Linux
2009-12-04  9:41     ` [RFC][PATCH 02/10] arm: mxc: base support for Freescale i.MX51 processor Uwe Kleine-König
2009-12-04 10:24       ` Amit Kucheria
2009-12-04 10:38     ` Russell King - ARM Linux
2009-12-04  9:36   ` [RFC][PATCH 01/10] arm: mxc: New interrupt controller (TZIC) for i.MX5 family Uwe Kleine-König
2009-12-04 10:38   ` Russell King - ARM Linux
2009-12-04 17:01   ` Randy Dunlap
2009-12-04 20:30     ` Amit Kucheria

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=20091204105908.GJ15126@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.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).