[PATCH] Char: stallion, correct __init macros
Some functions are now called from pci probing functiuon which is __devinit,
not __init, correct this to not free functions after init if hotplug enabled.
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
diff --git a/drivers/char/stallion.c b/drivers/char/stallion.c
index 24bdb48..596e69c 100644
--- a/drivers/char/stallion.c
+++ b/drivers/char/stallion.c
@@ -1923,7 +1923,7 @@
* Initialize all the ports on a panel.
*/
-static int __init stl_initports(struct stlbrd *brdp, struct stlpanel *panelp)
+static int __devinit stl_initports(struct stlbrd *brdp, struct stlpanel *panelp)
{
struct stlport *portp;
int chipmask, i;
@@ -1995,7 +1995,7 @@
* Try to find and initialize an EasyIO board.
*/
-static int __init stl_initeio(struct stlbrd *brdp)
+static int __devinit stl_initeio(struct stlbrd *brdp)
{
struct stlpanel *panelp;
unsigned int status;
@@ -2148,7 +2148,7 @@
* dealing with all types of ECH board.
*/
-static int __init stl_initech(struct stlbrd *brdp)
+static int __devinit stl_initech(struct stlbrd *brdp)
{
struct stlpanel *panelp;
unsigned int status, nxtid, ioaddr, conflict;
@@ -2372,7 +2372,7 @@
* since the initial search and setup is very different.
*/
-static int __init stl_brdinit(struct stlbrd *brdp)
+static int __devinit stl_brdinit(struct stlbrd *brdp)
{
int i, retval;
@@ -2438,7 +2438,7 @@
* Find the next available board number that is free.
*/
-static int __init stl_getbrdnr(void)
+static int __devinit stl_getbrdnr(void)
{
int i;