home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.2 (Developer) / NS_dev_3.2.iso / NextDeveloper / Headers / bsd / dev / i386 / pp_extern.h < prev   
Text File  |  1993-07-30  |  2KB  |  66 lines

  1. /*    @(#)pp_extern.h    
  2.  *
  3.  * pp_extern.h -- Externally used data structures and constants for Parallel 
  4.  *        Port driver
  5.  *
  6.  * KERNEL VERSION
  7.  *
  8.  * HISTORY
  9.  * 03-Mar-93    Phillip Dibner and John Immordino at NeXT
  10.  *    Created.
  11.  *
  12.  */
  13.  
  14. #ifndef    _PPEXTERN_
  15. #define _PPEXTERN_
  16.  
  17. #import <sys/types.h>
  18. #import <sys/ioctl.h>
  19.  
  20. /*
  21.  * ioctl's specific to parallel port
  22.  */
  23.  
  24. #define    PPIOCSW        _IOR('p',0,int)        /* status word */
  25. #define PPIOCINIT    _IO('p',1)        /* initialize printer */
  26. #define PPIOCSETTIMO    _IOW('p',2, int)    /* set timeout period (secs) */
  27.  
  28. /* No _IO('p',3) for now */
  29.  
  30. /*
  31.  * Status word mask defines
  32.  */
  33. #define PP_ST_INITIALIZED    0x0001
  34. #define PP_ST_BUSY        0x0002
  35. #define PP_ST_NOPAPER        0x0004
  36. #define PP_ST_NOTSELECTED    0x0008
  37. #define PP_ST_TIMEOUT        0x0010
  38. #define PP_ST_ERROR        0x0020        /* "Error" bit was set */
  39.  
  40. /*
  41.  * Setting timeout to -1 causes the parallel port to wait indefinitely if
  42.  * printer is offline or out of paper.
  43.  */
  44. #define PP_WAIT_FOREVER        -1
  45.  
  46. #ifdef DRIVER_PRIVATE
  47.  
  48. #define PPIOCGIHDELAY    _IOR('p',4,int)    /* get int handler delay (usec) */    
  49. #define PPIOCSIHDELAY    _IOW('p',5,int)    /* set int handler delay (usec) */
  50. #define PPIOCGIOTDELAY    _IOR('p',6,int)    /* get IOTask thread delay (usec) */        
  51. #define PPIOCSIOTDELAY    _IOW('p',7,int)    /* set IOTask thread  delay (usec) */
  52. #define PPIOCGMINPHYS    _IOR('p',8,int)    /* get max chunk size */    
  53. #define PPIOCSMINPHYS    _IOW('p',9,int)    /* set max chunk size */
  54. #define PPIOCGBSIZE    _IOR('p',10,int)    /* get block size */    
  55. #define PPIOCSBSIZE    _IOW('p',11,int)    /* set block size */
  56. #define PPIOCGRINTERVAL    _IOR('p',12,int)    /* get busy retry interval */    
  57. #define PPIOCSRINTERVAL    _IOW('p',13,int)    /* set busy retry interval */
  58. #define PPIOCGRETRIES    _IOR('p',14,int)    /* get max busy retries */    
  59. #define PPIOCSRETRIES    _IOW('p',15,int)    /* set max busy retries */
  60. #define PPIOCGSREG    _IOR('p',16,int)    /* get status register */
  61. #define PPIOCGCREG    _IOR('p',17,int)    /* get control register */
  62. #define PPIOCGCREGDEF    _IOR('p',18,int)    /* get ctl reg defaults */
  63.  
  64. #endif DRIVER_PRIVATE        
  65. #endif    _PPEXTERN_
  66.