gpib_proto.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. #ifndef GPIB_PROTO_INCLUDED
  2. #define GPIB_PROTO_INCLUDED
  3. #include <linux/fs.h>
  4. int ibopen( struct inode *inode, struct file *filep );
  5. int ibclose( struct inode *inode, struct file *file );
  6. long ibioctl(struct file *filep, unsigned int cmd, unsigned long arg );
  7. int osInit( void );
  8. void osReset( void );
  9. void watchdog_timeout( unsigned long arg );
  10. void osStartTimer( gpib_board_t *board, unsigned int usec_timeout );
  11. void osRemoveTimer( gpib_board_t *board );
  12. void osSendEOI( void );
  13. void osSendEOI( void );
  14. void init_gpib_board( gpib_board_t *board );
  15. static inline unsigned long usec_to_jiffies(unsigned int usec)
  16. {
  17. unsigned long usec_per_jiffy = 1000000 / HZ;
  18. return 1 + ( usec + usec_per_jiffy - 1) / usec_per_jiffy;
  19. };
  20. int serial_poll_all( gpib_board_t *board, unsigned int usec_timeout );
  21. void init_gpib_descriptor( gpib_descriptor_t *desc );
  22. int dvrsp(gpib_board_t *board, unsigned int pad, int sad,
  23. unsigned int usec_timeout, uint8_t *result );
  24. int ibAPWait(gpib_board_t *board, int pad);
  25. int ibAPrsp(gpib_board_t *board, int padsad, char *spb);
  26. void ibAPE(gpib_board_t *board, int pad, int v);
  27. int ibcac(gpib_board_t *board, int sync);
  28. ssize_t ibcmd( gpib_board_t *board, uint8_t *buf, size_t length );
  29. int ibgts(gpib_board_t *board);
  30. int ibonline(gpib_board_t *board, gpib_board_config_t config);
  31. int iboffline( gpib_board_t *board );
  32. int iblines( const gpib_board_t *board, short *lines );
  33. int ibrd(gpib_board_t *board, uint8_t *buf, size_t length, int *end_flag, size_t *bytes_read);
  34. int ibrpp( gpib_board_t *board, uint8_t *buf );
  35. int ibrsv(gpib_board_t *board, uint8_t poll_status);
  36. void ibrsc( gpib_board_t *board, int request_control );
  37. int ibsic( gpib_board_t *board, unsigned int usec_duration );
  38. int ibsre(gpib_board_t *board, int enable);
  39. int ibpad( gpib_board_t *board, unsigned int addr );
  40. int ibsad( gpib_board_t *board, int addr );
  41. int ibeos( gpib_board_t *board, int eos, int eosflags );
  42. int ibwait(gpib_board_t *board, int wait_mask, int clear_mask, int set_mask,
  43. int *status, unsigned long usec_timeout, gpib_descriptor_t *desc );
  44. int ibwrt(gpib_board_t *board, uint8_t *buf, size_t cnt, int send_eoi, size_t *bytes_written);
  45. int ibstatus( gpib_board_t *board );
  46. int general_ibstatus( gpib_board_t *board, const gpib_status_queue_t *device,
  47. int clear_mask, int set_mask, gpib_descriptor_t *desc );
  48. int io_timed_out( gpib_board_t *board );
  49. int ibppc( gpib_board_t *board, uint8_t configuration );
  50. #endif /* GPIB_PROTO_INCLUDED */