lkml.org 
[lkml]   [2013]   [Nov]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 10/13] mfd: menelaus: pass menelaus_chip argument to menelaus <-> time helpers
Date
time_to_menelaus() and menelaus_to_time() are
static and can easily receive a struct menelaus_chip
pointer argument.

After this patch, the_menelaus is only used on
exported functions which are currently being
used by board-n8x0.c.

Signed-off-by: Felipe Balbi <balbi@ti.com>
---
drivers/mfd/menelaus.c | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/drivers/mfd/menelaus.c b/drivers/mfd/menelaus.c
index 13d1cb0..aa3c579 100644
--- a/drivers/mfd/menelaus.c
+++ b/drivers/mfd/menelaus.c
@@ -857,10 +857,9 @@ static irqreturn_t menelaus_irq(int irq, void *_menelaus)

#define RTC_HR_PM (1 << 7)

-static void menelaus_to_time(char *regs, struct rtc_time *t)
+static void menelaus_to_time(struct menelaus_chip *m,
+ char *regs, struct rtc_time *t)
{
- struct menelaus_chip *m = the_menelaus;
-
t->tm_sec = bcd2bin(regs[0]);
t->tm_min = bcd2bin(regs[1]);
if (m->rtc_control & RTC_CTRL_MODE12) {
@@ -874,9 +873,9 @@ static void menelaus_to_time(char *regs, struct rtc_time *t)
t->tm_year = bcd2bin(regs[5]) + 100;
}

-static int time_to_menelaus(struct rtc_time *t, int regnum)
+static int time_to_menelaus(struct menelaus_chip *m,
+ struct rtc_time *t, int regnum)
{
- struct menelaus_chip *m = the_menelaus;
int hour, status;

status = menelaus_write_reg(m, regnum++, bin2bcd(t->tm_sec));
@@ -944,7 +943,7 @@ static int menelaus_read_time(struct device *dev, struct rtc_time *t)
return -EIO;
}

- menelaus_to_time(regs, t);
+ menelaus_to_time(m, regs, t);
t->tm_wday = bcd2bin(regs[6]);

return 0;
@@ -956,7 +955,7 @@ static int menelaus_set_time(struct device *dev, struct rtc_time *t)
int status;

/* write date and time registers */
- status = time_to_menelaus(t, MENELAUS_RTC_SEC);
+ status = time_to_menelaus(m, t, MENELAUS_RTC_SEC);
if (status < 0)
return status;
status = menelaus_write_reg(m, MENELAUS_RTC_WKDAY, bin2bcd(t->tm_wday));
@@ -1001,7 +1000,7 @@ static int menelaus_read_alarm(struct device *dev, struct rtc_wkalrm *w)
return -EIO;
}

- menelaus_to_time(regs, &w->time);
+ menelaus_to_time(m, regs, &w->time);

w->enabled = !!(m->rtc_control & RTC_CTRL_AL_EN);

@@ -1029,7 +1028,7 @@ static int menelaus_set_alarm(struct device *dev, struct rtc_wkalrm *w)
}

/* write alarm registers */
- status = time_to_menelaus(&w->time, MENELAUS_RTC_AL_SEC);
+ status = time_to_menelaus(m, &w->time, MENELAUS_RTC_AL_SEC);
if (status < 0)
return status;

--
1.8.4.GIT


\
 
 \ /
  Last update: 2013-11-27 20:41    [W:1.170 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site