[PATCH 4/8] rtc: rtc-s3c: Add alarm_irq_enable RTC class operation

Ben Dooks ben-linux at fluff.org
Tue May 18 03:05:37 EDT 2010


On Tue, May 18, 2010 at 02:59:23PM +0900, Kukjin Kim wrote:
> From: Taekgyun Ko <taeggyun.ko at samsung.com>
> 
> This patch updates rtc-s3c driver to support
> 'alarm_irq_enable' RTC class operation.

this could have gone on one line.
 
> Signed-off-by: Taekgyun Ko <taeggyun.ko at samsung.com>
> Signed-off-by: Sangbeom Kim <sbkim73 at samsung.com>
> Signed-off-by: Kukjin Kim <kgene.kim at samsung.com>
> ---
>  drivers/rtc/rtc-s3c.c |   13 ++++++++-----
>  1 files changed, 8 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/rtc/rtc-s3c.c b/drivers/rtc/rtc-s3c.c
> index 4969b60..9364dc2 100644
> --- a/drivers/rtc/rtc-s3c.c
> +++ b/drivers/rtc/rtc-s3c.c
> @@ -59,18 +59,20 @@ static irqreturn_t s3c_rtc_tickirq(int irq, void *id)
>  }
>  
>  /* Update control registers */
> -static void s3c_rtc_setaie(int to)
> +static int s3c_rtc_setaie(struct device *dev, unsigned int enabled)
>  {
>  	unsigned int tmp;
>  
> -	pr_debug("%s: aie=%d\n", __func__, to);
> +	pr_debug("%s: aie=%d\n", __func__, enabled);
>  
>  	tmp = readb(s3c_rtc_base + S3C2410_RTCALM) & ~S3C2410_RTCALM_ALMEN;
>  
> -	if (to)
> +	if (enabled)
>  		tmp |= S3C2410_RTCALM_ALMEN;
>  
>  	writeb(tmp, s3c_rtc_base + S3C2410_RTCALM);
> +
> +	return 0;

Please stop changing names jsut because you feel like it.

>  }
>  
>  static int s3c_rtc_setpie(struct device *dev, int enabled)
> @@ -271,7 +273,7 @@ static int s3c_rtc_setalarm(struct device *dev, struct rtc_wkalrm *alrm)
>  
>  	writeb(alrm_en, base + S3C2410_RTCALM);
>  
> -	s3c_rtc_setaie(alrm->enabled);
> +	s3c_rtc_setaie(0, alrm->enabled);

if you've got a pointer to device, then please pass it.
  
>  	if (alrm->enabled)
>  		enable_irq_wake(s3c_rtc_alarmno);
> @@ -340,6 +342,7 @@ static const struct rtc_class_ops s3c_rtcops = {
>  	.set_alarm	= s3c_rtc_setalarm,
>  	.irq_set_freq	= s3c_rtc_setfreq,
>  	.irq_set_state	= s3c_rtc_setpie,
> +	.alarm_irq_enable = s3c_rtc_setaie,
>  	.proc	        = s3c_rtc_proc,
>  };
>  
> @@ -391,7 +394,7 @@ static int __devexit s3c_rtc_remove(struct platform_device *dev)
>  	rtc_device_unregister(rtc);
>  
>  	s3c_rtc_setpie(&dev->dev, 0);
> -	s3c_rtc_setaie(0);
> +	s3c_rtc_setaie(0, 0);

see previous comment about pointers to device.
  
>  	iounmap(s3c_rtc_base);
>  	release_resource(s3c_rtc_mem);
> -- 
> 1.6.2.5
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo at vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
-- 
Ben

Q:      What's a light-year?
A:      One-third less calories than a regular year.




More information about the linux-arm-kernel mailing list