1#	$OpenBSD: files.sparc64,v 1.156 2024/03/29 21:11:31 miod Exp $
2#	$NetBSD: files.sparc64,v 1.50 2001/08/10 20:53:50 eeh Exp $
3
4# maxpartitions must be first item in files.${ARCH}
5maxpartitions 16
6
7maxusers 2 8 1024
8
9define	mainbus {}
10device	mainbus: pcibus, mainbus
11attach	mainbus at root
12
13device	ssm: mainbus
14attach	ssm at mainbus
15file	arch/sparc64/dev/ssm.c			ssm
16
17define	upa {}
18device	upa
19attach	upa at mainbus
20file	arch/sparc64/dev/upa.c			upa
21
22define	central {}
23device	central
24attach	central at mainbus
25file	arch/sparc64/dev/central.c		central
26
27define	fhc {}
28device	fhc
29file	arch/sparc64/dev/fhc.c			fhc
30
31attach	fhc at central with fhc_central
32file	arch/sparc64/dev/fhc_central.c		fhc_central
33
34attach	fhc at mainbus with fhc_mainbus
35file	arch/sparc64/dev/fhc_mainbus.c		fhc_mainbus
36
37device	clkbrd
38attach	clkbrd at fhc
39file	arch/sparc64/dev/clkbrd.c		clkbrd
40
41device	environ
42attach	environ at fhc
43file	arch/sparc64/dev/environ.c		environ
44
45device	vbus {}
46attach	vbus at mainbus
47file	arch/sparc64/dev/vbus.c			vbus
48
49device	cbus {}
50attach	cbus at vbus
51file	arch/sparc64/dev/cbus.c			cbus
52
53# Sun HME Ethernet controllers
54device	hme: ether, ifnet, mii, ifmedia
55file	dev/ic/hme.c				hme
56
57device	uperf
58file	arch/sparc64/dev/uperf.c		uperf needs-flag
59
60# Framebuffer support
61
62file	arch/sparc64/dev/fb.c
63include	"dev/wscons/files.wscons"
64include	"dev/rasops/files.rasops"
65include	"dev/wsfont/files.wsfont"
66
67device	pcons: wsemuldisplaydev
68attach	pcons at mainbus
69file	arch/sparc64/dev/pcons.c		pcons needs-flag
70
71device	prtc
72attach	prtc at mainbus
73file	arch/sparc64/dev/prtc.c			prtc
74
75include	"dev/sbus/files.sbus"
76include	"dev/mii/files.mii"
77include	"dev/atapiscsi/files.atapiscsi"
78include	"dev/ata/files.ata"
79include	"dev/pckbc/files.pckbc"
80include	"dev/pcmcia/files.pcmcia"
81
82# Needs to be declared before including files.sun
83device	zs {[channel = -1]}
84
85# Sun specific files
86include	"dev/sun/files.sun"
87
88define	iommu
89define	viommu
90file	arch/sparc64/dev/iommu.c		iommu | viommu | sbus
91file	arch/sparc64/dev/viommu.c		viommu
92
93define msi
94file	arch/sparc64/dev/msi.c			msi
95
96attach	sbus at mainbus with sbus_mb
97attach	sbus at xbox with sbus_xbox
98file	arch/sparc64/dev/sbus.c			sbus
99
100device	creator: wsemuldisplaydev, rasops32, firmload
101attach	creator at mainbus, upa
102file	arch/sparc64/dev/creator.c		creator
103
104device	gfb: wsemuldisplaydev, rasops32
105attach	gfb at upa
106file	arch/sparc64/dev/gfb.c			gfb
107
108include	"dev/pci/files.pci"
109major	{wd = 12}
110
111device	psycho: pcibus, iommu
112attach	psycho at mainbus
113file	arch/sparc64/dev/psycho.c		psycho
114
115device	schizo: pcibus, iommu
116attach	schizo at mainbus
117file	arch/sparc64/dev/schizo.c		schizo
118
119device	pyro: pcibus, iommu, msi
120attach	pyro at mainbus
121file	arch/sparc64/dev/pyro.c			pyro
122
123device	vpci: pcibus, viommu, msi
124attach	vpci at mainbus
125file	arch/sparc64/dev/vpci.c			vpci
126
127file	arch/sparc64/dev/pci_machdep.c		psycho | schizo | pyro | vpci
128
129attach	hme at pci with hme_pci
130file	dev/pci/if_hme_pci.c			hme_pci
131
132define	ifb_ident
133file	arch/sparc64/dev/ifb_ident.c		ifb_ident
134
135device	vgafb: ifb_ident, wsemuldisplaydev, rasops_bswap, rasops8, rasops16, rasops32
136attach	vgafb at pci
137file	arch/sparc64/dev/vgafb.c		vgafb
138
139device	machfb: wsemuldisplaydev, rasops_bswap, rasops8
140attach	machfb at pci
141file	arch/sparc64/dev/machfb.c		machfb
142
143device	radeonfb: wsemuldisplaydev, rasops_bswap, rasops8, rasops32
144attach	radeonfb at pci
145file	arch/sparc64/dev/radeonfb.c		radeonfb
146
147device	ifb: ifb_ident, wsemuldisplaydev, rasops_bswap, rasops8
148attach	ifb at pci
149file	arch/sparc64/dev/ifb.c			ifb
150
151device	raptor: wsemuldisplaydev, rasops_bswap, rasops8
152attach	raptor at pci
153file	arch/sparc64/dev/raptor.c		raptor
154
155device	gfxp: wsemuldisplaydev, rasops_bswap, rasops8, rasops32
156attach	gfxp at pci
157file	arch/sparc64/dev/gfxp.c			gfxp
158
159device	sbbc
160attach	sbbc at pci
161file	arch/sparc64/dev/sbbc.c			sbbc needs-flag
162
163# Starfire PC is needed for sbus and pci
164file	arch/sparc64/dev/starfire.c		sbus | psycho
165
166device	ebus {[addr = -1]}: pcibus
167attach	ebus at pci
168attach	ebus at mainbus with ebus_mainbus
169file	arch/sparc64/dev/ebus.c			ebus
170file	arch/sparc64/dev/ebus_mainbus.c		ebus_mainbus
171
172attach	uperf at ebus with uperf_ebus
173file	arch/sparc64/dev/uperf_ebus.c		uperf_ebus
174
175device	clock: mk48txx
176attach	clock at mainbus, sbus with clock_sbus
177attach	clock at ebus with clock_ebus
178attach	clock at fhc with clock_fhc
179
180device	timer
181attach	timer at mainbus, sbus
182
183device	eeprom
184attach	eeprom at sbus, ebus
185file	arch/sparc64/sparc64/clock.c
186
187device	cmp {}
188attach	cmp at mainbus
189file	arch/sparc64/dev/cmp.c			cmp
190
191device	core {}
192attach	core at cmp
193file	arch/sparc64/dev/core.c			core
194
195device	cpu
196attach	cpu at mainbus, cmp, core
197file	arch/sparc64/sparc64/cpu.c
198
199device	auxio
200attach	auxio at ebus with auxio_ebus
201attach	auxio at sbus with auxio_sbus
202file	arch/sparc64/dev/auxio.c		auxio
203
204device	bbc
205attach	bbc at ebus
206file	arch/sparc64/dev/bbc.c			bbc
207
208device	beeper
209attach	beeper at ebus
210file	arch/sparc64/dev/beeper.c		beeper
211
212device	beep
213attach	beep at ebus
214file	arch/sparc64/dev/beep.c			beep
215
216device	led
217attach	led at ebus
218file	arch/sparc64/dev/led.c			led
219
220device	lom
221attach	lom at ebus
222file	arch/sparc64/dev/lom.c			lom
223
224device	pmc
225attach	pmc at ebus
226file	arch/sparc64/dev/pmc.c			pmc
227
228device	ppm
229attach	ppm at ebus
230file	arch/sparc64/dev/ppm.c			ppm
231
232device	power
233attach	power at ebus
234file	arch/sparc64/dev/power.c		power
235
236device	rtc
237attach	rtc at ebus
238file	arch/sparc64/dev/rtc.c			rtc
239
240device	sab {}
241attach	sab at ebus
242device	sabtty
243attach	sabtty at sab
244file	arch/sparc64/dev/sab.c			sab | sabtty needs-flag
245
246device	audioce: audio
247attach	audioce at ebus
248file	arch/sparc64/dev/ce4231.c		audioce
249
250file	arch/sparc64/dev/stp_sbus.c		stp_sbus
251
252attach	wbsd at ebus with wbsd_ebus
253file	arch/sparc64/dev/wbsd_ebus.c		wbsd
254
255#
256# Console related stuff
257#
258
259attach	com at ebus with com_ebus
260file	arch/sparc64/dev/com_ebus.c		com_ebus
261
262attach	pckbc at ebus with pckbc_ebus
263file	arch/sparc64/dev/pckbc_ebus.c		pckbc_ebus
264
265device	comkbd: wskbddev, sunkbd
266attach	comkbd at ebus
267file	arch/sparc64/dev/comkbd_ebus.c		comkbd
268
269device	comms: wsmousedev, sunms
270attach	comms at ebus
271file	arch/sparc64/dev/comms_ebus.c		comms
272
273attach	lpt at ebus with lpt_ebus
274file	arch/sparc64/dev/lpt_ebus.c		lpt_ebus
275
276#device	zs {[channel = -1]}
277attach	zs at sbus with zs_sbus
278attach	zs at fhc with zs_fhc
279file	arch/sparc64/dev/zs.c			zs
280file	dev/ic/z8530sc.c			zs
281
282define	zstty {}
283device	zstty: tty
284attach	zstty at zs
285file	dev/ic/z8530tty.c			zstty needs-flag
286
287device	zskbd: wskbddev, sunkbd
288attach	zskbd at zs
289file	arch/sparc64/dev/z8530kbd.c		zskbd
290
291# Floppy drive
292device	fdc {}
293attach	fdc at sbus with fdc_sbus
294attach	fdc at ebus with fdc_ebus
295device	fd: disk
296attach	fd at fdc
297file	arch/sparc64/dev/fd.c			fdc | fd	needs-flag
298
299# PCF8584 I2C Controller
300attach	pcfiic at ebus with pcfiic_ebus
301file	arch/sparc64/dev/pcfiic_ebus.c		pcfiic_ebus
302
303file	arch/sparc64/dev/consinit.c
304
305file	arch/sparc64/fpu/fpu.c
306file	arch/sparc64/fpu/fpu_add.c
307file	arch/sparc64/fpu/fpu_compare.c
308file	arch/sparc64/fpu/fpu_div.c
309file	arch/sparc64/fpu/fpu_explode.c
310file	arch/sparc64/fpu/fpu_implode.c
311file	arch/sparc64/fpu/fpu_mul.c
312file	arch/sparc64/fpu/fpu_sqrt.c
313file	arch/sparc64/fpu/fpu_subr.c
314
315file	arch/sparc64/sparc64/autoconf.c
316file	arch/sparc64/sparc64/busop.c
317file	arch/sparc64/sparc64/conf.c
318file	arch/sparc64/sparc64/disksubr.c
319file	arch/sparc64/sparc64/emul.c
320file	arch/sparc64/sparc64/hvcall.S		sun4v
321file	arch/sparc64/sparc64/in_cksum.S
322file	arch/sparc64/sparc64/in4_cksum.c
323file	arch/sparc64/sparc64/intr.c
324file	arch/sparc64/sparc64/ipifuncs.c		multiprocessor
325# sparc64/sparc64/locore.s is handled specially in the makefile,
326# because it must come first in the "ld" command line.
327file	arch/sparc64/sparc64/machdep.c
328file	arch/sparc64/sparc64/mdesc.c		sun4v
329file	arch/sparc64/sparc64/mem.c
330file	arch/sparc64/sparc64/openprom.c
331file	arch/sparc64/sparc64/openfirm.c
332file	arch/sparc64/sparc64/ofw_machdep.c
333file	arch/sparc64/sparc64/pmap.c
334file	arch/sparc64/sparc64/process_machdep.c
335file	arch/sparc64/sparc64/sys_machdep.c
336file	arch/sparc64/sparc64/trap.c
337file	arch/sparc64/sparc64/vm_machdep.c
338
339file	arch/sparc64/sparc64/db_interface.c	ddb
340file	arch/sparc64/sparc64/db_trace.c		ddb
341file	arch/sparc64/sparc64/db_disasm.c	ddb
342
343file	lib/libkern/ctzdi2.c
344
345#
346# Machine-independent SCSI drivers
347#
348include	"scsi/files.scsi"
349major	{sd = 7}
350major	{vnd = 8}
351major	{cd = 18}
352major	{rd = 5}
353
354#
355# Machine-independent HID support
356#
357include	"dev/hid/files.hid"
358
359#
360# Machine-independent I2C drivers
361#
362include "dev/i2c/files.i2c"
363file	arch/sparc64/dev/ofwi2c.c		i2cbus
364
365#
366# Machine-independent SD/MMC drivers
367#
368include "dev/sdmmc/files.sdmmc"
369
370#
371# Machine-independent USB drivers
372#
373include	"dev/usb/files.usb"
374
375#
376# Cardbus
377#
378include "dev/cardbus/files.cardbus"
379file	arch/sparc64/sparc64/rbus_machdep.c	cardbus
380
381#
382# Machine-dependent I2C drivers
383#
384
385# PCF8591 ADC I2C Sensor (needs ofw, so sparc64 only for now)
386device	pcfadc
387attach	pcfadc at i2c
388file	arch/sparc64/dev/pcf8591_ofw.c		pcfadc
389
390# PCF8591 ADC I2C Sensor (envctrl, so sparc64 only)
391device	ecadc
392attach	ecadc at i2c
393file	arch/sparc64/dev/pcf8591_envctrl.c	ecadc
394
395# TDA8444 (sparc64 only for now)
396device	tda
397attach	tda at i2c
398file	arch/sparc64/dev/tda.c			tda needs-flag
399
400#
401# Machine-independent GPIO drivers
402#
403include "dev/gpio/files.gpio"
404
405#
406# Machine-independent 1-Wire drivers
407#
408include "dev/onewire/files.onewire"
409
410# Virtual console
411device	vcons
412attach	vcons at vbus
413file	arch/sparc64/dev/vcons.c		vcons needs-flag
414
415# Virtual random number generator
416device	vrng
417attach	vrng at vbus
418file	arch/sparc64/dev/vrng.c			vrng
419
420# Virtual rtc
421device	vrtc
422attach	vrtc at vbus
423file	arch/sparc64/dev/vrtc.c			vrtc
424
425define	ldc
426file	arch/sparc64/dev/ldc.c			ldc
427
428# Virtual disk server
429device	vds {}
430attach	vds at cbus
431file	arch/sparc64/dev/vds.c			vds
432
433# Virtual disk server port
434device	vdsp: ldc
435attach	vdsp at vds
436file	arch/sparc64/dev/vdsp.c			vdsp needs-flag
437
438# Virtual disk
439device	vdsk: ldc, scsi
440attach	vdsk at cbus
441file	arch/sparc64/dev/vdsk.c			vdsk
442
443# Virtual network switch
444device	vsw {}
445attach	vsw at cbus
446file	arch/sparc64/dev/vsw.c			vsw
447
448# Virtual network
449device	vnet: ldc
450attach	vnet at cbus, vsw
451file	arch/sparc64/dev/vnet.c			vnet
452
453# Virtual console concentrator
454device	vcc {}
455attach	vcc at cbus
456file	arch/sparc64/dev/vcc.c			vcc
457
458device	vcctty: ldc
459attach	vcctty at vcc
460file	arch/sparc64/dev/vcctty.c		vcctty needs-flag
461
462# Virtual channel
463device	vldc {}
464attach	vldc at cbus
465file	arch/sparc64/dev/vldc.c			vldc
466
467device	vldcp: ldc
468attach	vldcp at vldc
469file	arch/sparc64/dev/vldcp.c		vldcp needs-flag
470
471device	mgiic: i2cbus
472attach	mgiic at mainbus
473file	arch/sparc64/dev/mgiic.c		mgiic
474
475# 128 bits math
476file	lib/libkern/lshrti3.c
477file	lib/libkern/multi3.c
478