1 1.19 thorpej /* $NetBSD: autoconf.h,v 1.19 2024/03/05 14:15:33 thorpej Exp $ */ 2 1.5 chs 3 1.5 chs #ifndef _OFPPC_AUTOCONF_H_ 4 1.5 chs #define _OFPPC_AUTOCONF_H_ 5 1.5 chs 6 1.15 dyoung #include <sys/bus.h> 7 1.6 garbled 8 1.16 mrg #include <prop/proplib.h> 9 1.16 mrg 10 1.5 chs struct confargs { 11 1.5 chs const char *ca_name; 12 1.5 chs u_int ca_node; 13 1.5 chs int ca_nreg; 14 1.5 chs u_int *ca_reg; 15 1.5 chs int ca_nintr; 16 1.5 chs int *ca_intr; 17 1.5 chs 18 1.6 garbled bus_addr_t ca_baseaddr; 19 1.6 garbled bus_space_tag_t ca_tag; 20 1.5 chs }; 21 1.1 matt 22 1.12 garbled struct pciio_info { 23 1.12 garbled uint32_t start; 24 1.12 garbled uint32_t limit; 25 1.12 garbled }; 26 1.12 garbled 27 1.12 garbled /* to support machines with more than 4 busses, change the below */ 28 1.12 garbled #define MAX_PCI_BUSSES 4 29 1.12 garbled struct model_data { 30 1.12 garbled int ranges_offset; 31 1.12 garbled struct pciio_info pciiodata[MAX_PCI_BUSSES]; 32 1.12 garbled }; 33 1.12 garbled 34 1.6 garbled extern int console_node; 35 1.17 rin extern int ofw_quiesce; /* XXX not used at the moment */ 36 1.10 garbled extern char model_name[64]; 37 1.6 garbled 38 1.1 matt #ifdef _KERNEL 39 1.5 chs void initppc(u_int, u_int, char *); 40 1.5 chs void strayintr(int); 41 1.6 garbled void dumpsys(void); 42 1.1 matt 43 1.5 chs void cpu_initclocks(void); 44 1.5 chs void decr_intr(struct clockframe *); 45 1.5 chs void setstatclockrate(int); 46 1.8 garbled void init_interrupt(void); 47 1.11 garbled void init_ofppc_interrupt(void); 48 1.10 garbled void ofppc_init_comcons(int); 49 1.14 matt void copy_disp_props(device_t, int, prop_dictionary_t); 50 1.6 garbled 51 1.13 garbled void OF_start_cpu(int, u_int, int); 52 1.13 garbled 53 1.10 garbled int rascons_cnattach(void); 54 1.1 matt #endif /* _KERNEL */ 55 1.1 matt 56 1.5 chs #endif /* _OFPPC_AUTOCONF_H_ */ 57