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