1#	$NetBSD: files.sparc64,v 1.166 2021/05/12 23:22:33 thorpej Exp $
2
3# @(#)files.sparc64	8.1 (Berkeley) 7/19/93
4# sparc64-specific configuration info
5
6# maxpartitions must be first item in files.${ARCH}
7maxpartitions 8
8
9maxusers 2 8 1024
10
11defflag	opt_sparc_arch.h	SUN4U SUN4V
12
13define mainbus {}
14device mainbus: mainbus, ofw_subr
15attach mainbus at root
16
17define upa {}
18device upa: upa
19attach upa at mainbus
20file	arch/sparc64/dev/upa.c
21
22device pcons
23attach pcons at mainbus
24file	arch/sparc64/dev/pcons.c		pcons needs-flag
25
26include "dev/sun/files.sun"
27include "dev/i2o/files.i2o"
28
29include "dev/sbus/files.sbus"
30attach sbus at mainbus
31file	arch/sparc64/dev/sbus.c			sbus
32
33device	psycho: pcibus, sysmon_power, sysmon_taskq
34attach	psycho at mainbus
35device	schizo: pcibus
36attach	schizo at mainbus
37device	pyro: pcibus
38attach	pyro at mainbus
39device	vpci: pcibus
40attach	vpci at mainbus
41include "dev/pci/files.pci"
42file	arch/sparc64/dev/psycho.c		psycho needs-flag
43file	arch/sparc64/dev/schizo.c		schizo
44file	arch/sparc64/dev/pyro.c			pyro
45file	arch/sparc64/dev/vpci.c			vpci
46file	arch/sparc64/dev/pci_machdep.c		psycho | schizo | pyro | vpci
47file	dev/ofw/ofw_pci_subr.c			pci
48
49device jbusi2c: i2cexec, i2c_bitbang, i2cbus
50attach jbusi2c at mainbus
51file	arch/sparc64/dev/jbus-i2c.c		jbusi2c
52
53define  central {}
54device	central: central
55attach	central at mainbus
56file	arch/sparc64/dev/central.c		central
57
58define  fhc {}
59device	fhc: fhc
60attach	fhc at mainbus with fhc_mainbus
61attach	fhc at central with fhc_central
62file	arch/sparc64/dev/fhc.c			fhc
63file	arch/sparc64/dev/fhc_central.c		fhc_central
64file	arch/sparc64/dev/fhc_mainbus.c		fhc_mainbus
65
66# IOMMU is for both
67file	arch/sparc64/dev/iommu.c		sbus | psycho | schizo | pyro | vpci
68
69include "dev/ata/files.ata"
70
71device ebus {[addr = -1]}
72attach ebus at pci
73file	arch/sparc64/dev/ebus.c			ebus
74attach ebus at mainbus with ebus_mainbus
75file	arch/sparc64/dev/ebus_mainbus.c		ebus_mainbus
76
77device	vbus {}
78attach	vbus at mainbus
79file	arch/sparc64/dev/vbus.c			vbus
80
81device	cbus {}
82attach	cbus at vbus
83file	arch/sparc64/dev/cbus.c			cbus
84
85device clock: mk48txx
86attach clock at sbus with mkclock_sbus
87attach clock at ebus with mkclock_ebus
88attach clock at fhc with mkclock_fhc
89file	arch/sparc64/dev/mkclock.c		clock
90
91device rtc: mc146818
92attach rtc at ebus with rtc_ebus
93file	arch/sparc64/dev/rtc.c			rtc
94
95device psm: sysmon_power
96attach psm at ebus
97file	arch/sparc64/dev/psm.c			psm
98
99device timer
100attach timer at mainbus, sbus
101
102device	tda: sysmon_envsys
103attach	tda at iic
104file	arch/sparc64/dev/tda.c			tda
105
106device pcfiic: pcf8584, i2cbus
107attach pcfiic at ebus
108file	arch/sparc64/dev/pcfiic_ebus.c		pcfiic
109
110device ecadc: sysmon_envsys
111attach ecadc at iic
112file	arch/sparc64/dev/pcf8591_envctrl.c	ecadc
113
114device lom: sysmon_envsys, sysmon_wdog
115attach lom at ebus
116file	arch/sparc64/dev/lom.c			lom
117
118device cpu
119attach cpu at mainbus
120file	arch/sparc64/sparc64/cpu.c
121
122device	auxio
123attach	auxio at ebus with auxio_ebus
124attach	auxio at sbus with auxio_sbus
125file	arch/sparc64/dev/auxio.c		auxio
126file	arch/sparc64/dev/auxio_sbus.c		auxio_sbus
127file	arch/sparc64/dev/auxio_ebus.c		auxio_ebus
128
129defflag	opt_auxio.h	BLINK
130
131attach	lpt at ebus with lpt_ebus
132file	arch/sparc64/dev/lpt_ebus.c		lpt_ebus
133
134device fdc {}
135attach fdc at sbus with fdc_sbus
136attach fdc at ebus with fdc_ebus
137device fd: disk
138attach fd at fdc
139file	arch/sparc64/dev/fdc.c			fdc | fd needs-flag
140
141attach	audiocs at ebus with audiocs_ebus
142file	dev/ebus/cs4231_ebus.c			audiocs_ebus
143
144include	"dev/sdmmc/files.sdmmc"
145attach	wb at ebus with wb_ebus
146file	arch/sparc64/dev/wb_ebus.c              wb_ebus
147
148# PCMCIA bus (references fdc)
149include "dev/pcmcia/files.pcmcia"
150
151# CardBus Support
152include "dev/cardbus/files.cardbus"
153file	arch/sparc64/sparc64/rbus_machdep.c	cardbus
154
155#
156# Console related stuff
157#
158
159device zs {channel = -1}
160attach zs at sbus
161attach zs at fhc with zs_fhc
162file	arch/sparc64/dev/zs.c			zs needs-flag
163file	dev/ic/z8530sc.c			zs
164
165# siemens SAB82532; found on U5/U10/... for tty ports.
166device sab {channel = -1}
167attach sab at ebus
168file	arch/sparc64/dev/sab.c			sab | sabtty needs-flag
169
170# "com" attachments for the kbd/mouse of the U5/U10/...
171attach com at ebus with com_ebus
172file	arch/sparc64/dev/com_ebus.c		com_ebus
173
174# ebus PS/2 keyboard attachment for Tadpole SPARCle, etc.
175include "dev/pckbport/files.pckbport"
176attach pckbc at ebus with pckbc_ebus : sysmon_envsys
177file	arch/sparc64/dev/pckbc_ebus.c		pckbc_ebus
178defflag opt_tadpmu.h	HAVE_TADPMU
179file	arch/sparc64/dev/tadpmu.c		pckbc_ebus
180
181device zstty {}: tty
182attach zstty at zs
183file dev/ic/z8530tty.c			zstty needs-flag
184# file arch/sparc/dev/zs_kgdb.c		kgdb
185
186device sabtty: tty
187attach sabtty at sab
188
189file arch/sparc64/dev/kd.c 		kbd
190
191attach kbd at zs with kbd_zs
192attach kbd at zstty, com with kbd_tty
193file dev/sun/kbd_zs.c			kbd_zs
194file dev/sun/sunkbd.c			kbd_tty
195file dev/sun/kbdsun.c			kbd_zs | kbd_tty
196
197attach ms at zs with ms_zs
198attach ms at zstty, com with ms_tty
199file dev/sun/ms_zs.c			ms_zs
200file dev/sun/sunms.c			ms_tty
201
202#
203# Machine-independent SCSI drivers
204#
205include "dev/scsipi/files.scsipi"
206
207device cgfourteen
208attach cgfourteen at sbus
209file	arch/sparc64/dev/cgfourteen.c	cgfourteen needs-flag
210
211device ffb: wsemuldisplaydev, rasops32, fb, vcons, i2cexec, i2c_bitbang, ddc_read_edid, edid, videomode
212file	arch/sparc64/dev/ffb.c			ffb
213defflag opt_ffb.h FFB_DEBUG FFB_SYNC
214attach ffb at mainbus,upa with ffb_mainbus
215file	arch/sparc64/dev/ffb_mainbus.c		ffb_mainbus
216
217device gfb: wsemuldisplaydev, rasops32, fb, vcons
218file	arch/sparc64/dev/gfb.c			gfb
219attach gfb at mainbus
220
221# CP1500/1400 watchdog timer
222device	pldwdog: sysmon_wdog
223attach	pldwdog at ebus
224file	arch/sparc64/dev/pld_wdog.c		pldwdog
225
226#
227# Generic Sun stuff
228#
229
230file	dev/cons.c
231file	arch/sparc64/dev/consinit.c
232file	dev/sun/disksubr.c 
233
234file	arch/sparc64/sparc64/cpu_in_cksum.S	(inet | inet6) & cpu_in_cksum
235
236file	arch/sparc/fpu/fpu.c
237file	arch/sparc/fpu/fpu_add.c
238file	arch/sparc/fpu/fpu_compare.c
239file	arch/sparc/fpu/fpu_div.c
240file	arch/sparc/fpu/fpu_explode.c
241file	arch/sparc/fpu/fpu_implode.c
242file	arch/sparc/fpu/fpu_mul.c
243file	arch/sparc/fpu/fpu_sqrt.c
244file	arch/sparc/fpu/fpu_subr.c
245
246file	arch/sparc/sparc/promlib.c
247file	arch/sparc64/sparc64/autoconf.c
248file	arch/sparc64/sparc64/cache.c
249file	arch/sparc64/sparc64/clock.c
250file	arch/sparc64/sparc64/core_machdep.c	coredump
251file	arch/sparc64/sparc64/emul.c
252file	arch/sparc64/sparc64/intr.c
253file	arch/sparc64/sparc64/kgdb_machdep.c	kgdb
254file	arch/sparc/sparc/kobj_machdep.c		modular & !exec_elf64
255file	arch/sparc64/sparc64/kobj_machdep.c	modular & exec_elf64
256# sparc64/sparc64/locore.s is handled specially in the makefile,
257# because it must come first in the "ld" command line.
258file	arch/sparc64/sparc64/machdep.c
259file	arch/sparc64/sparc64/ofw_patch.c
260file	arch/sparc64/sparc64/process_machdep.c
261file	arch/sparc64/sparc64/procfs_machdep.c	procfs
262file	arch/sparc64/sparc64/static_edid.c
263file	arch/sparc/sparc/openprom.c
264file	arch/sparc/sparc/openfirm.c
265file	arch/sparc64/sparc64/ofw_machdep.c
266file	arch/sparc64/sparc64/pmap.c
267file	arch/sparc64/sparc64/sys_machdep.c
268file	arch/sparc64/sparc64/syscall.c
269file	arch/sparc64/sparc64/trap.c
270file	arch/sparc64/sparc64/vm_machdep.c
271file	arch/sparc64/sparc64/ipifuncs.c		multiprocessor
272file	arch/sparc64/sparc64/lock_stubs.s
273file	arch/sparc64/sparc64/hvcall.S		sun4v
274file	arch/sparc64/sparc64/mdesc.c		sun4v
275
276file	arch/sparc64/sparc64/db_interface.c	ddb | kgdb
277file	arch/sparc64/sparc64/db_machdep.c	ddb
278file	arch/sparc64/sparc64/db_trace.c		ddb
279file	arch/sparc64/sparc64/db_disasm.c	ddb
280file	arch/sparc64/sparc64/db_tlb_access.S	ddb
281
282# USB Support
283include "dev/usb/files.usb"
284
285# Bluetooth Support
286include "dev/bluetooth/files.bluetooth"
287
288# IEEE1394 Support
289include "dev/ieee1394/files.ieee1394"
290
291# Stack-less Just-In-Time compiler
292include "external/bsd/sljit/conf/files.sljit"
293
294#
295# Compatibility modules
296#
297
298# Binary compatibility with previous NetBSD releases.
299file	arch/sparc64/sparc64/compat_13_machdep.c compat_13
300file	arch/sparc64/sparc64/compat_16_machdep.c compat_16
301
302# NetBSD/sparc 32-bit Binary compatibility (COMPAT_NETBSD32)
303include "compat/netbsd32/files.netbsd32"
304file	arch/sparc64/sparc64/netbsd32_machdep.c		compat_netbsd32
305file	arch/sparc64/sparc64/netbsd32_machdep_13.c	compat_netbsd32 &
306							compat_13
307file	arch/sparc64/sparc64/netbsd32_machdep_16.c	compat_netbsd32 &
308							compat_16
309file	arch/sparc64/sparc64/netbsd32_sigcode.s		compat_netbsd32
310
311# SunOS Binary Compatibility (COMPAT_SUNOS), 32-bit & 64-bit kernel
312# (64-bit also depends on COMPAT_NETBSD32)
313include "compat/sunos/files.sunos"
314file	arch/sparc64/sparc64/sunos_sigcode.s	compat_sunos
315file	arch/sparc64/sparc64/sunos_machdep.c	compat_sunos & !compat_netbsd32
316include "compat/sunos32/files.sunos32"
317file	arch/sparc64/sparc64/sunos32_machdep.c	compat_sunos & compat_netbsd32
318
319# Miscellaneous
320file	dev/md_root.c			memory_disk_hooks
321
322include "arch/sparc64/conf/majors.sparc64"
323
324# Virtual rtc
325device	vrtc
326attach	vrtc at vbus
327file	arch/sparc64/dev/vrtc.c			vrtc
328
329define	ldc
330file	arch/sparc64/dev/ldc.c			ldc
331
332# Virtual disk
333device	vdsk: ldc, scsi
334attach	vdsk at cbus
335file	arch/sparc64/dev/vdsk.c			vdsk
336
337# Virtual network
338device	vnet: ldc
339attach	vnet at cbus
340file	arch/sparc64/dev/vnet.c			vnet
341