Home | History | Annotate | Line # | Download | only in ibus
ibusvar.h revision 1.2.2.2
      1 /*	$NetBSD: ibusvar.h,v 1.2.2.2 1999/03/15 02:00:45 nisimura Exp $	*/
      2 
      3 #ifndef __IBUSVAR_H
      4 #define __IBUSVAR_H
      5 
      6 /*
      7  * Arguments used to attach devices to an ibus
      8  */
      9 struct ibus_attach_args {
     10 	char	*ia_name;		/* Device name. */
     11 	u_int32_t ia_addr;		/* Device address. */
     12 	void	*ia_cookie;		/* Device cookie */
     13 };
     14 
     15 /*
     16  * Arguments used to attach a ibus "device" to its parent
     17  */
     18 struct ibus_dev_attach_args {
     19 	const char *ibd_busname;		/* XXX should be common */
     20 #ifdef notyet
     21 	bus_space_tag_t	iba_memt;
     22 #endif
     23 	void (*ibd_establish)
     24 		__P((struct device *, void *, int, int (*)(void *), void *));
     25 	void (*ibd_disestablish) __P((struct device *, void *));
     26 	int ibd_ndevs;
     27 	struct ibus_attach_args	*ibd_devs;
     28 };
     29 
     30 struct ibus_softc {
     31 	struct device	ibd_dev;
     32 	int		ibd_ndevs;
     33 	struct ibus_attach_args *ibd_devs;
     34 	void (*ibd_establish)
     35 		__P((struct device *, void *, int, int (*)(void *), void *));
     36 	void (*ibd_disestablish) __P((struct device *, void *));
     37 };
     38 
     39 void ibus_devattach __P((struct device *, void *));
     40 
     41 /*
     42  * interrrupt estalish functions.
     43  * These call up to system-specific code to
     44  * recompute spl levels.
     45  */
     46 void ibus_intr_establish
     47 		__P((struct device *, void *, int, int (*)(void *), void *));
     48 void ibus_intr_disestablish __P((struct device *, void *));
     49 
     50 #endif /* __IBUSVAR_H */
     51