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