1 /* $NetBSD: ebusvar.h,v 1.3 2011/06/12 04:00:33 tsutsui Exp $ */ 2 3 #ifndef _EMIPS_EBUS_EBUSVAR_H_ 4 #define _EMIPS_EBUS_EBUSVAR_H_ 5 6 #include <machine/bus.h> 7 8 struct ebus_attach_args; 9 10 /* 11 * Arguments used to attach an ebus "device" to its parent 12 */ 13 struct ebus_dev_attach_args { 14 const char *ida_busname; /* XXX should be common */ 15 bus_space_tag_t ida_memt; 16 17 int ida_ndevs; 18 struct ebus_attach_args *ida_devs; 19 }; 20 21 /* 22 * Arguments used to attach devices to an ebus 23 */ 24 struct ebus_attach_args { 25 const char *ia_name; /* device name */ 26 int ia_cookie; /* device cookie */ 27 uint32_t ia_paddr; /* device address (PHYSICAL) */ 28 void *ia_vaddr; /* device address (VIRTUAL) */ 29 int ia_basz; /* device size 30 (for min regset at probe, else 0) */ 31 }; 32 33 void ebusattach(device_t , device_t , void *); 34 int ebusprint(void *, const char *); 35 void ebus_intr_establish(device_t , void *, int, 36 int (*)(void *, void *), void *); 37 38 #endif /* !_EMIPS_EBUS_EBUSVAR_H_ */ 39