Home | History | Annotate | Line # | Download | only in ppbus
ppbus_device.h revision 1.1
      1  1.1  jdolecek #ifndef __PPBUS_DEVICE_H
      2  1.1  jdolecek #define __PPBUS_DEVICE_H
      3  1.1  jdolecek 
      4  1.1  jdolecek #include <sys/device.h>
      5  1.1  jdolecek 
      6  1.1  jdolecek #include <dev/ppbus/ppbus_msq.h>
      7  1.1  jdolecek 
      8  1.1  jdolecek 
      9  1.1  jdolecek /* Parallel Port Bus Device context. */
     10  1.1  jdolecek struct ppbus_context {
     11  1.1  jdolecek         int valid;                      /* 1 if the struct is valid */
     12  1.1  jdolecek 	int mode;                       /* XXX chipset operating mode */
     13  1.1  jdolecek 	struct microseq *curpc;         /* pc in curmsq */
     14  1.1  jdolecek 	struct microseq *curmsq;        /* currently executed microseqence */
     15  1.1  jdolecek };
     16  1.1  jdolecek 
     17  1.1  jdolecek /* Parallel Port Bus Device structure. */
     18  1.1  jdolecek struct ppbus_device_softc {
     19  1.1  jdolecek         struct device sc_dev;
     20  1.1  jdolecek 
     21  1.1  jdolecek 	u_int16_t mode;			/* current mode of the device */
     22  1.1  jdolecek 	u_int16_t capabilities;		/* ppbus capabilities */
     23  1.1  jdolecek 
     24  1.1  jdolecek 	/* uint flags;                     flags */
     25  1.1  jdolecek 	struct ppbus_context ctx;       /* context of the device */
     26  1.1  jdolecek 
     27  1.1  jdolecek 					/* mode dependent get msq. If NULL,
     28  1.1  jdolecek 				 	 * IEEE1284 code is used */
     29  1.1  jdolecek 	struct ppbus_xfer
     30  1.1  jdolecek 		get_xfer[PPBUS_MAX_XFER];
     31  1.1  jdolecek 
     32  1.1  jdolecek 					/* mode dependent put msq. If NULL,
     33  1.1  jdolecek 					 * IEEE1284 code is used */
     34  1.1  jdolecek 	struct ppbus_xfer
     35  1.1  jdolecek 		put_xfer[PPBUS_MAX_XFER];
     36  1.1  jdolecek 
     37  1.1  jdolecek 	/* Each structure is a node in a list of child devices */
     38  1.1  jdolecek 	SLIST_ENTRY(ppbus_device_softc) entries;
     39  1.1  jdolecek };
     40  1.1  jdolecek 
     41  1.1  jdolecek struct ppbus_attach_args {
     42  1.1  jdolecek 	/* Available IEEE1284 modes */
     43  1.1  jdolecek 	u_int16_t capabilities;
     44  1.1  jdolecek 
     45  1.1  jdolecek 	/* Flags?
     46  1.1  jdolecek 	u_int16_t flags;*/
     47  1.1  jdolecek };
     48  1.1  jdolecek 
     49  1.1  jdolecek #endif
     50