1*5a821b2cSskrll# $NetBSD: files.gemini,v 1.13 2018/09/21 12:04:06 skrll Exp $ 2f5d7ce3dSmatt# 3f5d7ce3dSmatt# Configuration info for GEMINI CPU support 4f5d7ce3dSmatt# Based on omap/files.omap2 5f5d7ce3dSmatt# 6f5d7ce3dSmatt 7f5d7ce3dSmattinclude "arch/arm/pic/files.pic" 8f5d7ce3dSmatt 9f5d7ce3dSmattfile arch/arm/arm32/irq_dispatch.S 10f5d7ce3dSmatt 11f5d7ce3dSmatt# Memory size in megabytes 12f5d7ce3dSmattdefparam opt_gemini.h MEMSIZE 13f5d7ce3dSmattdefflag opt_gemini.h GEMINI 140fbe2f86Scliffdefparam opt_gemini.h GEMINI_BUSBASE: GEMINI 15f5d7ce3dSmattdefflag opt_gemini.h SL3516: GEMINI 16bd4b8f97Scliffdefflag opt_gemini.h GEMINI_MASTER: GEMINI 17bd4b8f97Scliffdefflag opt_gemini.h GEMINI_SLAVE: GEMINI 1801b65de4Scliffdefflag opt_gemini.h GEMINI_SINGLE: GEMINI 19f5d7ce3dSmatt 20f5d7ce3dSmatt# OBIO just an attach point 21f5d7ce3dSmattdefine obio { [addr=-1], [size=0], [intr=-1], [mult=1], [intrbase=-1], [nobyteacc=0] 22f5d7ce3dSmatt } : bus_space_generic 23f5d7ce3dSmattdevice obio: obio, pcibus 24f5d7ce3dSmattattach obio at mainbus 25f5d7ce3dSmattfile arch/arm/gemini/gemini_obio.c obio needs-count 26f5d7ce3dSmatt 27f5d7ce3dSmatt# OBIO files 28f5d7ce3dSmattfile arch/arm/gemini/gemini_space.c obio 29f5d7ce3dSmatt##file arch/arm/gemini/gemini_a2x_space.c obio 30f5d7ce3dSmatt##file arch/arm/gemini/gemini_a2x_io.S obio 31f5d7ce3dSmattfile arch/arm/gemini/gemini_a4x_space.c obio 323d01a076Sskrllfile arch/arm/arm/bus_space_a4x.S obio 33f5d7ce3dSmattfile arch/arm/gemini/gemini_dma.c 34f5d7ce3dSmatt 35f5d7ce3dSmatt# these bus space methods are not bus-specific ... 36f5d7ce3dSmatt# 37f5d7ce3dSmatt##file arch/arm/gemini/gemini_nobyteacc_space.c obio 38f5d7ce3dSmatt##file arch/arm/gemini/gemini_nobyteacc_io.S obio 39f5d7ce3dSmatt 40f5d7ce3dSmatt# GEMINI interrupt controller 410bbe6c8fSbshdevice geminiicu: pic, pic_splfuncs 42f5d7ce3dSmattattach geminiicu at obio with geminiicu 43f5d7ce3dSmattfile arch/arm/gemini/gemini_icu.c geminiicu needs-flag 44f5d7ce3dSmatt 45c55c9be5Scliff# Gemini inter-processor-interrupts 46ef77c48fSmattdevice geminiipi {} 47c55c9be5Scliffattach geminiipi at obio 48c55c9be5Sclifffile arch/arm/gemini/gemini_ipi.c geminiipi needs-flag 49f5d7ce3dSmatt 5041bfa2c4Scliff# Gemini inter-processor-messages 5141bfa2c4Scliffdevice geminiipm {} 5241bfa2c4Scliffattach geminiipm at geminiipi 5341bfa2c4Sclifffile arch/arm/gemini/gemini_ipm.c geminiipm needs-flag 5441bfa2c4Scliff 55ef77c48fSmattdevice gpn: ifnet, ether, arp 5641bfa2c4Scliffattach gpn at geminiipm 57ef77c48fSmattfile arch/arm/gemini/if_gpn.c gpn needs-flag 58ef77c48fSmatt 59f5d7ce3dSmatt# GEMINI GPIO controllers 60f5d7ce3dSmatt 61f5d7ce3dSmatt# GEMINI Timers 62f5d7ce3dSmattdevice geminitmr 63f5d7ce3dSmattfile arch/arm/gemini/gemini_timer.c geminitmr 64f5d7ce3dSmattdefparam opt_gemini.h GEMINI_TIMER_CLOCK_FREQ 65f5d7ce3dSmatt 66f5d7ce3dSmatt# OBIO/geminitmr 67f5d7ce3dSmattattach geminitmr at obio with obiotimer 68f5d7ce3dSmattfile arch/arm/gemini/obio_timer.c obiotimer 69f5d7ce3dSmatt 70f5d7ce3dSmatt# Gemini Watchdog timer 71f5d7ce3dSmattdevice geminiwdt: sysmon_wdog 72f5d7ce3dSmattfile arch/arm/gemini/gemini_wdt.c geminiwdt needs-flag 73f5d7ce3dSmattdefparam opt_gemini.h GEMINI_WDT_CLOCK_FREQ 74f5d7ce3dSmatt 75f5d7ce3dSmattattach geminiwdt at obio with obiowdt 76f5d7ce3dSmattfile arch/arm/gemini/obio_wdt.c obiowdt 77f5d7ce3dSmatt 78f5d7ce3dSmatt# NS16550 compatible serial ports 79f5d7ce3dSmattattach com at obio with gemini_com 80f5d7ce3dSmattfile arch/arm/gemini/gemini_com.c gemini_com 81f5d7ce3dSmatt 82bd4b8f97Scliff# GEMINI LPC Bus 83bd4b8f97Scliffdefine lpcbus {[addr = -1]} 84bd4b8f97Scliffdevice lpc { [ldn=-1], [addr=-1], [size=0], [intr=-1] } 85bd4b8f97Scliffattach lpc at lpcbus 86bd4b8f97Sclifffile arch/arm/gemini/gemini_lpc.c lpc needs-count 87bd4b8f97Scliff 88bd4b8f97Scliff# GEMINI LPC Host Controller 89bd4b8f97Scliffdevice geminilpchc: lpcbus 90bd4b8f97Scliffattach geminilpchc at obio with obio_lpchc 91bd4b8f97Sclifffile arch/arm/gemini/obio_lpchc.c obio_lpchc 92bd4b8f97Sclifffile arch/arm/gemini/gemini_lpchc.c geminilpchc needs-count 93bd4b8f97Scliff 94bd4b8f97Scliff# LPC Bus COM UARTs 95bd4b8f97Scliffattach com at lpc with lpc_com 96bd4b8f97Sclifffile arch/arm/gemini/lpc_com.c lpc_com 97bd4b8f97Scliff 985aec566fScliff# GEMINI GPIO controllers 995aec566fScliffdevice geminigpio: gpiobus 1005aec566fScliffattach geminigpio at obio with geminigpio 1015aec566fSclifffile arch/arm/gemini/gemini_gpio.c geminigpio 102bd4b8f97Scliff 103f5d7ce3dSmatt# GEMINI USB controller 1042a71ce51Smattattach ehci at obio with ehci_obio 1052a71ce51Smattfile arch/arm/gemini/obio_ehci.c ehci_obio 106f5d7ce3dSmatt 107bd4b8f97Scliff# GEMINI ATA controller 108bd4b8f97Scliffattach wdc at obio with wdc_obio 109bd4b8f97Sclifffile arch/arm/gemini/obio_wdc.c wdc_obio 110f5d7ce3dSmatt 111f5d7ce3dSmatt# PCI 112f5d7ce3dSmattdevice gemini_pci: pcibus 113f5d7ce3dSmattattach gemini_pci at obio 114bd4b8f97Sclifffile arch/arm/gemini/gemini_pci.c pci needs-flag 115ef77c48fSmatt 116ef77c48fSmatt# GEMINI MAC controller 117145d2756Smattdevice geminigmac { port, intr, phy }: mii, mii_bitbang 118ef77c48fSmattattach geminigmac at obio with geminigmac 119ef77c48fSmattfile arch/arm/gemini/gemini_gmac.c geminigmac needs-flag 120ef77c48fSmatt 121145d2756Smattdevice gmc: ifnet, ether, arp, mii 122ef77c48fSmattattach gmc at geminigmac 123ef77c48fSmattfile arch/arm/gemini/if_gmc.c gmc 124