files.gemini revision 1.8 1 # $NetBSD: files.gemini,v 1.8 2008/11/26 05:25:27 matt 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/xscale/pxa2x0_a4x_io.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
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 device gpn: ifnet, ether, arp
51 attach gpn at geminiipi
52 file arch/arm/gemini/if_gpn.c gpn needs-flag
53
54 # GEMINI GPIO controllers
55
56 # GEMINI Timers
57 device geminitmr
58 file arch/arm/gemini/gemini_timer.c geminitmr
59 defparam opt_gemini.h GEMINI_TIMER_CLOCK_FREQ
60
61 # OBIO/geminitmr
62 attach geminitmr at obio with obiotimer
63 file arch/arm/gemini/obio_timer.c obiotimer
64
65 # Gemini Watchdog timer
66 device geminiwdt: sysmon_wdog
67 file arch/arm/gemini/gemini_wdt.c geminiwdt needs-flag
68 defparam opt_gemini.h GEMINI_WDT_CLOCK_FREQ
69
70 attach geminiwdt at obio with obiowdt
71 file arch/arm/gemini/obio_wdt.c obiowdt
72
73 # NS16550 compatible serial ports
74 attach com at obio with gemini_com
75 file arch/arm/gemini/gemini_com.c gemini_com
76 defparam opt_com.h CONSADDR CONSPEED CONMODE
77
78 # GEMINI LPC Bus
79 define lpcbus {[addr = -1]}
80 device lpc { [ldn=-1], [addr=-1], [size=0], [intr=-1] }
81 attach lpc at lpcbus
82 file arch/arm/gemini/gemini_lpc.c lpc needs-count
83
84 # GEMINI LPC Host Controller
85 device geminilpchc: lpcbus
86 attach geminilpchc at obio with obio_lpchc
87 file arch/arm/gemini/obio_lpchc.c obio_lpchc
88 file arch/arm/gemini/gemini_lpchc.c geminilpchc needs-count
89
90 # LPC Bus COM UARTs
91 attach com at lpc with lpc_com
92 file arch/arm/gemini/lpc_com.c lpc_com
93
94 # GEMINI GPIO controllers
95 device geminigpio: gpiobus
96 attach geminigpio at obio with geminigpio
97 file arch/arm/gemini/gemini_gpio.c geminigpio
98
99 # GEMINI USB controller
100 attach ehci at obio with ehci_obio
101 file arch/arm/gemini/obio_ehci.c ehci_obio
102
103 # GEMINI ATA controller
104 attach wdc at obio with wdc_obio
105 file arch/arm/gemini/obio_wdc.c wdc_obio
106
107 # PCI
108 device gemini_pci: pcibus
109 attach gemini_pci at obio
110 file arch/arm/gemini/gemini_pci.c pci needs-flag
111
112 # GEMINI MAC controller
113 device geminigmac { port, intr, phy }: mii
114 attach geminigmac at obio with geminigmac
115 file arch/arm/gemini/gemini_gmac.c geminigmac needs-flag
116
117 device gmc: ifnet, mii
118 attach gmc at geminigmac
119 file arch/arm/gemini/if_gmc.c gmc
120