1#         $NetBSD: files.hpcmips,v 1.110 2022/05/23 21:46:12 andvar Exp $
2
3# maxpartitions must be first item in files.${ARCH}.
4maxpartitions 8
5
6maxusers 2 8 64
7
8#
9# Stack-less Just-In-Time compiler
10#
11
12include   "external/bsd/sljit/conf/files.sljit"
13
14#
15# Machine-independent I2O drivers.
16#
17
18include "dev/i2o/files.i2o"
19
20#
21# Machine-independent SCSI drivers
22#
23
24include "dev/scsipi/files.scsipi"
25
26#
27# Machine-independent ATA drivers
28#
29
30include "dev/ata/files.ata"
31
32#
33# APM emulation
34#
35
36include "dev/hpc/files.hpcapm"
37file      arch/hpcmips/hpcmips/hpcapm_machdep.c   hpcapm
38
39#
40# Bus-independent devices
41#
42device mainbus { [platform = -1] }: hpcapmif
43attach mainbus at root
44
45device cpu                                        # not optional
46attach cpu at mainbus
47file arch/hpcmips/hpcmips/cpu.c                   cpu
48
49# CPU support option headers
50defflag   opt_vr41xx.h        VR41XX VR4101 VR4102 VR4111 VR4121 VR4122 VR4181 VR4131
51defflag   opt_tx39xx.h        TX39XX TX3911 TX3912 TX3922
52
53#
54# CPU-dependent files
55#
56file      arch/hpcmips/vr/vr.c                    vr41xx    # NEC VR4000 series
57file      arch/hpcmips/vr/vr_idle.S     vr41xx
58file      arch/hpcmips/tx/tx39.c                  tx39xx    # TOSHIBA TX3900 series
59
60file      arch/hpcmips/hpcmips/autoconf.c
61file      arch/hpcmips/hpcmips/bus_dma.c
62file      arch/hpcmips/hpcmips/bus_space.c
63file      arch/hpcmips/hpcmips/bus_space_notimpl.c
64file      arch/hpcmips/hpcmips/bus_space_through.c
65file      arch/hpcmips/hpcmips/interrupt.c
66file      arch/hpcmips/hpcmips/machdep.c
67file      arch/hpcmips/hpcmips/mainbus.c
68
69file      dev/bus_dma/bus_dmamem_common.c
70
71file      dev/kloader.c                                     kloader
72file      arch/hpcmips/hpcmips/kloader_machdep.c  kloader
73file      arch/hpcmips/hpcmips/kloader_vr41.S     vr41xx & kloader
74file      arch/hpcmips/hpcmips/kloader_tx39.S     tx39xx & kloader
75defflag   opt_no_symbolsz_entry.h                 NO_SYMBOLSZ_ENTRY
76defflag   opt_kloader.h                           KLOADER
77defflag   debug_kloader.h                         KLOADER_DEBUG
78defparam opt_kloader_kernel_path.h      KLOADER_KERNEL_PATH
79
80defparam opt_memsize.h                            MEMSIZE
81
82#
83# H/PC Platform common files.
84#
85include "arch/hpc/conf/files.hpc"
86file      arch/hpc/hpc/disksubr.c                           disk
87include "dev/hpc/files.bicons"
88include "dev/hpc/files.hpcfb"
89include "dev/hpc/files.hpckbd"
90include "dev/hpc/files.hpctp"
91
92#
93# Debug utility
94#
95include "arch/hpc/conf/files.debug"
96
97# Console autoconfiguration code: selects between a framebuffers
98file      dev/cons.c
99
100#
101# ISA bus support
102#
103include "dev/pci/files.pci"   # XXX some ISA devs are 'at pci' too.
104include "dev/isa/files.isa"
105
106#
107#  Vr41xx integrated peripherals
108#
109device vripif { [addr=-1], [size=-1], [addr2=-1], [size2=-1], [unit=-1], [pwctl=-1], [platform = -1] }
110define vrip_common
111file arch/hpcmips/vr/vrip.c             vrip_common needs-flag
112file arch/hpcmips/vr/vrip_spl.S                   vrip_common
113device vrip: vripif
114attach vrip at mainbus: vrip_common
115device vr4102ip: vripif
116attach vr4102ip at mainbus: vrip_common
117file arch/hpcmips/vr/vr4102ip.c                   vr4102ip
118device vr4122ip: vripif
119attach vr4122ip at mainbus: vrip_common
120file arch/hpcmips/vr/vr4122ip.c                   vr4122ip
121device vr4181ip: vripif
122attach vr4181ip at mainbus: vrip_common
123file arch/hpcmips/vr/vr4181ip.c                   vr4181ip
124
125device vrbcu
126attach vrbcu at vripif
127file arch/hpcmips/vr/bcu_vrip.c                             vrbcu needs-flag
128
129device vrrtc
130attach vrrtc at vripif
131file arch/hpcmips/vr/rtc.c                        vrrtc needs-flag
132
133device vrcmu
134attach vrcmu at vripif
135file arch/hpcmips/vr/cmu.c                        vrcmu needs-flag
136
137include "dev/hpc/files.hpcio"
138device    vrisabif {[platform = -1], [isaportoffset=0], [isamemoffset=0]}                 # GIU attachment
139
140device vrgiu: vrisabif, hpcioif
141attach vrgiu at vripif
142file arch/hpcmips/vr/vrgiu.c                      vrgiu
143
144device vr4181giu: vrisabif, hpcioif
145attach vr4181giu at vripif
146file arch/hpcmips/vr/vr4181giu.c                  vr4181giu
147
148device vrisab: isabus
149attach vrisab at vrisabif
150file arch/hpcmips/isa/isa_machdep.c               vrisab
151
152device vrkiu: hpckbdif
153attach vrkiu at vripif
154file arch/hpcmips/vr/vrkiu.c                      vrkiu needs-flag
155
156device vrpmu
157attach vrpmu at vripif
158file arch/hpcmips/vr/vrpmu.c                      vrpmu needs-flag
159
160device vrdsu
161attach vrdsu at vripif
162file arch/hpcmips/vr/vrdsu.c                      vrdsu needs-flag
163
164device vrled
165attach vrled at vripif
166file arch/hpcmips/vr/vrled.c                      vrled needs-flag
167
168define    vrpiu_common
169file arch/hpcmips/vr/vrpiu.c                      vrpiu_common
170device vrpiu: wsmousedev
171attach vrpiu at vripif: hpctpanel, vrpiu_common
172device vrc4173piu: wsmousedev
173attach vrc4173piu at vripif: hpctpanel, vrpiu_common
174
175device vrdsiu_mouse: wsmousedev
176attach vrdsiu_mouse at vripif
177file arch/hpcmips/vr/vrdsiu_mouse.c               vrdsiu_mouse
178
179attach ohci at vripif with ohci_vrip
180file arch/hpcmips/dev/ohci_vrip.c                 ohci_vrip
181
182device vrpciu: pcibus
183attach vrpciu at vripif
184file arch/hpcmips/vr/vrpciu.c                     vrpciu needs-flag
185
186defflag opt_mq200.h MQ200_DEBUG MQ200_USECRT
187device mqvideo: hpcfbif
188attach mqvideo at vripif with mqvideo_vrip
189file arch/hpcmips/vr/mq200_vrip.c                 mqvideo_vrip
190file arch/hpcmips/dev/mq200.c                     mqvideo
191file arch/hpcmips/dev/mq200subr.c                 mqvideo
192file arch/hpcmips/dev/mq200debug.c                mqvideo
193file arch/hpcmips/dev/mq200machdep.c              mqvideo
194
195attach mqvideo at pci with mqvideo_pci
196file arch/hpcmips/dev/mq200_pci.c                 mqvideo_pci
197
198device ite8181video: hpcfbif, hpccmap
199attach ite8181video at vripif with ite8181video_vrip
200file arch/hpcmips/vr/ite8181_vrip.c               ite8181video_vrip
201file arch/hpcmips/dev/ite8181.c                             ite8181video
202
203defflag opt_vrc4172pci.h      VRC4172PCI_MCR700_SUPPORT
204device vrc4172pci: pcibus
205attach vrc4172pci at vripif
206file arch/hpcmips/vr/vrc4172pci.c                 vrc4172pci
207
208device vrc4172pwm
209attach vrc4172pwm at vripif
210file arch/hpcmips/vr/vrc4172pwm.c                 vrc4172pwm needs-flag
211
212device vrc4172gpio: hpcioif, vrisabif
213attach vrc4172gpio at hpcioif
214file arch/hpcmips/vr/vrc4172gpio.c                vrc4172gpio
215
216device vrc4173cardu: pcmciabus
217attach vrc4173cardu at pci
218file arch/hpcmips/pci/vrc4173cardu.c              vrc4173cardu
219
220device vrc4173bcu: vripif
221attach vrc4173bcu at pci
222file arch/hpcmips/vr/vrc4173bcu.c                 vrc4173bcu
223
224#
225#         TOSHIBA TX3912/3922
226#
227defflag                       TX39_WATCHDOGTIMER
228defflag                       TX39ICU_DEBUG
229defflag                       TX39CLOCK_DEBUG
230defflag                       TX39BIU_DEBUG
231defflag                       TX39POWER_DEBUG
232defflag                       TX39UART_DEBUG
233defflag                       USE_POLL
234
235device txsim { }
236device txcsbusif {[platform = -1]}
237device txcomif {[slot = -1]}
238device txsibif {[slot = -1]}
239device txspiif {[slot = -1]}
240device ucbif { }
241device irif { }
242
243attach txsim at mainbus
244file arch/hpcmips/tx/txsim.c            txsim
245file arch/hpcmips/tx/txsnd.c            txsim
246
247device tx39biu: txcsbusif
248attach tx39biu at txsim
249file arch/hpcmips/tx/tx39biu.c                    tx39biu
250
251device txcsbus {[regcs=-1], [regcsbase=0], [regcssize=-1], [regcswidth=-1], [iocs=-1], [iocsbase=0], [iocssize=-1], [iocswidth=-1], [memcs=-1], [memcsbase=0], [memcssize=-1], [memcswidth=-1], [irq1=-1], [irq2=-1], [irq3=-1]}
252attach txcsbus at txcsbusif
253file arch/hpcmips/tx/txcsbus.c                    txcsbus
254
255device tx39icu
256attach tx39icu at txsim
257file arch/hpcmips/tx/tx39icu.c                    tx39icu
258
259device tx39power
260attach tx39power at txsim
261file arch/hpcmips/tx/tx39power.c        tx39power
262
263device tx39clock
264attach tx39clock at txsim
265file arch/hpcmips/tx/tx39clock.c        tx39clock
266
267device tx3912video: hpcfbif
268attach tx3912video at txsim
269file arch/hpcmips/tx/tx3912video.c      tx3912video
270
271device tx39io
272attach tx39io at txsim
273file arch/hpcmips/tx/tx39io.c           tx39io
274
275device txioman: hpcioif
276attach txioman at txsim
277file arch/hpcmips/tx/txioman.c                    txioman
278
279device tx39sib: txsibif
280attach tx39sib at txsim
281file arch/hpcmips/tx/tx39sib.c                    tx39sib
282
283device tx39spi: txspiif
284attach tx39spi at txsim
285file arch/hpcmips/tx/tx39spi.c                    tx39spi
286
287#         PHILIPS UCB1200 / TOSHIBA TC35413F (modem/audio analog front-end)
288device ucb: ucbif
289attach ucb at txsibif
290file arch/hpcmips/dev/ucb1200.c                   ucb
291
292device ucbtp: wsmousedev
293attach ucbtp at ucbif: hpctpanel
294file arch/hpcmips/dev/ucbtp.c           ucbtp
295
296device ucbsnd
297attach ucbsnd at ucbif
298file arch/hpcmips/dev/ucbsnd.c                    ucbsnd              needs-flag
299
300device ucbio
301attach ucbio at ucbif
302file arch/hpcmips/dev/ucbio.c           ucbio
303
304device tx39uart: txcomif
305attach tx39uart at txsim
306file arch/hpcmips/tx/tx39uart.c                   tx39uart  needs-flag
307
308device txcom: irif
309attach txcom at txcomif
310file arch/hpcmips/tx/txcom.c            txcom
311
312device tx39ir
313attach tx39ir at irif
314file arch/hpcmips/tx/tx39ir.c           tx39ir
315
316#         ITE IT8368E PCMCIA / TOSHIBA TC6345AF buffer chip (PCMCIA)
317device it8368e: pcmciabus
318attach it8368e at txcsbus
319file arch/hpcmips/dev/it8368.c                    it8368e
320
321#         MITUBISHI M38813 keryboard controller
322device m38813c: hpckbdif
323attach m38813c at txcsbus
324file arch/hpcmips/dev/m38813c.c                   m38813c             needs-flag
325
326#         PHILIPS 74ALVC16241 / TOSHIBA TC5165BTFS buffer driver (keyboard)
327device tc5165buf: hpckbdif
328attach tc5165buf at txcsbus
329file arch/hpcmips/dev/tc5165buf.c       tc5165buf needs-flag
330
331#         TOSHIBA TC6358E(Plum2)
332device plumif {}
333device plum: plumif
334attach plum at txcsbus
335file arch/hpcmips/dev/plum.c            plum
336
337device plumicu
338attach plumicu at plumif
339file arch/hpcmips/dev/plumicu.c                   plumicu
340
341device plumpower
342attach plumpower at plumif
343file arch/hpcmips/dev/plumpower.c       plumpower
344
345device plumvideo: hpcfbif
346attach plumvideo at plumif
347file arch/hpcmips/dev/plumvideo.c       plumvideo
348
349device plumpcmcia: pcmciabus
350attach plumpcmcia at plumif
351file arch/hpcmips/dev/plumpcmcia.c      plumpcmcia
352
353device plumiobusif {[platform = -1], [slot = -1]}
354device plumiobus: plumiobusif
355attach plumiobus at plumif
356file arch/hpcmips/dev/plumiobus.c       plumiobus
357
358device plumisab: isabus
359attach plumisab at plumiobusif
360file arch/hpcmips/isa/plumisa_machdep.c plumisab
361
362# OHCI USB controller
363attach    ohci at plumif with plumohci
364file      arch/hpcmips/dev/plumohci.c   plumohci  needs-flag
365
366#device txisab: isabus
367#attach txisab at txcsbus
368#file arch/hpcmips/isa/txisa_machdep.c  txisab
369
370file      dev/hpc/video_subr.c                    tx3912video | plumvideo
371
372# Sharp Telios LCD and battery control driver
373device    teliosio
374attach    teliosio at txcsbus
375file      arch/hpcmips/dev/teliosio.c   teliosio
376
377#
378#         Real-time clock (not optional)
379#
380file      arch/hpcmips/hpcmips/clock.c
381
382# Floppy disk controller
383device    fdc {drive = -1}
384#attach   fdc at isa
385#device   fd: disk, isadma
386device    fd: disk
387#attach   fd at fdc
388file      arch/i386/isa/fd.c            fdc needs-flag
389
390# XXXX pcic here because it needs to be late.  The catch: pcic needs
391# to be late, so devices which attach to it are attached late.  But it
392# needs to be before its isa and pci attachments.  This answer is
393# non-optimal, but I don't have a better answer right now.
394
395# PCIC pcmcia controller
396# XXX this needs to be done very late, so it's done here.  This feels
397# like a kludge, but it might be for the best.
398
399defparam            PCIC_ISA_ALLOC_IOBASE
400defparam            PCIC_ISA_ALLOC_IOSIZE
401defparam            PCIC_ISA_INTR_ALLOC_MASK
402
403device    pcic: pcmciabus
404file      dev/ic/i82365.c                         pcic
405
406#
407# PCIC pcmcia controller
408#
409attach    pcic at isa with pcic_isa
410file      dev/isa/i82365_isa.c                              pcic_isa
411file      dev/isa/i82365_isasubr.c                pcic_isa
412
413# PCIC pcmcia controller on vrip bus.
414attach    pcic at vripif with pcic_vrip
415file      arch/hpcmips/vr/vrecu.c                           pcic_vrip
416
417#
418# Machine-independent PCMCIA drivers
419#
420include "dev/pcmcia/files.pcmcia"
421
422# Serial Interface Unit
423attach com at vripif with com_vrip
424file      arch/hpcmips/vr/com_vrip.c              com_vrip needs-flag
425
426attach com at hpcioif with com_hpcio
427file arch/hpcmips/dev/com_hpcio.c                 com_hpcio needs-flag
428
429# Memory Disk for boot tape
430file dev/md_root.c                                memory_disk_hooks
431
432include "dev/usb/files.usb"
433
434# DMA Address Unit
435device vrdmaau
436attach vrdmaau at vripif
437file arch/hpcmips/vr/vrdmaau.c          vrdmaau
438
439# DMA Control Unit
440device vrdcu
441attach vrdcu at vripif
442file arch/hpcmips/vr/vrdcu.c  vrdcu
443
444# Audio Interface Unit
445device vraiu: audiobus
446attach vraiu at vripif
447file arch/hpcmips/vr/vraiu.c  vraiu
448
449# VR4181 Audio Interface Unit
450device vr4181aiu
451attach vr4181aiu at vripif
452file arch/hpcmips/vr/vr4181aiu.c        vr4181aiu needs-flag
453
454# Flash memory on L-card+     XXX should not be here
455device vrflash
456attach vrflash at vripif with flash_vrip
457file arch/hpcmips/vr/flash_vrip.c       flash_vrip          needs-flag
458
459# OptPoint on Telios HC-AJ2
460device optpoint : wsmousedev
461attach optpoint at txspiif
462file arch/hpcmips/dev/optpoint.c        optpoint
463
464file arch/hpcmips/pci/pci_machdep.c
465
466include "arch/hpcmips/conf/majors.hpcmips"
467