Print this page
5084 struct ecppunit's e_busy is multi-value, can't be a boolean_t

@@ -25,12 +25,10 @@
  */
 
 #ifndef _SYS_ECPPVAR_H
 #define _SYS_ECPPVAR_H
 
-#pragma ident   "%Z%%M% %I%     %E% SMI"
-
 #include <sys/note.h>
 
 #ifdef  __cplusplus
 extern "C" {
 #endif

@@ -94,19 +92,28 @@
         char            *name;          /* binding name */
         struct ecpp_hw  *hw;            /* hw description */
         char            *info;          /* info string */
 };
 
+/* ecpp e_busy states */
+typedef enum {
+        ECPP_IDLE = 1,  /* No ongoing transfers */
+        ECPP_BUSY = 2,  /* Ongoing transfers on the cable */
+        ECPP_DATA = 3,  /* Not used */
+        ECPP_ERR = 4,   /* Bad status in Centronics mode */
+        ECPP_FLUSH = 5  /* Currently flushing the q */
+} ecpp_busy_t;
+
 /*
  * ecpp soft state structure
  */
 struct ecppunit {
         kmutex_t        umutex;         /* lock for this structure */
         int             instance;       /* instance number */
         dev_info_t      *dip;           /* device information */
         ddi_iblock_cookie_t ecpp_trap_cookie;   /* interrupt cookie */
-        boolean_t       e_busy;         /* ecpp busy flag */
+        ecpp_busy_t     e_busy;         /* ecpp busy flag */
         kcondvar_t      pport_cv;       /* cv to signal idle state */
         /*
          * common SuperIO registers
          */
         struct info_reg         *i_reg;         /* info registers */

@@ -276,17 +283,10 @@
 
 /* ecpp return values */
 #define SUCCESS         1
 #define FAILURE         2
 
-/* ecpp e_busy states */
-#define ECPP_IDLE       1 /* No ongoing transfers */
-#define ECPP_BUSY       2 /* Ongoing transfers on the cable */
-#define ECPP_DATA       3 /* Not used */
-#define ECPP_ERR        4 /* Bad status in Centronics mode */
-#define ECPP_FLUSH      5 /* Currently flushing the q */
-
 #define TRUE            1
 #define FALSE           0
 
 /* message type */
 #define ECPP_BACKCHANNEL        0x45