Added comedi_map, comedi_unmap
authorDavid Schleef <ds@schleef.org>
Sat, 5 May 2001 11:35:27 +0000 (11:35 +0000)
committerDavid Schleef <ds@schleef.org>
Sat, 5 May 2001 11:35:27 +0000 (11:35 +0000)
comedi/kcomedilib/kcomedilib_main.c
comedi/kcomedilib/ksyms.c

index 8ed7fe058e5d8603c39b1677e9835212a59665ae..1b359531c44bc202166d872af2a5332661e15158 100644 (file)
@@ -944,3 +944,48 @@ int comedi_poll(unsigned int minor, unsigned int subdev)
        return s->poll(dev,s);
 }
 
+
+/* WARNING: not portable */
+int comedi_map(unsigned int minor, unsigned int subdev, void **ptr)
+{
+       comedi_device *dev;
+       comedi_subdevice *s;
+
+       if((ret=minor_to_dev(minor,&dev))<0)
+               return ret;
+
+       if(subdev>=dev->n_subdevices)
+               return -ENODEV;
+
+       s=dev->subdevices+subdev;
+       if(!s->async)
+               return -EINVAL;
+
+       if(ptr)*ptr=s->async->prealloc_buf;
+
+       /* XXX no reference counting */
+
+       return 0;
+}
+
+/* WARNING: not portable */
+int comedi_unmap(unsigned int minor, unsigned int subdev)
+{
+       comedi_device *dev;
+       comedi_subdevice *s;
+
+       if((ret=minor_to_dev(minor,&dev))<0)
+               return ret;
+
+       if(subdev>=dev->n_subdevices)
+               return -ENODEV;
+
+       s=dev->subdevices+subdev;
+       if(!s->async)
+               return -EINVAL;
+
+       /* XXX no reference counting */
+
+       return 0;
+}
+
index 8ff0870bb0a0464250b88f33352aac7b340d0171..7abd4dff23e6e2ce0a0817ec6dc5f438e3352b3c 100644 (file)
@@ -62,6 +62,7 @@ EXPORT_SYMBOL(comedi_get_subdevice_type);
 
 EXPORT_SYMBOL(comedi_open);
 EXPORT_SYMBOL(comedi_close);
+EXPORT_SYMBOL(comedi_poll);
 //EXPORT_SYMBOL(comedi_loglevel);
 //EXPORT_SYMBOL(comedi_perror);
 //EXPORT_SYMBOL(comedi_strerror);
@@ -99,6 +100,8 @@ EXPORT_SYMBOL(comedi_dio_bitfield);
 //EXPORT_SYMBOL(comedi_get_timer);
 //EXPORT_SYMBOL(comedi_timed_1chan);
 //EXPORT_SYMBOL(comedi_set_global_oor_behavior);
+EXPORT_SYMBOL(comedi_map);
+EXPORT_SYMBOL(comedi_unmap);
 
 
 #endif