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