Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 2/19/85; site seismo.UUCP
Path: utzoo!linus!philabs!cmcl2!seismo!keith
From: keith@seismo.UUCP (Keith Bostic)
Newsgroups: net.bugs.2bsd
Subject: ubavar.h
Message-ID: <1669@seismo.UUCP>
Date: Mon, 11-Mar-85 12:46:50 EST
Article-I.D.: seismo.1669
Posted: Mon Mar 11 12:46:50 1985
Date-Received: Tue, 12-Mar-85 21:30:30 EST
Organization: Center for Seismic Studies, Arlington, VA
Lines: 38

/* fake ubavar.h to initialize net device drivers */

struct uba_device {
	struct	uba_driver *ui_driver;
	short	ui_unit;	/* unit number on the system */
	short	ui_ubanum;	/* the uba it is on */
	caddr_t	ui_addr;	/* address of device in i/o space */
	u_long  ui_flags;       /* parameter from system specification */
	short	ui_alive;	/* device exists */
};

struct uba_driver {
	int	(*ud_probe)();		/* see if a driver is really there */
	int	(*ud_slave)();		/* see if a slave is there */
	int	(*ud_attach)();		/* setup driver for a slave */
	int	(*ud_dgo)();		/* fill csr/ba to start transfer */
	u_short	*ud_addr;		/* device csr addresses */
	char	*ud_dname;		/* name of a device */
	struct	uba_device **ud_dinfo;	/* backpointers to ubdinit structs */
	char	*ud_mname;		/* name of a controller */
	short	ud_xclu;		/* want exclusive use of bdp's */
};

/*
 * Flags to UBA map/bdp allocation routines
 */
#define	UBA_NEEDBDP	0x01		/* transfer needs a bdp */
#define	UBA_CANTWAIT	0x02		/* don't block me */
#define	UBA_NEED16	0x04		/* need 16 bit addresses only */
#define	UBA_HAVEBDP	0x08		/* use bdp specified in high bits */

#define UBAPURGE(uba, bdp)
#define	IF_UBAPURGE(uba, bdp)

ubadr_t	uballoc();
#define	ubarelse(a,b)
ubadr_t ubmalloc();