Re: [RFC 3/6] clocksource: tcb_clksrc: use atmel_io.h to provide on-chip IO

From: Hans-Christian Egtvedt
Date: Thu Mar 26 2015 - 07:55:17 EST


Around Thu 26 Mar 2015 11:45:51 +0000 or thereabout, Ben Dooks wrote:
> Use <linux/atmel_io.h> to provide IO accessors which work on both
> AVR32 and ARM for on-chip peripherals.
>
> Signed-off-by: Ben Dooks <ben.dooks@xxxxxxxxxxxxxxx>

Acked-by: Hans-Christian Egtvedt <egtvedt@xxxxxxxxxxxx>

> --
> CC: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> CC: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> CC: Linux Kernel <linux-kernel@xxxxxxxxxxxxxxx>
> CC: Linux ARM Kernel <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
> CC: Andrew Victor <linux@xxxxxxxxxxxx>
> CC: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
> CC: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
> ---
> drivers/clocksource/tcb_clksrc.c | 10 +++-------
> 1 file changed, 3 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/clocksource/tcb_clksrc.c b/drivers/clocksource/tcb_clksrc.c
> index 0f819dd3..b25416d 100644
> --- a/drivers/clocksource/tcb_clksrc.c
> +++ b/drivers/clocksource/tcb_clksrc.c
> @@ -9,6 +9,7 @@
> #include <linux/ioport.h>
> #include <linux/io.h>
> #include <linux/platform_device.h>
> +#include <linux/atmel_io.h>
> #include <linux/atmel_tc.h>
>
>
> @@ -41,13 +42,8 @@
>
> static void __iomem *tcaddr;
>
> -#ifdef CONFIG_AVR32
> -#define tcb_readl __raw_readl
> -#define tcb_writel __raw_writel
> -#else
> -#define tcb_readl readl_relaxed
> -#define tcb_writel writel_relaxed
> -#endif
> +#define tcb_readl atmel_oc_readl
> +#define tcb_writel atmel_oc_writel

A note here is that we could replace these defines completely, and use the
atmel_oc_{read,write}{l,w} directly in the driver. That would be a nice
follow-up to this patch, first replace the defines to use the common
accessor, then replace the defines all together.

<snipp>

--
mvh
Hans-Christian Egtvedt
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/