8255.h revision 0a85b6f0ab0d2edb0d41b32697111ce0e4f43496
1/* 2 module/8255.h 3 Header file for 8255 4 5 COMEDI - Linux Control and Measurement Device Interface 6 Copyright (C) 1998 David A. Schleef <ds@schleef.org> 7 8 This program is free software; you can redistribute it and/or modify 9 it under the terms of the GNU General Public License as published by 10 the Free Software Foundation; either version 2 of the License, or 11 (at your option) any later version. 12 13 This program is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with this program; if not, write to the Free Software 20 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 21 22*/ 23 24#ifndef _8255_H 25#define _8255_H 26 27#include "../comedidev.h" 28 29#if defined(CONFIG_COMEDI_8255) || defined(CONFIG_COMEDI_8255_MODULE) 30 31int subdev_8255_init(struct comedi_device *dev, struct comedi_subdevice *s, 32 int (*cb) (int, int, int, unsigned long), 33 unsigned long arg); 34int subdev_8255_init_irq(struct comedi_device *dev, struct comedi_subdevice *s, 35 int (*cb) (int, int, int, unsigned long), 36 unsigned long arg); 37void subdev_8255_cleanup(struct comedi_device *dev, struct comedi_subdevice *s); 38void subdev_8255_interrupt(struct comedi_device *dev, 39 struct comedi_subdevice *s); 40 41#else 42 43static inline int subdev_8255_init(struct comedi_device *dev, 44 struct comedi_subdevice *s, void *x, 45 unsigned long y) 46{ 47 printk("8255 support not configured -- disabling subdevice\n"); 48 49 s->type = COMEDI_SUBD_UNUSED; 50 51 return 0; 52} 53 54static inline void subdev_8255_cleanup(struct comedi_device *dev, 55 struct comedi_subdevice *s) 56{ 57} 58 59#endif 60 61#endif 62