All of lore.kernel.org
 help / color / mirror / Atom feed
From: u.kleine-koenig@pengutronix.de (Uwe Kleine-König)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 04/20] imx/clock-imx27: use a macro to define registers
Date: Thu, 17 Dec 2009 10:58:52 +0100	[thread overview]
Message-ID: <20091217095852.GC19548@pengutronix.de> (raw)
In-Reply-To: <19241.56018.432600.636616@ipc1.ka-ro>

Hello,

On Thu, Dec 17, 2009 at 08:16:34AM +0100, Lothar Wa?mann wrote:
> Hi,
> 
> Uwe Kleine-K?nig writes:
> > This way the base address isn't hard coded in each register definition
> > 
> > Signed-off-by: Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>
> > Cc: Sascha Hauer <kernel@pengutronix.de>
> > Cc: Russell King <linux@arm.linux.org.uk>
> > Cc: Rabin Vincent <rabin@rab.in>
> > Cc: Javier Martin <javier.martin@vista-silicon.com>
> > Cc: Valentin Longchamp <valentin.longchamp@epfl.ch>
> > ---
> >  arch/arm/mach-mx2/clock_imx27.c |   30 ++++++++++++++++--------------
> >  1 files changed, 16 insertions(+), 14 deletions(-)
> > 
> > diff --git a/arch/arm/mach-mx2/clock_imx27.c b/arch/arm/mach-mx2/clock_imx27.c
> > index b010bf9..a533208 100644
> > --- a/arch/arm/mach-mx2/clock_imx27.c
> > +++ b/arch/arm/mach-mx2/clock_imx27.c
> > @@ -29,21 +29,23 @@
> >  #include <mach/common.h>
> >  #include <mach/hardware.h>
> >  
> > +#define IO_ADDR_CCM(off)	(IO_ADDRESS(CCM_BASE_ADDR) + (off))
> I would include the offset in the parameter for the IO_ADDRESS macro,
> so that the macro would check the complete address (including the
> offset) for validity:
> | +#define IO_ADDR_CCM(off)	(IO_ADDRESS((CCM_BASE_ADDR) + (off)))
> Otherwise e.g. a negative offset may lead to generation of bogus
> addresses.
I'd use

	#define IO_ADDR_CCM(off)	(IO_ADDRESS(CCM_BASE_ADDR + (off)))

and change it in a seperate patch.  And with negative addresses all bets
are off anyhow.

Grepping for "IO_ADDRESS\(.*\) *\+" finds some more places that want to
be fixed.

Best regards
Uwe

