files.gemini revision 1.12 1 # $NetBSD: files.gemini,v 1.12 2012/06/06 20:21:45 skrll Exp $
2 #
3 # Configuration info for GEMINI CPU support
4 # Based on omap/files.omap2
5 #
6
7 include "arch/arm/pic/files.pic"
8
9 file arch/arm/arm32/irq_dispatch.S
10
11 # Memory size in megabytes
12 defparam opt_gemini.h MEMSIZE
13 defflag opt_gemini.h GEMINI
14 defparam opt_gemini.h GEMINI_BUSBASE: GEMINI
15 defflag opt_gemini.h SL3516: GEMINI
16 defflag opt_gemini.h GEMINI_MASTER: GEMINI
17 defflag opt_gemini.h GEMINI_SLAVE: GEMINI
18 defflag opt_gemini.h GEMINI_SINGLE: GEMINI
19
20 # OBIO just an attach point
21 define obio { [addr=-1], [size=0], [intr=-1], [mult=1], [intrbase=-1], [nobyteacc=0]
22 } : bus_space_generic
23 device obio: obio, pcibus
24 attach obio at mainbus
25 file arch/arm/gemini/gemini_obio.c obio needs-count
26
27 # OBIO files
28 file arch/arm/gemini/gemini_space.c obio
29 ##file arch/arm/gemini/gemini_a2x_space.c obio
30 ##file arch/arm/gemini/gemini_a2x_io.S obio
31 file arch/arm/gemini/gemini_a4x_space.c obio
32 file arch/arm/arm/bus_space_a4x.S obio
33 file arch/arm/gemini/gemini_dma.c
34
35 # these bus space methods are not bus-specific ...
36 #
37 ##file arch/arm/gemini/gemini_nobyteacc_space.c obio
38 ##file arch/arm/gemini/gemini_nobyteacc_io.S obio
39
40 # GEMINI interrupt controller
41 device geminiicu: pic, pic_splfuncs
42 attach geminiicu at obio with geminiicu
43 file arch/arm/gemini/gemini_icu.c geminiicu needs-flag
44
45 # Gemini inter-processor-interrupts
46 device geminiipi {}
47 attach geminiipi at obio
48 file arch/arm/gemini/gemini_ipi.c geminiipi needs-flag
49
50 # Gemini inter-processor-messages
51 device geminiipm {}
52 attach geminiipm at geminiipi
53 file arch/arm/gemini/gemini_ipm.c geminiipm needs-flag
54
55 device gpn: ifnet, ether, arp
56 attach gpn at geminiipm
57 file arch/arm/gemini/if_gpn.c gpn needs-flag
58
59 # GEMINI GPIO controllers
60
61 # GEMINI Timers
62 device geminitmr
63 file arch/arm/gemini/gemini_timer.c geminitmr
64 defparam opt_gemini.h GEMINI_TIMER_CLOCK_FREQ
65
66 # OBIO/geminitmr
67 attach geminitmr at obio with obiotimer
68 file arch/arm/gemini/obio_timer.c obiotimer
69
70 # Gemini Watchdog timer
71 device geminiwdt: sysmon_wdog
72 file arch/arm/gemini/gemini_wdt.c geminiwdt needs-flag
73 defparam opt_gemini.h GEMINI_WDT_CLOCK_FREQ
74
75 attach geminiwdt at obio with obiowdt
76 file arch/arm/gemini/obio_wdt.c obiowdt
77
78 # NS16550 compatible serial ports
79 attach com at obio with gemini_com
80 file arch/arm/gemini/gemini_com.c gemini_com
81 defparam opt_com.h CONSADDR CONSPEED CONMODE
82
83 # GEMINI LPC Bus
84 define lpcbus {[addr = -1]}
85 device lpc { [ldn=-1], [addr=-1], [size=0], [intr=-1] }
86 attach lpc at lpcbus
87 file arch/arm/gemini/gemini_lpc.c lpc needs-count
88
89 # GEMINI LPC Host Controller
90 device geminilpchc: lpcbus
91 attach geminilpchc at obio with obio_lpchc
92 file arch/arm/gemini/obio_lpchc.c obio_lpchc
93 file arch/arm/gemini/gemini_lpchc.c geminilpchc needs-count
94
95 # LPC Bus COM UARTs
96 attach com at lpc with lpc_com
97 file arch/arm/gemini/lpc_com.c lpc_com
98
99 # GEMINI GPIO controllers
100 device geminigpio: gpiobus
101 attach geminigpio at obio with geminigpio
102 file arch/arm/gemini/gemini_gpio.c geminigpio
103
104 # GEMINI USB controller
105 attach ehci at obio with ehci_obio
106 file arch/arm/gemini/obio_ehci.c ehci_obio
107
108 # GEMINI ATA controller
109 attach wdc at obio with wdc_obio
110 file arch/arm/gemini/obio_wdc.c wdc_obio
111
112 # PCI
113 device gemini_pci: pcibus
114 attach gemini_pci at obio
115 file arch/arm/gemini/gemini_pci.c pci needs-flag
116
117 # GEMINI MAC controller
118 device geminigmac { port, intr, phy }: mii, mii_bitbang
119 attach geminigmac at obio with geminigmac
120 file arch/arm/gemini/gemini_gmac.c geminigmac needs-flag
121
122 device gmc: ifnet, ether, arp, mii
123 attach gmc at geminigmac
124 file arch/arm/gemini/if_gmc.c gmc
125