forked from Minki/linux
isdn: Cleanup Sections in PCMCIA driver teles
Compiling this driver gave a section mismatch, so I reviewed the init/exit paths of the driver and made the correct changes. WARNING: drivers/isdn/hisax/built-in.o(.text+0x56bfb): Section mismatch in reference from the function teles_cs_config() to the function .devinit.text:hisax_init_pcmcia() The function teles_cs_config() references the function __devinit hisax_init_pcmcia(). This is often because teles_cs_config lacks a __devinit annotation or the annotation of hisax_init_pcmcia is wrong. Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de> Acked-by: Karsten Keil <keil@b1-systems.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
93b39a0dba
commit
158e33d1c6
@ -57,7 +57,7 @@ module_param(protocol, int, 0);
|
||||
handler.
|
||||
*/
|
||||
|
||||
static int teles_cs_config(struct pcmcia_device *link);
|
||||
static int teles_cs_config(struct pcmcia_device *link) __devinit ;
|
||||
static void teles_cs_release(struct pcmcia_device *link);
|
||||
|
||||
/*
|
||||
@ -66,7 +66,7 @@ static void teles_cs_release(struct pcmcia_device *link);
|
||||
needed to manage one actual PCMCIA card.
|
||||
*/
|
||||
|
||||
static void teles_detach(struct pcmcia_device *p_dev);
|
||||
static void teles_detach(struct pcmcia_device *p_dev) __devexit ;
|
||||
|
||||
/*
|
||||
A linked list of "instances" of the teles_cs device. Each actual
|
||||
@ -112,7 +112,7 @@ typedef struct local_info_t {
|
||||
|
||||
======================================================================*/
|
||||
|
||||
static int teles_probe(struct pcmcia_device *link)
|
||||
static int __devinit teles_probe(struct pcmcia_device *link)
|
||||
{
|
||||
local_info_t *local;
|
||||
|
||||
@ -156,7 +156,7 @@ static int teles_probe(struct pcmcia_device *link)
|
||||
|
||||
======================================================================*/
|
||||
|
||||
static void teles_detach(struct pcmcia_device *link)
|
||||
static void __devexit teles_detach(struct pcmcia_device *link)
|
||||
{
|
||||
local_info_t *info = link->priv;
|
||||
|
||||
@ -200,7 +200,7 @@ static int teles_cs_configcheck(struct pcmcia_device *p_dev,
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
static int teles_cs_config(struct pcmcia_device *link)
|
||||
static int __devinit teles_cs_config(struct pcmcia_device *link)
|
||||
{
|
||||
local_info_t *dev;
|
||||
int i;
|
||||
@ -319,7 +319,7 @@ static struct pcmcia_driver teles_cs_driver = {
|
||||
.name = "teles_cs",
|
||||
},
|
||||
.probe = teles_probe,
|
||||
.remove = teles_detach,
|
||||
.remove = __devexit_p(teles_detach),
|
||||
.id_table = teles_ids,
|
||||
.suspend = teles_suspend,
|
||||
.resume = teles_resume,
|
||||
|
Loading…
Reference in New Issue
Block a user