staging: comedi: ni_daq_700: refactor the pcmcia support code
Refactor the pcmcia support code to remove the need for the forward declarations. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Cc: Ian Abbott <abbotti@mev.co.uk> Cc: Frank Mori Hess <fmhess@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
59c9c00234
commit
1a4d5b17c3
@ -306,49 +306,11 @@ static void dio700_detach(struct comedi_device *dev)
|
||||
free_irq(dev->irq, dev);
|
||||
};
|
||||
|
||||
static void dio700_config(struct pcmcia_device *link);
|
||||
static void dio700_release(struct pcmcia_device *link);
|
||||
static int dio700_cs_suspend(struct pcmcia_device *p_dev);
|
||||
static int dio700_cs_resume(struct pcmcia_device *p_dev);
|
||||
|
||||
static int dio700_cs_attach(struct pcmcia_device *);
|
||||
static void dio700_cs_detach(struct pcmcia_device *);
|
||||
|
||||
struct local_info_t {
|
||||
struct pcmcia_device *link;
|
||||
int stop;
|
||||
struct bus_operations *bus;
|
||||
};
|
||||
|
||||
static int dio700_cs_attach(struct pcmcia_device *link)
|
||||
static void dio700_release(struct pcmcia_device *link)
|
||||
{
|
||||
struct local_info_t *local;
|
||||
dev_dbg(&link->dev, "dio700_release\n");
|
||||
|
||||
printk(KERN_INFO "ni_daq_700: cs-attach\n");
|
||||
|
||||
dev_dbg(&link->dev, "dio700_cs_attach()\n");
|
||||
|
||||
/* Allocate space for private device-specific data */
|
||||
local = kzalloc(sizeof(struct local_info_t), GFP_KERNEL);
|
||||
if (!local)
|
||||
return -ENOMEM;
|
||||
local->link = link;
|
||||
link->priv = local;
|
||||
|
||||
pcmcia_cur_dev = link;
|
||||
|
||||
dio700_config(link);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void dio700_cs_detach(struct pcmcia_device *link)
|
||||
{
|
||||
((struct local_info_t *)link->priv)->stop = 1;
|
||||
dio700_release(link);
|
||||
|
||||
/* This points to the parent struct local_info_t struct */
|
||||
kfree(link->priv);
|
||||
pcmcia_disable_device(link);
|
||||
}
|
||||
|
||||
static int dio700_pcmcia_config_loop(struct pcmcia_device *p_dev,
|
||||
@ -392,11 +354,41 @@ failed:
|
||||
|
||||
}
|
||||
|
||||
static void dio700_release(struct pcmcia_device *link)
|
||||
{
|
||||
dev_dbg(&link->dev, "dio700_release\n");
|
||||
struct local_info_t {
|
||||
struct pcmcia_device *link;
|
||||
int stop;
|
||||
struct bus_operations *bus;
|
||||
};
|
||||
|
||||
pcmcia_disable_device(link);
|
||||
static int dio700_cs_attach(struct pcmcia_device *link)
|
||||
{
|
||||
struct local_info_t *local;
|
||||
|
||||
printk(KERN_INFO "ni_daq_700: cs-attach\n");
|
||||
|
||||
dev_dbg(&link->dev, "dio700_cs_attach()\n");
|
||||
|
||||
/* Allocate space for private device-specific data */
|
||||
local = kzalloc(sizeof(struct local_info_t), GFP_KERNEL);
|
||||
if (!local)
|
||||
return -ENOMEM;
|
||||
local->link = link;
|
||||
link->priv = local;
|
||||
|
||||
pcmcia_cur_dev = link;
|
||||
|
||||
dio700_config(link);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void dio700_cs_detach(struct pcmcia_device *link)
|
||||
{
|
||||
((struct local_info_t *)link->priv)->stop = 1;
|
||||
dio700_release(link);
|
||||
|
||||
/* This points to the parent struct local_info_t struct */
|
||||
kfree(link->priv);
|
||||
}
|
||||
|
||||
static int dio700_cs_suspend(struct pcmcia_device *link)
|
||||
|
Loading…
Reference in New Issue
Block a user