GENERIC revision 1.10
1#
2#	$NetBSD: GENERIC,v 1.10 2018/10/30 06:55:07 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-odroidu3.dts
24	exynos4412-odroidx.dts
25	exynos4412-odroidx2.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# System Controller
255syscon*		at fdt? pass 1		# Generic System Controller
256
257# Timer
258gtmr*		at fdt? pass 1		# ARM Generic Timer
259armgtmr0	at gtmr?
260mct*		at fdt? pass 2		# Exynos Multi Core Timer (MCT)
261armgtmr*	at mct?
262sunxitimer*     at fdt?                 # Allwinner async timer
263tegratimer*	at fdt?			# Timers
264
265# Watchdog
266sunxiwdt*	at fdt?			# Allwinner watchdog
267watchdog*	at fdt?			# Broadcom BCM283x watchdog
268
269# Interrupt controller
270gic*		at fdt? pass 1		# ARM GIC
271armgic0		at gic?
272bcmicu*		at fdt? pass 1		# Broadcom BCM283x ICU
273exyointr*	at fdt? pass 1		# Samsung Exynos ICU
274tegralic*	at fdt? pass 1		# NVIDIA Tegra LIC
275sunxiintc*	at fdt? pass 1		# Allwinner INTC
276sunxinmi*	at fdt? pass 2		# Allwinner NMI / R_INTC
277
278# Memory controller
279tegramc*	at fdt?	pass 4		# NVIDIA Tegra MC
280
281# Firmware devices
282bcmmbox*	at fdt?			# Broadcom VideoCore IV mailbox
283vcmbox*		at bcmmbox?
284
285# DMA controller
286bcmdmac*	at fdt?			# Broadcom BCM283x DMA controller
287sun4idma*       at fdt?			# Allwinner DMA controller (sun4i)
288sun6idma*	at fdt?			# Allwinner DMA controller (sun6i)
289tegraapbdma*	at fdt? pass 4		# NVIDIA Tegra APB DMA
290
291# FUSE controller
292tegrafuse*	at fdt? pass 4		# NVIDIA Tegra FUSE
293
294# Power management controller
295tegrapmc*	at fdt? pass 4		# NVIDIA Tegra PMC
296
297# Clock and Reset controller
298bcmcprman*	at fdt? pass 1		# Broadcom BCM283x Clock Manager
299bcmaux*		at fdt? pass 1		# Broadcom BCM283x Aux Periph Clocks
300
301# GPIO controller
302bcmgpio*	at fdt?			# Broadcom BCM283x GPIO
303exyopctl*	at fdt? pass 2		# Samsung Exynos GPIO
304sunxigpio*	at fdt? pass 3		# Allwinner GPIO
305tegragpio*	at fdt? pass 2		# NVIDIA Tegra GPIO
306gpio*		at gpiobus?
307
308# MPIO / Pinmux
309tegrapinmux*	at fdt?			# NVIDIA Tegra MPIO
310
311# PWM timer
312expwm*		at fdt? pass 4		# PWM
313
314# Fan
315pwmfan*		at fdt?			# PWM Fan controls
316
317# XUSB PADCTL
318tegra124xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T124)
319tegra210xpad*	at fdt?			# NVIDIA Tegra XUSB PADCTL (T210)
320tegra210xphy*	at tegra210xpad?
321
322# PCIE
323tegrapcie0	at fdt?			# NVIDIA Tegra PCIE
324pci*		at tegrapcie0
325ppb*		at pci? dev ? function ?
326pci*		at ppb?
327
328# Ethernet
329emac*		at fdt?			# Allwinner Gigabit Ethernet (EMAC)
330smsh*		at fdt?			# SMSC LAN9118
331
332# PCI Ethernet
333re*		at pci? dev ? function ?	# Realtek RTL8111GS
334
335# MII/PHY support
336exphy* 		at mii? phy ?		# 3Com internal PHYs
337gentbi* 	at mii? phy ?		# Generic Ten-Bit 1000BASE-[CLS]X PHYs
338glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
339gphyter* 	at mii? phy ?		# NS83861 Gig-E PHY
340icsphy*		at mii? phy ?		# Integrated Circuit Systems ICS189x
341igphy*		at mii? phy ?		# Intel IGP01E1000
342ihphy*		at mii? phy ?		# Intel 82577 PHYs
343ikphy*		at mii? phy ?		# Intel 82563 PHYs
344inphy*		at mii? phy ?		# Intel 82555 PHYs
345iophy*		at mii? phy ?		# Intel 82553 PHYs
346lxtphy*		at mii? phy ?		# Level One LXT-970 PHYs
347makphy*		at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
348nsphy*		at mii? phy ?		# NS83840 PHYs
349nsphyter*	at mii? phy ? 		# NS83843 PHYs
350pnaphy*		at mii? phy ?		# generic HomePNA PHYs
351qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
352rdcphy*		at mii? phy ?		# RDC R6040 10/100 PHY
353rgephy*		at mii? phy ?		# Realtek 8169S/8110S internal PHYs
354rlphy*		at mii? phy ?		# Realtek 8139/8201L PHYs
355sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
356tlphy*		at mii? phy ?		# ThunderLAN PHYs
357tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
358urlphy*		at mii? phy ?		# Realtek RTL8150L internal PHYs
359ukphy*		at mii? phy ?		# generic unknown PHYs
360
361# Mini-PCIe Wireless
362#options 	ATHHAL_AR5212,ATHHAL_RF2425	# AR5BHB63
363#ath*		at pci? dev ? function ?	# Atheros IEEE 802.11
364#athn*		at pci? dev ? function ?	# Atheros IEEE 802.11
365
366# UART
367com*		at fdt?			# UART
368plcom*		at fdt?			# ARM PL011 UART
369exuart*		at fdt?			# SSCOM UART
370
371# I2C controllers
372bsciic*		at fdt?			# Broadcom BCM283x Serial Control
373exyoi2c*	at fdt?			# Samsung Exynos I2C
374sunxirsb*	at fdt?			# Allwinner RSB
375sunxitwi*	at fdt?			# Allwinner TWI
376tegrai2c*	at fdt? pass 4		# NVIDIA Tegra I2C
377iic*		at i2cbus?
378
379# I2C devices
380titemp*		at iic?
381seeprom*	at iic?
382as3722pmic*	at iic?
383as3722reg*	at as3722pmic?
384max77620pmic*	at iic?
385tcagpio*	at iic?
386
387# SPI
388sun6ispi*       at fdt?
389spi*            at spibus?
390
391# Random number generators
392bcmrng*		at fdt?			# Broadcom BCM283x RNG
393
394# Security ID EFUSE
395sunxisid*       at fdt? pass 4          # SID
396
397# RTC
398#exyortc*	at fdt?			# RTC
399plrtc*		at fdt?			# ARM PrimeCell RTC
400sunxirtc*	at fdt?			# Allwinner RTC
401tegrartc*	at fdt?			# NVIDIA Tegra RTC
402
403# Thermal sensor
404sunxithermal*   at fdt?                 # Thermal sensor controller
405
406# BCM2835 VCHIQ, etc
407vchiq0		at fdt?
408vcaudio0	at vchiq0
409
410# Audio
411a64acodec*	at fdt?			# A64 audio codec (analog part)
412aaci*		at fdt?			# ARM PrimeCell AACI
413ausoc*		at fdt?			# Simple SoC audio card
414hdaudio*	at fdt?			# Intel HDA
415hdafg*		at hdaudiobus?
416options 	HDAUDIOVERBOSE
417options 	HDAUDIO_32BIT_ACCESS
418options 	HDAUDIO_ENABLE_HDMI
419options 	HDAUDIO_ENABLE_DISPLAYPORT
420h3codec*	at fdt?			# H3 audio codec (analog part)
421sun8icodec*	at fdt?			# Audio codec (sun8i/sun50i)
422sunxicodec*	at fdt?			# Allwinner audio codec
423sunxii2s*	at fdt?			# I2S/PCM
424audio*		at audiobus?
425spkr*		at audio?
426
427# SDMMC
428dwcmmc*		at fdt?			# DesignWare SDMMC
429mmcpwrseq*	at fdt?			# Simple MMC power sequence provider
430plmmc*		at fdt?			# ARM PrimeCell MCI
431sdhc*		at fdt?			# SD Host Controller Interface
432sdhost*		at fdt?			# Broadcom BCM283x SD Host Interface
433sunximmc*	at fdt?			# Allwinner SD/MMC
434sdmmc*		at sdmmcbus?
435ld0		at sdmmc0
436ld1		at sdmmc1
437ld2		at sdmmc2
438ld3		at sdmmc3
439ld*		at sdmmc?
440
441# NAND Flash
442sunxinand*      at fdt?                 # NAND flash controller
443nand*           at nandbus?
444flash*          at nand? dynamic 1
445
446
447# SATA
448ahcisata*	at fdt?			# AHCI SATA
449atabus*		at ata?
450atapibus*	at atapi?
451wd*		at atabus? drive ?
452cd*		at atapibus? drive ?
453
454# SPI controllers
455bcmspi*		at fdt?			# Broadcom BCM283x SPI
456spi*		at spibus?
457
458# HDMI CEC
459tegracec0	at fdt?			# NVIDIA Tegra HDMI CEC
460hdmicec*	at hdmicecbus?
461
462# Display
463#tegradrm*	at fdt?			# NVIDIA Tegra Display
464#tegrafb*	at tegrafbbus?
465genfb*		at fdt?			# Simple Framebuffer
466wsdisplay*	at genfb?
467sunxidebe*      at fdt? pass 4  # Display Backend
468genfb*          at sunxidebe?
469sunxitcon*      at fdt? pass 4  # LCD LVDS/RGB controller
470sunxihdmi*      at fdt? pass 4  # HDMI controller
471connector*      at fdt? pass 4
472panel*          at fdt? pass 4
473#sunxidep must be after display pipeline elements but before genfb@fdt
474sunxidep*       at fdt? pass 5  # Display Engine Pipeline
475
476options 	VCONS_DRAW_INTR
477options 	WSEMUL_VT100
478options 	WS_DEFAULT_FG=WSCOL_WHITE
479options 	WS_DEFAULT_BG=WSCOL_BLACK
480options 	WS_KERNEL_FG=WSCOL_GREEN
481options 	WS_KERNEL_BG=WSCOL_BLACK
482options 	WSDISPLAY_COMPAT_PCVT
483options 	WSDISPLAY_COMPAT_SYSCONS
484options 	WSDISPLAY_COMPAT_USL
485options 	WSDISPLAY_COMPAT_RAWKBD
486options 	WSDISPLAY_DEFAULTSCREENS=4
487pseudo-device	wsmux
488pseudo-device	wsfont
489
490# GPU
491#nouveau*	at fdt?			# NVIDIA GPU
492
493# PS/2 keyboard and mouse support
494plkmi*		at fdt?
495pckbd*		at pckbport?
496wskbd*		at pckbd? console ?
497pms*		at pckbport?
498wsmouse*	at pms? mux 0
499
500# Touch Screen controller
501sunxits*        at fdt?                 # Touch Screen controller
502wsmouse*        at sunxits? mux 0
503
504# Thermal throttling controller
505tegrasoctherm*	at fdt?			# NVIDIA Tegra SOC_THERM
506
507# USB
508exusbphy*	at fdt? pass 9		# Samsung Exynos USB2 PHY
509exusbdrdphy*	at fdt? pass 9		# Samsung Exynos USB3 DRD PHY
510sunxiusbphy*	at fdt? pass 9		# Allwinner USB PHY
511tegrausbphy*	at fdt?			# NVIDIA Tegra USB PHY
512dwctwo*		at fdt?			# Designware USB DRD
513ehci*		at fdt?			# EHCI
514#motg*		at fdt?			# Mentor Graphics USB OTG
515ohci*		at fdt?			# OHCI
516ehci*		at fdt?			# EHCI
517xhci*		at fdt?			# XHCI
518usb*		at usbus?
519
520# Virtio devices
521virtio*	at fdt?				# Virtio MMIO device
522# the baloon driver can not work on machines with non-4k pages
523#viomb*	at virtio?			# Virtio memory balloon device
524ld*	at virtio?			# Virtio disk device
525vioif*	at virtio?			# Virtio network device
526viornd* at virtio?			# Virtio entropy device
527vioscsi* at virtio?			# Virtio SCSI device
528
529include "dev/usb/usbdevices.config"
530midi*		at midibus?
531
532cinclude "arch/evbarm/conf/GENERIC.local"
533