xref: /netbsd-src/sys/arch/ofppc/include/autoconf.h (revision d536862b7d93d77932ef5de7eebdc48d76921b77)
1 /*	$NetBSD: autoconf.h,v 1.18 2021/02/27 02:52:48 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 inittodr(time_t);
44 void resettodr(void);
45 void cpu_initclocks(void);
46 void decr_intr(struct clockframe *);
47 void setstatclockrate(int);
48 void init_interrupt(void);
49 void init_ofppc_interrupt(void);
50 void ofppc_init_comcons(int);
51 void copy_disp_props(device_t, int, prop_dictionary_t);
52 
53 void OF_start_cpu(int, u_int, int);
54 
55 int rascons_cnattach(void);
56 #endif /* _KERNEL */
57 
58 #endif /* _OFPPC_AUTOCONF_H_ */
59