Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 354039
b: refs/heads/master
c: d607ffa
h: refs/heads/master
i:
  354037: 08235d0
  354035: 5f74026
  354031: 3d928a0
v: v3
  • Loading branch information
Peter Huewe authored and Greg Kroah-Hartman committed Jan 18, 2013
1 parent cdb2b0b commit e68a69c
Show file tree
Hide file tree
Showing 3 changed files with 54 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d1e1501e3129f215ec182bb0c69305655d429f80
refs/heads/master: d607ffac4cbd22599f2b006465c722104cc1cd1b
21 changes: 21 additions & 0 deletions trunk/drivers/staging/comedi/comedidev.h
Original file line number Diff line number Diff line change
Expand Up @@ -316,6 +316,27 @@ void comedi_pci_driver_unregister(struct comedi_driver *, struct pci_driver *);
module_driver(__comedi_driver, comedi_pci_driver_register, \
comedi_pci_driver_unregister, &(__pci_driver))

struct pcmcia_driver;

int comedi_pcmcia_driver_register(struct comedi_driver *,
struct pcmcia_driver *);
void comedi_pcmcia_driver_unregister(struct comedi_driver *,
struct pcmcia_driver *);

/**
* module_comedi_pcmcia_driver() - Helper macro for registering a comedi PCMCIA driver
* @__comedi_driver: comedi_driver struct
* @__pcmcia_driver: pcmcia_driver struct
*
* Helper macro for comedi PCMCIA drivers which do not do anything special
* in module init/exit. This eliminates a lot of boilerplate. Each
* module may only use this macro once, and calling it replaces
* module_init() and module_exit()
*/
#define module_comedi_pcmcia_driver(__comedi_driver, __pcmcia_driver) \
module_driver(__comedi_driver, comedi_pcmcia_driver_register, \
comedi_pcmcia_driver_unregister, &(__pcmcia_driver))

struct usb_driver;

int comedi_usb_driver_register(struct comedi_driver *, struct usb_driver *);
Expand Down
32 changes: 32 additions & 0 deletions trunk/drivers/staging/comedi/drivers.c
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@
#include <linux/device.h>
#include <linux/module.h>
#include <linux/pci.h>
#include <pcmcia/cistpl.h>
#include <pcmcia/ds.h>
#include <linux/usb.h>
#include <linux/errno.h>
#include <linux/kconfig.h>
Expand Down Expand Up @@ -556,6 +558,36 @@ void comedi_pci_driver_unregister(struct comedi_driver *comedi_driver,
}
EXPORT_SYMBOL_GPL(comedi_pci_driver_unregister);

#if IS_ENABLED(CONFIG_PCMCIA)
int comedi_pcmcia_driver_register(struct comedi_driver *comedi_driver,
struct pcmcia_driver *pcmcia_driver)
{
int ret;

ret = comedi_driver_register(comedi_driver);
if (ret < 0)
return ret;

ret = pcmcia_register_driver(pcmcia_driver);
if (ret < 0) {
comedi_driver_unregister(comedi_driver);
return ret;
}

return 0;
}
EXPORT_SYMBOL_GPL(comedi_pcmcia_driver_register);

void comedi_pcmcia_driver_unregister(struct comedi_driver *comedi_driver,
struct pcmcia_driver *pcmcia_driver)
{
pcmcia_unregister_driver(pcmcia_driver);
comedi_driver_unregister(comedi_driver);
}
EXPORT_SYMBOL_GPL(comedi_pcmcia_driver_unregister);

#endif

#if IS_ENABLED(CONFIG_USB)

int comedi_usb_driver_register(struct comedi_driver *comedi_driver,
Expand Down

0 comments on commit e68a69c

Please sign in to comment.