-- 
Pengutronix e.K.                              | Uwe Kleine-K?nig            |
Industrial Linux Solutions                    | http://www.pengutronix.de/  |

  reply	other threads:[~2009-12-17  9:58 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-16 18:52 [PATCH 00/20] imx cleanup series Uwe Kleine-König
2009-12-16 18:59 ` [PATCH 01/20] ARM: MX3: make CPU revision number detection work on all boards Uwe Kleine-König
2009-12-16 18:59   ` [PATCH 02/20] imx/mx2: fold crm_regs.h into its only consumer Uwe Kleine-König
2009-12-16 18:59     ` [PATCH 03/20] imx/clock-imx21: use a macro to define registers Uwe Kleine-König
2009-12-16 18:59       ` [PATCH 04/20] imx/clock-imx27: " Uwe Kleine-König
2009-12-16 18:59         ` [PATCH 05/20] imx/mach-mx2: use constants namespaced by the corresponding SOC (easy part) Uwe Kleine-König
2009-12-16 18:59           ` [PATCH 06/20] imx/mach-mx3: " Uwe Kleine-König
2009-12-16 18:59             ` [PATCH 07/20] imx/mx3: rename clock.c and iomux.c to {clock, iomux}-imx31.c Uwe Kleine-König
2009-12-16 18:59               ` [PATCH 08/20] imx/mx1: add newline at end of Makefile Uwe Kleine-König
2009-12-16 18:59                 ` [PATCH 09/20] imx/mx1: rename files defining a machine to mach-$mach.c Uwe Kleine-König
2009-12-16 18:59                   ` [PATCH 10/20] imx: rename Kconfig symbol for "Eukrea CPUIMX27 module" Uwe Kleine-König
2009-12-16 18:59                     ` [PATCH 11/20] imx: rename Kconfig symbol for "LogicPD MX27 LITEKIT platform" Uwe Kleine-König
2009-12-16 18:59                       ` [PATCH 12/20] imx/mx2: rename files defining a machine to mach-$mach.c Uwe Kleine-König
2009-12-16 18:59                         ` [PATCH 13/20] imx/mx3: " Uwe Kleine-König
2009-12-16 18:59                           ` [PATCH 14/20] imx: provide helper macro to define IO_ADDRESS Uwe Kleine-König
2009-12-16 18:59                             ` [PATCH 15/20] imx21: define and use MX21_IO_ADDRESS Uwe Kleine-König
2009-12-16 18:59                               ` [PATCH 16/20] imx27: define and use MX27_IO_ADDRESS Uwe Kleine-König
2009-12-16 18:59                                 ` [PATCH 17/20] imx31: define and use MX31_IO_ADDRESS Uwe Kleine-König
2009-12-16 18:59                                   ` [PATCH 18/20] imx25: redefine MX25_IO_ADDRESS using IMX_IO_ADDRESS Uwe Kleine-König
2009-12-16 19:00                                     ` [PATCH 19/20] imx35: define and use MX35_IO_ADDRESS Uwe Kleine-König
2009-12-16 19:00                                       ` [PATCH 20/20] mx3/kzm_arm11_01: define and use board specific IO_ADDRESS macro Uwe Kleine-König
2009-12-17  7:06                                 ` [PATCH 16/20] imx27: define and use MX27_IO_ADDRESS Lothar Waßmann
2009-12-17  8:28                                   ` Sascha Hauer
2009-12-17 10:05                                   ` Uwe Kleine-König
2009-12-17 11:49                                     ` Lothar Waßmann
2009-12-17 13:17                                       ` Uwe Kleine-König
2009-12-16 20:58                   ` [PATCH 09/20] imx/mx1: rename files defining a machine to mach-$mach.c Guennadi Liakhovetski
2009-12-17  9:32                     ` Uwe Kleine-König
2009-12-16 20:48             ` [PATCH 06/20] imx/mach-mx3: use constants namespaced by the corresponding SOC (easy part) Guennadi Liakhovetski
2009-12-17  7:16         ` [PATCH 04/20] imx/clock-imx27: use a macro to define registers Lothar Waßmann
2009-12-17  9:58           ` Uwe Kleine-König [this message]
2010-01-08 16:15 ` [PATCH 00/20] imx cleanup series Uwe Kleine-König
2010-01-08 16:17   ` [PATCH 01/25] imx/mx2: fold crm_regs.h into its only consumer Uwe Kleine-König
2010-01-08 16:17     ` [PATCH 02/25] imx/clock-imx21: use a macro to define registers Uwe Kleine-König
2010-01-08 16:17       ` [PATCH 03/25] imx/clock-imx27: " Uwe Kleine-König
2010-01-08 16:17         ` [PATCH 04/25] imx/mach-mx2: use constants namespaced by the corresponding SOC (easy part) Uwe Kleine-König
2010-01-08 16:17           ` [PATCH 05/25] imx/mach-mx3: " Uwe Kleine-König
2010-01-08 16:17             ` [PATCH 06/25] imx/mx3: rename clock.c and iomux.c to {clock, iomux}-imx31.c Uwe Kleine-König
2010-01-08 16:17               ` [PATCH 07/25] imx/mx1: add newline at end of Makefile Uwe Kleine-König
2010-01-08 16:17                 ` [PATCH 08/25] imx/mx1: rename files defining a machine to mach-$mach.c Uwe Kleine-König
2010-01-08 16:17                   ` [PATCH 09/25] imx: rename Kconfig symbol for "Eukrea CPUIMX27 module" Uwe Kleine-König
2010-01-08 16:17                     ` [PATCH 10/25] imx: rename Kconfig symbol for "LogicPD MX27 LITEKIT platform" Uwe Kleine-König
2010-01-08 16:17                       ` [PATCH 11/25] imx/mx2: rename files defining a machine to mach-$mach.c Uwe Kleine-König
2010-01-08 16:17                         ` [PATCH 12/25] imx/mx3: " Uwe Kleine-König
2010-01-08 16:17                           ` [PATCH 13/25] imx: provide helper macro to define IO_ADDRESS Uwe Kleine-König
2010-01-08 16:17                             ` [PATCH 14/25] imx21: define and use MX21_IO_ADDRESS Uwe Kleine-König
2010-01-08 16:17                               ` [PATCH 15/25] imx27: define and use MX27_IO_ADDRESS Uwe Kleine-König
2010-01-08 16:17                                 ` [PATCH 16/25] imx31: define and use MX31_IO_ADDRESS Uwe Kleine-König
2010-01-08 16:17                                   ` [PATCH 17/25] imx25: redefine MX25_IO_ADDRESS using IMX_IO_ADDRESS Uwe Kleine-König
2010-01-08 16:17                                     ` [PATCH 18/25] imx35: define and use MX35_IO_ADDRESS Uwe Kleine-König
2010-01-08 16:17                                       ` [PATCH 19/25] mx3/kzm_arm11_01: define and use board specific IO_ADDRESS macro Uwe Kleine-König
2010-01-08 16:17                                         ` [PATCH 20/25] imx: mangle addresses after adding the offset Uwe Kleine-König
2010-01-08 16:17                                           ` [PATCH 21/25] imx: only define deprecated symbols conditionally Uwe Kleine-König
2010-01-08 16:17                                             ` [PATCH 22/25] imx: remove mx1ads defconfig Uwe Kleine-König
2010-01-08 16:17                                               ` [PATCH 23/25] imx: remove unneeded include of mach/hardware.h Uwe Kleine-König
2010-01-08 16:17                                                 ` [PATCH 24/25] imx: properly protect mach/mx{1, [25][157x]}.h from multiple inclusion Uwe Kleine-König
2010-01-08 16:17                                                   ` [PATCH 25/25] imx: define functions to configure chip selects in the WEIM Uwe Kleine-König
2010-02-02 13:43                                             ` [PATCH 21/25] imx: only define deprecated symbols conditionally Jiri Kosina
2010-02-02 13:44                                             ` Jiri Kosina
2010-02-02 14:33                                               ` Uwe Kleine-König
2010-02-04  1:29                   ` [PATCH 08/25] imx/mx1: rename files defining a machine to mach-$mach.c Amit Kucheria
2010-02-04  8:45                     ` Uwe Kleine-König
2010-02-05 17:38                       ` Amit Kucheria
2010-02-04 12:06                     ` Mark Brown
2010-02-04 12:25                       ` Eric Miao
2010-01-14 10:24   ` [PATCH 00/20] imx cleanup series Sascha Hauer

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=20091217095852.GC19548@pengutronix.de \
    --to=u.kleine-koenig@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 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.