Messages in this thread | | | Date | Mon, 6 Feb 2012 14:48:36 -0800 | From | Andres Salomon <> | Subject | Re: [PATCH] cs5535-mfgpt: don't call __init function from __devinit |
| |
On Thu, 2 Feb 2012 14:20:29 +0100 Danny Kukawka <danny.kukawka@bisect.de> wrote:
> Fix scan_timers() to be __devinit and not __init since > the function get called from cs5535_mfgpt_probe which is > __devinit.
You are correct that it should be devinit; however, it's incomplete. cs5535_mfgpt_probe calls scan_timers which calls reset_all_timers.. All of those should be devinit.
> > Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de> > --- > drivers/misc/cs5535-mfgpt.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/misc/cs5535-mfgpt.c b/drivers/misc/cs5535-mfgpt.c > index bc685bf..87a390d 100644 > --- a/drivers/misc/cs5535-mfgpt.c > +++ b/drivers/misc/cs5535-mfgpt.c > @@ -262,7 +262,7 @@ static void __init reset_all_timers(void) > * In other cases (such as with VSAless OpenFirmware), the system > firmware > * leaves timers available for us to use. > */ > -static int __init scan_timers(struct cs5535_mfgpt_chip *mfgpt) > +static int __devinit scan_timers(struct cs5535_mfgpt_chip *mfgpt) > { > struct cs5535_mfgpt_timer timer = { .chip = mfgpt }; > unsigned long flags;
| |