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