summaryrefslogtreecommitdiff
path: root/sys/arch/arm/gemini/files.gemini
blob: b32a458fe9333f432a68e4a9997a4e650f9b0035 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
#	$NetBSD: files.gemini,v 1.13 2018/09/21 12:04:06 skrll Exp $
#
# Configuration info for GEMINI CPU support
# Based on omap/files.omap2
#

include "arch/arm/pic/files.pic"

file	arch/arm/arm32/irq_dispatch.S

# Memory size in megabytes
defparam opt_gemini.h				MEMSIZE
defflag opt_gemini.h				GEMINI
defparam opt_gemini.h				GEMINI_BUSBASE: GEMINI
defflag opt_gemini.h				SL3516: GEMINI
defflag opt_gemini.h				GEMINI_MASTER: GEMINI
defflag opt_gemini.h				GEMINI_SLAVE: GEMINI
defflag opt_gemini.h				GEMINI_SINGLE: GEMINI

# OBIO just an attach point
define obio { [addr=-1], [size=0], [intr=-1], [mult=1], [intrbase=-1], [nobyteacc=0]
	     } : bus_space_generic
device	obio: obio, pcibus
attach	obio at mainbus
file	arch/arm/gemini/gemini_obio.c		obio needs-count

# OBIO files
file	arch/arm/gemini/gemini_space.c		obio
##file	arch/arm/gemini/gemini_a2x_space.c		obio
##file	arch/arm/gemini/gemini_a2x_io.S		obio
file	arch/arm/gemini/gemini_a4x_space.c		obio
file	arch/arm/arm/bus_space_a4x.S		obio
file	arch/arm/gemini/gemini_dma.c

# these bus space methods are not bus-specific ...
#
##file	arch/arm/gemini/gemini_nobyteacc_space.c	obio
##file	arch/arm/gemini/gemini_nobyteacc_io.S		obio

# GEMINI interrupt controller
device	geminiicu: pic, pic_splfuncs
attach	geminiicu at obio with geminiicu
file	arch/arm/gemini/gemini_icu.c		geminiicu needs-flag

# Gemini inter-processor-interrupts
device	geminiipi {}
attach	geminiipi at obio
file	arch/arm/gemini/gemini_ipi.c		geminiipi needs-flag

# Gemini inter-processor-messages
device	geminiipm {}
attach	geminiipm at geminiipi
file	arch/arm/gemini/gemini_ipm.c		geminiipm needs-flag

device	gpn: ifnet, ether, arp
attach	gpn at geminiipm
file	arch/arm/gemini/if_gpn.c		gpn needs-flag

# GEMINI GPIO controllers

# GEMINI Timers
device	geminitmr
file	arch/arm/gemini/gemini_timer.c		geminitmr
defparam opt_gemini.h				GEMINI_TIMER_CLOCK_FREQ

# OBIO/geminitmr
attach 	geminitmr at obio with obiotimer
file	arch/arm/gemini/obio_timer.c		obiotimer

# Gemini Watchdog timer
device	geminiwdt: sysmon_wdog
file	arch/arm/gemini/gemini_wdt.c		geminiwdt needs-flag
defparam opt_gemini.h				GEMINI_WDT_CLOCK_FREQ

attach geminiwdt at obio with obiowdt
file	arch/arm/gemini/obio_wdt.c			obiowdt

# NS16550 compatible serial ports
attach com at obio with gemini_com
file	arch/arm/gemini/gemini_com.c		gemini_com

# GEMINI LPC Bus
define  lpcbus  {[addr = -1]}
device	lpc { [ldn=-1], [addr=-1], [size=0], [intr=-1] }
attach	lpc at lpcbus
file	arch/arm/gemini/gemini_lpc.c		lpc needs-count

# GEMINI LPC Host Controller
device	geminilpchc: lpcbus
attach	geminilpchc at obio with obio_lpchc
file	arch/arm/gemini/obio_lpchc.c		obio_lpchc
file	arch/arm/gemini/gemini_lpchc.c		geminilpchc needs-count

# LPC Bus COM UARTs
attach	com at lpc with lpc_com
file	arch/arm/gemini/lpc_com.c		lpc_com

# GEMINI GPIO controllers
device	geminigpio: gpiobus
attach	geminigpio at obio with geminigpio
file	arch/arm/gemini/gemini_gpio.c		geminigpio

# GEMINI USB controller
attach ehci at obio with ehci_obio
file	arch/arm/gemini/obio_ehci.c		ehci_obio

# GEMINI ATA controller
attach wdc at obio with wdc_obio
file	arch/arm/gemini/obio_wdc.c		wdc_obio

# PCI
device	gemini_pci: pcibus
attach	gemini_pci at obio
file	arch/arm/gemini/gemini_pci.c		pci needs-flag

# GEMINI MAC controller
device	geminigmac { port, intr, phy }: mii, mii_bitbang
attach	geminigmac at obio with geminigmac
file	arch/arm/gemini/gemini_gmac.c		geminigmac needs-flag

device	gmc: ifnet, ether, arp, mii
attach	gmc at geminigmac
file	arch/arm/gemini/if_gmc.c		gmc