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