xref: /netbsd-src/sys/arch/evbarm/conf/RPI (revision 33881f779a77dce6440bdc44610d94de75bebefe)
1#
2#	$NetBSD: RPI,v 1.89 2020/01/26 06:50:18 mlelstv Exp $
3#
4#	RPi -- Raspberry Pi
5#
6
7include	"arch/evbarm/conf/std.rpi"
8include "arch/evbarm/conf/GENERIC.common"
9
10makeoptions DTSGNUARCH="arm arm64"
11makeoptions DTSSUBDIR="broadcom"
12
13makeoptions	DTS="
14	bcm2835-rpi-a.dts
15	bcm2835-rpi-a-plus.dts
16	bcm2835-rpi-b.dts
17	bcm2835-rpi-b-plus.dts
18	bcm2835-rpi-b-rev2.dts
19	bcm2835-rpi-cm1-io1.dts
20	bcm2835-rpi-zero.dts
21	bcm2835-rpi-zero-w.dts
22"
23
24options 	CPU_ARM1176
25options 	SOC_BCM2835
26options 	TPIDRPRW_IS_CURLWP
27options 	ARM11_COMPAT_MMU
28options 	__HAVE_MM_MD_CACHE_ALIASING
29makeoptions 	CPUFLAGS="-march=armv6z -mtune=arm1176jzf-s -mfpu=vfp"
30
31# Architecture options
32
33# Development and Debugging options
34#options 	KGDB,KGDB_PLCOMUNIT=0,KGDB_DEVRATE=115200,KGDB_CONMODE=0xB00
35#options 	VERBOSE_INIT_ARM
36#options 	EARLYCONS=bcm2835,CONSADDR=0x20201000
37makeoptions	DEBUG="-g"	# compile full symbol table
38makeoptions	COPY_SYMTAB=1
39options 	PLCONSOLE
40#options 	PLCONSOLE,PLCOMCNUNIT=0,PLCONSPEED=115200,PLCONMODE=0xB00
41
42## USB Debugging options
43#options USB_DEBUG
44#options DWC2_DEBUG
45#options UHUB_DEBUG
46
47
48# Valid options for BOOT_ARGS:
49#  single		Boot to single user only
50#  kdb			Give control to kernel debugger
51#  ask			Ask for file name to reboot from
52#  pmapdebug=<n>	If PMAP_DEBUG, set pmap_debug_level to <n>
53#  memorydisk=<n>	Set memorydisk size to <n> KB
54#  quiet		Show aprint_naive output
55#  verbose		Show aprint_normal and aprint_verbose output
56#options		BOOT_ARGS="\"\""
57
58config		netbsd		root on ? type ?
59
60# Device tree support
61armfdt0		at root
62simplebus*	at fdt? pass 0
63
64# The CPU(s)
65cpus*		at fdt? pass 0
66cpu*		at fdt? pass 0
67
68fclock*		at fdt? pass 0
69
70# Interrupt Controller
71bcmicu*		at fdt? pass 1
72
73# System timer
74bcmtmr0		at fdt? pass 1
75
76# Clock manager
77bcmcprman0 	at fdt? pass 1
78
79# AUX
80bcmaux0		at fdt? pass 2
81
82# pulse width modulator manager
83#bcmpwm0 	at fdt?
84
85fregulator*	at fdt?
86gpiokeys*	at fdt?
87
88# GPIO LEDs
89gpioleds*	at fdt?
90
91# VC Mailbox
92bcmmbox*	at fdt?
93vcmbox* 	at bcmmbox?
94
95# DMA Controller
96bcmdmac0	at fdt?
97
98# VCHIQ
99vchiq0		at fdt?
100
101# AUDS
102vcaudio0	at vchiq0
103audio*		at audiobus?
104
105spkr*		at audio?		# PC speaker (synthesized)
106
107# PL011 uart
108plcom*		at fdt?
109
110# AUX UART
111com0		at fdt?
112
113# Framebuffer console
114genfb0		at fdt?
115wsdisplay*	at genfb?
116options		VCONS_DRAW_INTR
117#options 	RPI_HWCURSOR
118
119# Power management, Reset controller and Watchdog registers
120bcmpmwdog*	at fdt?
121
122# Random number generator
123bcmrng0 	at fdt?
124
125# GPIO
126bcmgpio*	at fdt?
127
128# Arasan SD/MMC Interface
129sdhc*		at fdt?
130sdmmc*		at sdhc?
131
132# SD host controller
133bcmsdhost* 	at fdt?
134sdmmc* 		at bcmsdhost?
135
136ld*     at sdmmc?
137bwfm*   at      sdmmc?
138
139# On-board USB
140dwctwo* 	at fdt?
141usb* 		at dwctwo?
142
143# USB device drivers
144include "dev/usb/usbdevices.config"
145
146midi*		at midibus?
147
148# MII/PHY support
149exphy* 		at mii? phy ?		# 3Com internal PHYs
150gentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
151glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
152gphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
153icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
154igphy*		at mii? phy ?		# Intel IGP01E1000
155ihphy*		at mii? phy ?		# Intel 82577 PHYs
156ikphy*		at mii? phy ?		# Intel 82563 PHYs
157inphy*		at mii? phy ?		# Intel 82555 PHYs
158iophy*		at mii? phy ?		# Intel 82553 PHYs
159lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
160makphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
161nsphy*		at mii? phy ?		# NS83840 PHYs
162nsphyter*	at mii? phy ? 		# NS83843 PHYs
163pnaphy*		at mii? phy ?		# generic HomePNA PHYs
164qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
165rdcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
166rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
167rlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
168sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
169tlphy*		at mii? phy ?		# ThunderLAN PHYs
170tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
171urlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
172ukphy*		at mii? phy ?		# generic unknown PHYs
173
174# Broadcom Serial Control (I2C)
175bsciic* at fdt?
176iic* at i2cbus?
177
178# 'DS3231 Raspberry Pi RTC Board Real Time Clock Module for Arduino'
179# sold by linksprite.com
180#dsrtc* at iic1 addr 0x68 flags 3231
181
182# MCP7940 based PiFace Real Time Clock
183#dsrtc* at iic1 addr 0x6f flags 7940
184
185# SPI controller
186bcmspi* at fdt?
187spi* at spibus?
188
189# MCP3x0x ADC
190# flags selects the actual chip, refer to mcp3kadc(4)
191#mcp3kadc0 at spi? slave 0 flags 0
192
193# PIFace or other boards using that chip (needs gpio)
194#mcp23s17gpio0 at spi? slave 0 flags 0
195#mcp23s17gpio1 at spi? slave 0 flags 1
196#mcp23s17gpio2 at spi? slave 0 flags 2
197#mcp23s17gpio3 at spi? slave 0 flags 3
198
199# gpio support (e. g. mcp23s17gpio, bcmgpio)
200gpio*		at gpiobus?
201
202# various options for wscons - we try to look as much like a standard
203# sun console as possible
204options 	WSEMUL_VT100		# sun terminal emulation
205options 	WS_DEFAULT_FG=WSCOL_WHITE
206options 	WS_DEFAULT_BG=WSCOL_BLACK
207options 	WS_KERNEL_FG=WSCOL_GREEN
208options 	WS_KERNEL_BG=WSCOL_BLACK
209options 	WSDISPLAY_COMPAT_PCVT		# emulate some ioctls
210options 	WSDISPLAY_COMPAT_SYSCONS	# emulate some more ioctls
211options 	WSDISPLAY_COMPAT_USL		# wsconscfg VT handling
212options 	WSDISPLAY_COMPAT_RAWKBD		# can get raw scancodes
213options 	WSDISPLAY_DEFAULTSCREENS=4
214
215#options 	FONT_QVSS8x15
216#options 	FONT_GALLANT12x22	# the console font
217
218# Pseudo-Devices
219
220# network pseudo-devices
221#pseudo-device	carp			# Common Address Redundancy Protocol
222#pseudo-device	npf			# NPF packet filter
223#pseudo-device	kttcp			# network loopback
224#pseudo-device	sl			# Serial Line IP
225#pseudo-device	irframetty		# IrDA frame line discipline
226#pseudo-device	faith			# IPv[46] TCP relay translation i/f
227#pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
228#pseudo-device	agr			# IEEE 802.3ad link aggregation
229
230# miscellaneous pseudo-devices
231pseudo-device	openfirm
232
233# wscons pseudo-devices
234pseudo-device	wsmux			# mouse & keyboard multiplexor
235pseudo-device	wsfont
236
237# userland interface to drivers, including autoconf and properties retrieval
238
239# local configuration
240cinclude "arch/evbarm/conf/RPI.local"
241
242# Bluetooth devices
243include "dev/bluetooth/bluetoothdevices.config"
244
245