GENERIC revision 1.8
1#
2#	$NetBSD: GENERIC,v 1.8 2018/10/18 07:35:15 skrll Exp $
3#
4#	GENERIC ARM (aarch32) kernel
5#
6
7include	"arch/evbarm/conf/std.generic"
8include "arch/evbarm/conf/files.generic"
9include	"arch/evbarm/conf/GENERIC.common"
10
11#
12# FDT files supported by this kernel - add to DTSSUBDIR and DTS as
13# appropriate
14#
15makeoptions	DTSARCH="arm aarch64"
16makeoptions	DTSGNUARCH="arm arm64"
17makeoptions	DTSSUBDIR="allwinner broadcom nvidia rockchip"
18makeoptions	DTS="
19	bcm2836-rpi-2-b.dts
20	bcm2837-rpi-3-b.dts
21	bcm2837-rpi-3-b-plus.dts
22
23	exynos4412-odroidx2.dts
24	exynos4412-odroidx.dts
25	exynos4412-odroidu3.dts
26	exynos5410-odroidxu.dts
27	exynos5410-smdk5410.dts
28	exynos5422-odroidxu3-lite.dts
29	exynos5422-odroidxu3.dts
30	exynos5422-odroidxu4.dts
31
32	sun4i-a10-a1000.dts
33	sun4i-a10-ba10-tvbox.dts
34	sun4i-a10-chuwi-v7-cw0825.dts
35	sun4i-a10-cubieboard.dts
36	sun4i-a10-dserve-dsrv9703c.dts
37	sun4i-a10-gemei-g9.dts
38	sun4i-a10-hackberry.dts
39	sun4i-a10-hyundai-a7hd.dts
40	sun4i-a10-inet1.dts
41	sun4i-a10-inet97fv2.dts
42	sun4i-a10-inet9f-rev03.dts
43	sun4i-a10-itead-iteaduino-plus.dts
44	sun4i-a10-jesurun-q5.dts
45	sun4i-a10-marsboard.dts
46	sun4i-a10-mini-xplus.dts
47	sun4i-a10-mk802.dts
48	sun4i-a10-mk802ii.dts
49	sun4i-a10-olinuxino-lime.dts
50	sun4i-a10-pcduino.dts
51	sun4i-a10-pcduino2.dts
52	sun4i-a10-pov-protab2-ips9.dts
53
54	sun5i-a13-difrnce-dit4350.dts
55	sun5i-a13-empire-electronix-d709.dts
56	sun5i-a13-empire-electronix-m712.dts
57	sun5i-a13-hsg-h702.dts
58	sun5i-a13-inet-98v-rev2.dts
59	sun5i-a13-licheepi-one.dts
60	sun5i-a13-olinuxino-micro.dts
61	sun5i-a13-olinuxino.dts
62	sun5i-a13-q8-tablet.dts
63	sun5i-a13-utoo-p66.dts
64
65	sun5i-gr8-evb.dts
66	sun5i-gr8-chip-pro.dts
67
68	sun5i-r8-chip.dts
69	sun5i-r8-pocketchip.dts
70
71	sun6i-a31-app4-evb1.dts
72	sun6i-a31-colombus.dts
73	sun6i-a31-hummingbird.dts
74	sun6i-a31-i7.dts
75	sun6i-a31-m9.dts
76	sun6i-a31-mele-a1000g-quad.dts
77
78	sun7i-a20-bananapi-m1-plus.dts
79	sun7i-a20-bananapi.dts
80	sun7i-a20-bananapro.dts
81	sun7i-a20-cubieboard2.dts
82	sun7i-a20-cubietruck.dts
83	sun7i-a20-hummingbird.dts
84	sun7i-a20-i12-tvbox.dts
85	sun7i-a20-icnova-swac.dts
86	sun7i-a20-itead-ibox.dts
87	sun7i-a20-lamobo-r1.dts
88	sun7i-a20-m3.dts
89	sun7i-a20-mk808c.dts
90	sun7i-a20-olimex-som-evb.dts
91	sun7i-a20-olimex-som204-evb-emmc.dts
92	sun7i-a20-olimex-som204-evb.dts
93	sun7i-a20-olinuxino-lime.dts
94	sun7i-a20-olinuxino-lime2-emmc.dts
95	sun7i-a20-olinuxino-lime2.dts
96	sun7i-a20-olinuxino-micro-emmc.dts
97	sun7i-a20-olinuxino-micro.dts
98	sun7i-a20-orangepi-mini.dts
99	sun7i-a20-orangepi.dts
100	sun7i-a20-pcduino3-nano.dts
101	sun7i-a20-pcduino3.dts
102	sun7i-a20-wexler-tab7200.dts
103	sun7i-a20-wits-pro-a20-dkt.dts
104
105	sun8i-a83t-allwinner-h8homlet-v2.dts
106	sun8i-a83t-bananapi-m3.dts
107	sun8i-a83t-cubietruck-plus.dts
108	sun8i-a83t-tbs-a711.dts
109
110	sun8i-h2-plus-orangepi-zero.dts
111
112	sun8i-h3-bananapi-m2-plus.dts
113	sun8i-h3-beelink-x2.dts
114	sun8i-h3-nanopi-m1.dts
115	sun8i-h3-nanopi-m1-plus.dts
116	sun8i-h3-nanopi-neo.dts
117	sun8i-h3-nanopi-neo-air.dts
118	sun8i-h3-orangepi-2.dts
119	sun8i-h3-orangepi-lite.dts
120	sun8i-h3-orangepi-one.dts
121	sun8i-h3-orangepi-pc-plus.dts
122	sun8i-h3-orangepi-pc.dts
123	sun8i-h3-orangepi-plus.dts
124	sun8i-h3-orangepi-plus2e.dts
125
126	sun9i-a80-cubieboard4.dts
127	sun9i-a80-optimus.dts
128
129	sun50i-h5-nanopi-neo-plus2.dts
130	sun50i-h5-nanopi-neo2.dts
131	sun50i-h5-orangepi-pc2.dts
132	sun50i-h5-orangepi-prime.dts
133	sun50i-h5-orangepi-zero-plus2.dts
134
135	tegra124-apalis-eval.dts
136	tegra124-jetson-tk1.dts
137	tegra124-nyan-big.dts
138	tegra124-nyan-blaze.dts
139	tegra124-venice2.dts
140
141	vexpress-v2p-ca15-tc1.dts
142"
143
144options 	CPU_CORTEXA7
145options 	CPU_CORTEXA9
146options 	CPU_CORTEXA8
147options 	CPU_CORTEXA15
148
149# Can't add SOC_BCM2835 until interrupt and register issues sorted out
150#options 	SOC_BCM2835
151options 	SOC_BCM2836
152
153options 	SOC_EXYNOS4412
154options 	SOC_EXYNOS5422
155
156options 	SOC_SUN4I_A10
157options 	SOC_SUN5I_A13
158options 	SOC_SUN6I_A31
159options 	SOC_SUN7I_A20
160options 	SOC_SUN8I_A83T
161options 	SOC_SUN8I_H3
162options 	SOC_SUN9I_A80
163options 	SOC_SUN50I_A64
164options 	SOC_SUN50I_H5
165options 	SOC_SUN50I_H6
166
167options 	SOC_TEGRA124
168
169options 	MULTIPROCESSOR
170
171pseudo-device 	openfirm	# /dev/openfirm
172
173options 	DIAGNOSTIC	# internal consistency checks
174options 	DEBUG
175#options 	LOCKDEBUG
176#options 	PMAP_DEBUG	# Enable pmap_debug_level code
177
178#options 	VERBOSE_INIT_ARM # verbose bootstrapping messages
179
180# EARLYCONS is required for early init messages from VERBOSE_INIT_ARM.
181
182# ODROID-U3
183#options 	EARLYCONS=exynos, CONSADDR=0x13810000
184
185# ODROID-XU lite
186#options 	EARLYCONS=exynos, CONSADDR=0x12c20000
187
188#options 	EARLYCONS=bcm2837, CONSADDR=0x3f215040
189#options 	EARLYCONS=rk3328, CONSADDR=0xff130000
190#options 	EARLYCONS=sunxi, CONSADDR=0x01c28000
191
192# TEGRA TK1
193#options 	EARLYCONS=tegra, CONSADDR=0x70006300
194
195#
196#options 	EARLYCONS=vexpress, CONSADDR=0x1c090000
197#options 	EARLYCONS=virt
198
199makeoptions	DEBUG="-g"	# compile full symbol table
200makeoptions	COPY_SYMTAB=1
201
202config		netbsd		root on ? type ?
203
204# Device tree support
205armfdt0		at root
206simplebus*	at fdt? pass 0
207
208# CPUs
209cpus*		at fdt? pass 0
210cpu*		at fdt? pass 0
211
212# CPU frequency scaling
213tegra124cpu*	at cpu?
214cpufreqdt*	at cpu?
215
216# Power State Coordination Interface (PSCI)
217psci*		at fdt?
218
219# Clock and reset controllers
220exy5410clk*	at fdt? pass 3		# Exynos5410 clock controller
221exy5422clk*	at fdt? pass 3		# Exynos5422 clock controller
222sun4ia10ccu*	at fdt? pass 2		# Allwinner A10/A20 CCU
223sun5ia13ccu*	at fdt? pass 2		# Allwinner A13 CCU
224sun6ia31ccu*	at fdt? pass 2		# Allwinner A31 CCU
225sun8ia83tccu*	at fdt? pass 2		# Allwinner A83T CCU
226sun8ih3ccu*	at fdt? pass 2		# Allwinner H3 CCU
227sun8ih3rccu*	at fdt? pass 2		# Allwinner H3 CCU (PRCM)
228sun9ia80ccu*	at fdt? pass 2		# Allwinner A80 CCU
229sun50ia64ccu*	at fdt? pass 2		# Allwinner A64 CCU
230sun50ia64rccu*  at fdt? pass 2          # Allwinner A64 CCU (PRCM)
231sun50ih6ccu*    at fdt? pass 2          # Allwinner H6 CCU
232sun50ih6rccu*   at fdt? pass 2          # Allwinner H6 CCU (PRCM)
233sunxiresets*	at fdt? pass 1		# Allwinner Misc. clock resets
234sunxigates*	at fdt? pass 1		# Allwinner Misc. clock gates
235sunxigmacclk*	at fdt? pass 2		# Allwinner GMAC MII/RGMII clock mux
236sun9immcclk*	at fdt? pass 2		# Allwinner A80 SD/MMC-COMM
237tegra124car*	at fdt? pass 3		# NVIDIA Tegra CAR (T124)
238tegra210car*	at fdt? pass 3		# NVIDIA Tegra CAR (T210)
239
240fclock*		at fdt? pass 1
241ffclock*	at fdt? pass 1
242fregulator*	at fdt? pass 5
243gregulator*	at fdt? pass 4
244gpiokeys*	at fdt?
245wskbd*		at gpiokeys? console ? mux 1
246gpioleds*	at fdt?
247
248# ARM Motherboard Express uATX system registers
249vxsysreg*	at fdt?
250
251# SRAM controller
252sunxisramc*     at fdt? pass 4          # SRAM controller
253
254# Timer
255gtmr*		at fdt? pass 1		# ARM Generic Timer
256armgtmr0	at gtmr?
257mct*		at fdt? pass 2		# Exynos Multi Core Timer (MCT)
258sunxitimer*     at fdt?                 # Allwinner async timer
259tegratimer*	at fdt?			# Timers
260
261# Watchdog
262sunxiwdt*	at fdt?			# Allwinner watchdog
263watchdog*	at fdt?			# Broadcom BCM283x watchdog
264
265# Interrupt controller
266gic*		at fdt? pass 1		# ARM GIC
267armgic0		at gic?
268bcmicu*		at fdt? pass 1		# Broadcom BCM283x ICU
269exyointr*	at fdt? pass 1		# Samsung Exynos ICU
270tegralic*	at fdt? pass 1		# NVIDIA Tegra LIC
271sunxiintc*	at fdt? pass 1		# Allwinner INTC
272sunxinmi*	at fdt? pass 2		# Allwinner NMI / R_INTC
273
274# Memory controller
275tegramc*	at fdt?	pass 4		# NVIDIA Tegra MC
276
277# Firmware devices
278bcmmbox*	at fdt?			# Broadcom VideoCore IV mailbox
279vcmbox*		at bcmmbox?
280
281# DMA controller
282bcmdmac*	at fdt?			# Broadcom BCM283x DMA controller
283sun4idma*       at fdt?			# Allwinner DMA controller (sun4i)
284sun6idma*	at fdt?			# Allwinner DMA controller (sun6i)
285tegraapbdma*	at fdt? pass 4		# NVIDIA Tegra APB DMA
286
287# FUSE controller
288tegrafuse*	at fdt? pass 4		# NVIDIA Tegra FUSE
289
290# Power management controller
291tegrapmc*	at fdt? pass 4		# NVIDIA Tegra PMC
292
293# Clock and Reset controller
294bcmcprman*	at fdt? pass 1		# Broadcom BCM283x Clock Manager
295bcmaux*		at fdt? pass 1		# Broadcom BCM283x Aux Periph Clocks
296
297# GPIO controller
298bcmgpio*	at fdt?			# Broadcom BCM283x GPIO
299exyopctl*	at fdt? pass 2		# Samsung Exynos GPIO
300sunxigpio*	at fdt? pass 3		# Allwinner GPIO
301tegragpio*	at fdt? pass 2		# NVIDIA Tegra GPIO
302gpio*		at gpiobus?
303
304# MPIO / Pinmux
305tegrapinmux*	at fdt?			# NVIDIA Tegra MPIO
306
307# PWM timer
308expwm*		at fdt? pass 4		# PWM
309
310# Fan
311pwmfan*		at fdt?			# PWM Fan controls
312
313# XUSB PADCTL
314tegra124xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T124)
315tegra210xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T210)
316tegra210xphy*	at tegra210xpad?
317
318# PCIE
319# XXXNH not yet
320#tegrapcie0	at fdt?			# NVIDIA Tegra PCIE
321#pci*		at tegrapcie0
322#ppb*		at pci? dev ? function ?
323#pci*		at ppb?
324
325# Ethernet
326emac*		at fdt?			# Allwinner Gigabit Ethernet (EMAC)
327smsh*		at fdt?			# SMSC LAN9118
328
329# PCI Ethernet
330#re*		at pci? dev ? function ?	# Realtek RTL8111GS
331
332# MII/PHY support
333exphy* 		at mii? phy ?		# 3Com internal PHYs
334gentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
335glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
336gphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
337icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
338igphy*		at mii? phy ?		# Intel IGP01E1000
339ihphy*		at mii? phy ?		# Intel 82577 PHYs
340ikphy*		at mii? phy ?		# Intel 82563 PHYs
341inphy*		at mii? phy ?		# Intel 82555 PHYs
342iophy*		at mii? phy ?		# Intel 82553 PHYs
343lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
344makphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
345nsphy*		at mii? phy ?		# NS83840 PHYs
346nsphyter*	at mii? phy ? 		# NS83843 PHYs
347pnaphy*		at mii? phy ?		# generic HomePNA PHYs
348qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
349rdcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
350rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
351rlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
352sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
353tlphy*		at mii? phy ?		# ThunderLAN PHYs
354tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
355urlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
356ukphy*		at mii? phy ?		# generic unknown PHYs
357
358# Mini-PCIe Wireless
359#options 	ATHHAL_AR5212,ATHHAL_RF2425	# AR5BHB63
360#ath*		at pci? dev ? function ?	# Atheros IEEE 802.11
361#athn*		at pci? dev ? function ?	# Atheros IEEE 802.11
362
363# UART
364com*		at fdt?			# UART
365plcom*		at fdt?			# ARM PL011 UART
366exuart*		at fdt?			# SSCOM UART
367
368# I2C controllers
369bsciic*		at fdt?			# Broadcom BCM283x Serial Control
370exyoi2c*	at fdt?			# Samsung Exynos I2C
371sunxirsb*	at fdt?			# Allwinner RSB
372sunxitwi*	at fdt?			# Allwinner TWI
373tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
374iic*		at i2cbus?
375
376# I2C devices
377titemp*		at iic?
378seeprom*	at iic?
379as3722pmic*	at iic?
380as3722reg*	at as3722pmic?
381max77620pmic*	at iic?
382tcagpio*	at iic?
383
384# SPI
385sun6ispi*       at fdt?
386spi*            at spibus?
387
388# Random number generators
389bcmrng*		at fdt?			# Broadcom BCM283x RNG
390
391# Security ID EFUSE
392sunxisid*       at fdt? pass 4          # SID
393
394# RTC
395#exyortc*	at fdt?			# RTC
396plrtc*		at fdt?			# ARM PrimeCell RTC
397sunxirtc*	at fdt?			# Allwinner RTC
398tegrartc*	at fdt?			# NVIDIA Tegra RTC
399
400# Thermal sensor
401sunxithermal*   at fdt?                 # Thermal sensor controller
402
403# BCM2835 VCHIQ, etc
404vchiq0		at fdt?
405vcaudio0	at vchiq0
406
407# Audio
408a64acodec*	at fdt?			# A64 audio codec (analog part)
409aaci*		at fdt?			# ARM PrimeCell AACI
410ausoc*		at fdt?			# Simple SoC audio card
411hdaudio*	at fdt?			# Intel HDA
412hdafg*		at hdaudiobus?
413options 	HDAUDIOVERBOSE
414options 	HDAUDIO_32BIT_ACCESS
415options 	HDAUDIO_ENABLE_HDMI
416options 	HDAUDIO_ENABLE_DISPLAYPORT
417h3codec*	at fdt?			# H3 audio codec (analog part)
418sun8icodec*	at fdt?			# Audio codec (sun8i/sun50i)
419sunxicodec*	at fdt?			# Allwinner audio codec
420sunxii2s*	at fdt?			# I2S/PCM
421audio*		at audiobus?
422spkr*		at audio?
423
424# SDMMC
425dwcmmc*		at fdt?			# DesignWare SDMMC
426mmcpwrseq*	at fdt?			# Simple MMC power sequence provider
427plmmc*		at fdt?			# ARM PrimeCell MCI
428sdhc*		at fdt?			# SD Host Controller Interface
429sdhost*		at fdt?			# Broadcom BCM283x SD Host Interface
430sunximmc*	at fdt?			# Allwinner SD/MMC
431sdmmc*		at sdmmcbus?
432ld0		at sdmmc0
433ld1		at sdmmc1
434ld2		at sdmmc2
435ld3		at sdmmc3
436ld*		at sdmmc?
437
438# NAND Flash
439sunxinand*      at fdt?                 # NAND flash controller
440nand*           at nandbus?
441flash*          at nand? dynamic 1
442
443
444# SATA
445ahcisata*	at fdt?			# AHCI SATA
446atabus*		at ata?
447atapibus*	at atapi?
448wd*		at atabus? drive ?
449cd*		at atapibus? drive ?
450
451# SPI controllers
452bcmspi*		at fdt?			# Broadcom BCM283x SPI
453spi*		at spibus?
454
455# HDMI CEC
456tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
457hdmicec*	at hdmicecbus?
458
459# Display
460#tegradrm*	at fdt?			# NVIDIA Tegra Display
461#tegrafb*	at tegrafbbus?
462genfb*		at fdt?			# Simple Framebuffer
463wsdisplay*	at genfb?
464sunxidebe*      at fdt? pass 4  # Display Backend
465genfb*          at sunxidebe?
466sunxitcon*      at fdt? pass 4  # LCD LVDS/RGB controller
467sunxihdmi*      at fdt? pass 4  # HDMI controller
468connector*      at fdt? pass 4
469panel*          at fdt? pass 4
470#sunxidep must be after display pipeline elements but before genfb@fdt
471sunxidep*       at fdt? pass 5  # Display Engine Pipeline
472
473options 	VCONS_DRAW_INTR
474options 	WSEMUL_VT100
475options 	WS_DEFAULT_FG=WSCOL_WHITE
476options 	WS_DEFAULT_BG=WSCOL_BLACK
477options 	WS_KERNEL_FG=WSCOL_GREEN
478options 	WS_KERNEL_BG=WSCOL_BLACK
479options 	WSDISPLAY_COMPAT_PCVT
480options 	WSDISPLAY_COMPAT_SYSCONS
481options 	WSDISPLAY_COMPAT_USL
482options 	WSDISPLAY_COMPAT_RAWKBD
483options 	WSDISPLAY_DEFAULTSCREENS=4
484pseudo-device	wsmux
485pseudo-device	wsfont
486
487# GPU
488#nouveau*	at fdt?			# NVIDIA GPU
489
490# PS/2 keyboard and mouse support
491plkmi*		at fdt?
492pckbd*		at pckbport?
493wskbd*		at pckbd? console ?
494pms*		at pckbport?
495wsmouse*	at pms? mux 0
496
497# Touch Screen controller
498sunxits*        at fdt?                 # Touch Screen controller
499wsmouse*        at sunxits? mux 0
500
501# Thermal throttling controller
502tegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
503
504# USB
505exusbphy*	at fdt? pass 9		# Samsung Exynos USB2 PHY
506exusbdrdphy*	at fdt? pass 9		# Samsung Exynos USB3 DRD PHY
507sunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
508tegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
509dwctwo*		at fdt?			# Designware USB DRD
510ehci*		at fdt?			# EHCI
511#motg*		at fdt?			# Mentor Graphics USB OTG
512ohci*		at fdt?			# OHCI
513xhci*		at fdt?			# XHCI
514usb*		at usbus?
515
516# Virtio devices
517virtio*	at fdt?				# Virtio MMIO device
518# the baloon driver can not work on machines with non-4k pages
519#viomb*	at virtio?			# Virtio memory balloon device
520ld*	at virtio?			# Virtio disk device
521vioif*	at virtio?			# Virtio network device
522viornd* at virtio?			# Virtio entropy device
523vioscsi* at virtio?			# Virtio SCSI device
524
525
526include "dev/usb/usbdevices.config"
527midi*		at midibus?
528
529cinclude "arch/evbarm/conf/GENERIC.local"
530