Init
This commit is contained in:
88
sys/sbusdev/bpp_var.h
Normal file
88
sys/sbusdev/bpp_var.h
Normal file
@@ -0,0 +1,88 @@
|
||||
/* @(#)bpp_var.h 1.1 94/10/31 SMI */
|
||||
/*
|
||||
* Copyright (c) 1990 by Sun Microsystems, Inc.
|
||||
*
|
||||
* Local variables header file for the bidirectional parallel port
|
||||
* driver (bpp) for the Zebra SBus card.
|
||||
*
|
||||
*/
|
||||
#ifndef _sbusdev_bpp_var_h
|
||||
#define _sbusdev_bpp_var_h
|
||||
|
||||
|
||||
/* #defines (not struct elements) below */
|
||||
|
||||
/* Other external ioctls are defined in bpp_io.h */
|
||||
/* FOR TEST - request fakeout simulate partial data transfer */
|
||||
#define BPPIOC_SETBC _IOW(b, 7, u_int)
|
||||
/* FOR TEST - request value of DMA_BCNT at end of last data transfer */
|
||||
#define BPPIOC_GETBC _IOR(b, 8, u_int)
|
||||
/* FOR TEST - get contents of device registers */
|
||||
#define BPPIOC_GETREGS _IOR(b, 9, struct bpp_regs)
|
||||
/* FOR TEST - set special error code to simulate errors */
|
||||
#define BPPIOC_SETERRCODE _IOW(b, 10, int)
|
||||
/* FOR TEST - get pointer to (fakely) "transferred" data */
|
||||
#define BPPIOC_GETFAKEBUF _IOW(b, 11, u_char *)
|
||||
/* FOR TEST - test nested timeout calls */
|
||||
#define BPPIOC_TESTTIMEOUT _IO(b, 12)
|
||||
|
||||
#ifdef notdef
|
||||
/* This define will use the hardware simulations in software */
|
||||
#define NO_BPP_HW
|
||||
#endif notdef
|
||||
|
||||
|
||||
#define MAX_NBPP 10 /* Maximum units allowed to identify */
|
||||
#define BPP_PROM_NAME "SUNW,bpp" /* name string in FCode prom */
|
||||
|
||||
|
||||
/* Structure definitions and locals #defines below */
|
||||
|
||||
#define FAKE_BUF_SIZE (1024 * 128) /* size of each DVMA transfer */
|
||||
|
||||
struct bpp_unit /* Unit structure - one per unit */
|
||||
{
|
||||
u_char unit_open; /* 1 means open. */
|
||||
u_char open_inhibit; /* 1 means inhibit. */
|
||||
u_char versatec_allowed; /* 1 means allow */
|
||||
/* versatec handshakes */
|
||||
int openflags; /* read-write flags */
|
||||
/* this unit opened with*/
|
||||
u_char timeouts; /* encoded pending timeouts */
|
||||
|
||||
u_int interrupt_pri; /* Highest int pri (spl)*/
|
||||
/* for this unit only. */
|
||||
int saved_spl; /* Saved spl while in */
|
||||
/* critical sections */
|
||||
/* for this unit only. */
|
||||
/* At all other times */
|
||||
/* the value is (-1). */
|
||||
long transfer_remainder; /* number of bytes which */
|
||||
/* were not transferred */
|
||||
/* since they were across */
|
||||
/* the max DVMA boundary. */
|
||||
/* value is (0) when transfer */
|
||||
/* is within the boundary */
|
||||
struct dev_info *devinfo_p; /* Node for this unit. */
|
||||
struct bpp_regs *bpp_regs_p; /* Device control regs. */
|
||||
struct bpp_transfer_parms transfer_parms;
|
||||
/* handshake and timing */
|
||||
struct bpp_pins pins; /* control pins */
|
||||
struct bpp_error_status error_stat; /* snapshotted error cond */
|
||||
struct buf buf; /* For physio() calls. */
|
||||
};
|
||||
|
||||
/* defines for the timeouts field */
|
||||
#define NO_TIMEOUTS 0x00 /* No timeouts pending */
|
||||
#define TRANSFER_TIMEOUT 0x01 /* DVMA transfer */
|
||||
#define FAKEOUT_TIMEOUT 0x10 /* Hardware simulation */
|
||||
#define TEST1_TIMEOUT 0x20 /* Test timeout #1 */
|
||||
#define TEST2_TIMEOUT 0x40 /* Test timeout #2 */
|
||||
|
||||
|
||||
|
||||
/* Function declarations below */
|
||||
extern int nulldev();
|
||||
extern int seltrue();
|
||||
|
||||
#endif _sbusdev_bpp_var_h
|
||||
Reference in New Issue
Block a user