GENERIC revision 1.9
1#
2#	$NetBSD: GENERIC,v 1.9 2018/10/18 09:01:53 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
319tegrapcie0	at fdt?			# NVIDIA Tegra PCIE
320pci*		at tegrapcie0
321ppb*		at pci? dev ? function ?
322pci*		at ppb?
323
324# Ethernet
325emac*		at fdt?			# Allwinner Gigabit Ethernet (EMAC)
326smsh*		at fdt?			# SMSC LAN9118
327
328# PCI Ethernet
329re*		at pci? dev ? function ?	# Realtek RTL8111GS
330
331# MII/PHY support
332exphy* 		at mii? phy ?		# 3Com internal PHYs
333gentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
334glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
335gphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
336icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
337igphy*		at mii? phy ?		# Intel IGP01E1000
338ihphy*		at mii? phy ?		# Intel 82577 PHYs
339ikphy*		at mii? phy ?		# Intel 82563 PHYs
340inphy*		at mii? phy ?		# Intel 82555 PHYs
341iophy*		at mii? phy ?		# Intel 82553 PHYs
342lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
343makphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
344nsphy*		at mii? phy ?		# NS83840 PHYs
345nsphyter*	at mii? phy ? 		# NS83843 PHYs
346pnaphy*		at mii? phy ?		# generic HomePNA PHYs
347qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
348rdcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
349rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
350rlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
351sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
352tlphy*		at mii? phy ?		# ThunderLAN PHYs
353tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
354urlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
355ukphy*		at mii? phy ?		# generic unknown PHYs
356
357# Mini-PCIe Wireless
358#options 	ATHHAL_AR5212,ATHHAL_RF2425	# AR5BHB63
359#ath*		at pci? dev ? function ?	# Atheros IEEE 802.11
360#athn*		at pci? dev ? function ?	# Atheros IEEE 802.11
361
362# UART
363com*		at fdt?			# UART
364plcom*		at fdt?			# ARM PL011 UART
365exuart*		at fdt?			# SSCOM UART
366
367# I2C controllers
368bsciic*		at fdt?			# Broadcom BCM283x Serial Control
369exyoi2c*	at fdt?			# Samsung Exynos I2C
370sunxirsb*	at fdt?			# Allwinner RSB
371sunxitwi*	at fdt?			# Allwinner TWI
372tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
373iic*		at i2cbus?
374
375# I2C devices
376titemp*		at iic?
377seeprom*	at iic?
378as3722pmic*	at iic?
379as3722reg*	at as3722pmic?
380max77620pmic*	at iic?
381tcagpio*	at iic?
382
383# SPI
384sun6ispi*       at fdt?
385spi*            at spibus?
386
387# Random number generators
388bcmrng*		at fdt?			# Broadcom BCM283x RNG
389
390# Security ID EFUSE
391sunxisid*       at fdt? pass 4          # SID
392
393# RTC
394#exyortc*	at fdt?			# RTC
395plrtc*		at fdt?			# ARM PrimeCell RTC
396sunxirtc*	at fdt?			# Allwinner RTC
397tegrartc*	at fdt?			# NVIDIA Tegra RTC
398
399# Thermal sensor
400sunxithermal*   at fdt?                 # Thermal sensor controller
401
402# BCM2835 VCHIQ, etc
403vchiq0		at fdt?
404vcaudio0	at vchiq0
405
406# Audio
407a64acodec*	at fdt?			# A64 audio codec (analog part)
408aaci*		at fdt?			# ARM PrimeCell AACI
409ausoc*		at fdt?			# Simple SoC audio card
410hdaudio*	at fdt?			# Intel HDA
411hdafg*		at hdaudiobus?
412options 	HDAUDIOVERBOSE
413options 	HDAUDIO_32BIT_ACCESS
414options 	HDAUDIO_ENABLE_HDMI
415options 	HDAUDIO_ENABLE_DISPLAYPORT
416h3codec*	at fdt?			# H3 audio codec (analog part)
417sun8icodec*	at fdt?			# Audio codec (sun8i/sun50i)
418sunxicodec*	at fdt?			# Allwinner audio codec
419sunxii2s*	at fdt?			# I2S/PCM
420audio*		at audiobus?
421spkr*		at audio?
422
423# SDMMC
424dwcmmc*		at fdt?			# DesignWare SDMMC
425mmcpwrseq*	at fdt?			# Simple MMC power sequence provider
426plmmc*		at fdt?			# ARM PrimeCell MCI
427sdhc*		at fdt?			# SD Host Controller Interface
428sdhost*		at fdt?			# Broadcom BCM283x SD Host Interface
429sunximmc*	at fdt?			# Allwinner SD/MMC
430sdmmc*		at sdmmcbus?
431ld0		at sdmmc0
432ld1		at sdmmc1
433ld2		at sdmmc2
434ld3		at sdmmc3
435ld*		at sdmmc?
436
437# NAND Flash
438sunxinand*      at fdt?                 # NAND flash controller
439nand*           at nandbus?
440flash*          at nand? dynamic 1
441
442
443# SATA
444ahcisata*	at fdt?			# AHCI SATA
445atabus*		at ata?
446atapibus*	at atapi?
447wd*		at atabus? drive ?
448cd*		at atapibus? drive ?
449
450# SPI controllers
451bcmspi*		at fdt?			# Broadcom BCM283x SPI
452spi*		at spibus?
453
454# HDMI CEC
455tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
456hdmicec*	at hdmicecbus?
457
458# Display
459#tegradrm*	at fdt?			# NVIDIA Tegra Display
460#tegrafb*	at tegrafbbus?
461genfb*		at fdt?			# Simple Framebuffer
462wsdisplay*	at genfb?
463sunxidebe*      at fdt? pass 4  # Display Backend
464genfb*          at sunxidebe?
465sunxitcon*      at fdt? pass 4  # LCD LVDS/RGB controller
466sunxihdmi*      at fdt? pass 4  # HDMI controller
467connector*      at fdt? pass 4
468panel*          at fdt? pass 4
469#sunxidep must be after display pipeline elements but before genfb@fdt
470sunxidep*       at fdt? pass 5  # Display Engine Pipeline
471
472options 	VCONS_DRAW_INTR
473options 	WSEMUL_VT100
474options 	WS_DEFAULT_FG=WSCOL_WHITE
475options 	WS_DEFAULT_BG=WSCOL_BLACK
476options 	WS_KERNEL_FG=WSCOL_GREEN
477options 	WS_KERNEL_BG=WSCOL_BLACK
478options 	WSDISPLAY_COMPAT_PCVT
479options 	WSDISPLAY_COMPAT_SYSCONS
480options 	WSDISPLAY_COMPAT_USL
481options 	WSDISPLAY_COMPAT_RAWKBD
482options 	WSDISPLAY_DEFAULTSCREENS=4
483pseudo-device	wsmux
484pseudo-device	wsfont
485
486# GPU
487#nouveau*	at fdt?			# NVIDIA GPU
488
489# PS/2 keyboard and mouse support
490plkmi*		at fdt?
491pckbd*		at pckbport?
492wskbd*		at pckbd? console ?
493pms*		at pckbport?
494wsmouse*	at pms? mux 0
495
496# Touch Screen controller
497sunxits*        at fdt?                 # Touch Screen controller
498wsmouse*        at sunxits? mux 0
499
500# Thermal throttling controller
501tegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
502
503# USB
504exusbphy*	at fdt? pass 9		# Samsung Exynos USB2 PHY
505exusbdrdphy*	at fdt? pass 9		# Samsung Exynos USB3 DRD PHY
506sunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
507tegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
508dwctwo*		at fdt?			# Designware USB DRD
509ehci*		at fdt?			# EHCI
510#motg*		at fdt?			# Mentor Graphics USB OTG
511ohci*		at fdt?			# OHCI
512xhci*		at fdt?			# XHCI
513usb*		at usbus?
514
515# Virtio devices
516virtio*	at fdt?				# Virtio MMIO device
517# the baloon driver can not work on machines with non-4k pages
518#viomb*	at virtio?			# Virtio memory balloon device
519ld*	at virtio?			# Virtio disk device
520vioif*	at virtio?			# Virtio network device
521viornd* at virtio?			# Virtio entropy device
522vioscsi* at virtio?			# Virtio SCSI device
523
524
525include "dev/usb/usbdevices.config"
526midi*		at midibus?
527
528cinclude "arch/evbarm/conf/GENERIC.local"
529