GENERIC revision 1.77 1 #
2 # $NetBSD: GENERIC,v 1.77 2020/05/18 21:19:35 jmcneill Exp $
3 #
4 # GENERIC ARM (aarch32) kernel
5 #
6
7 include "arch/evbarm/conf/std.generic"
8 include "arch/evbarm/conf/files.generic"
9 include "arch/evbarm/conf/GENERIC.common"
10
11 options CPU_CORTEXA5
12 options CPU_CORTEXA7
13 options CPU_CORTEXA8
14 options CPU_CORTEXA9
15 options CPU_CORTEXA15
16 options CPU_CORTEXA17
17 options CPU_CORTEXA53
18
19 options SOC_AM33XX
20 options SOC_BCM2836
21 options SOC_EXYNOS5422
22 options SOC_MESON8B
23 options SOC_OMAP3
24 options SOC_SUN4I_A10
25 options SOC_SUN5I_A13
26 options SOC_SUN6I_A31
27 options SOC_SUN7I_A20
28 options SOC_SUN8I_A83T
29 options SOC_SUN8I_H3
30 options SOC_SUN9I_A80
31 options SOC_TEGRA124
32 options SOC_VIRT
33 options SOC_ZYNQ7000
34
35 options MULTIPROCESSOR
36
37 pseudo-device openfirm # /dev/openfirm
38
39 #options DIAGNOSTIC # internal consistency checks
40 #options DEBUG
41 #options LOCKDEBUG
42 #options UVMHIST # kernhist for uvm/pmap subsystems
43
44 options MSGBUFSIZE=32768
45
46 #options VERBOSE_INIT_ARM # verbose bootstrapping messages
47
48 # EARLYCONS is required for early init messages from VERBOSE_INIT_ARM.
49
50 #options EARLYCONS=am33xx, CONSADDR=0x44e09000
51 #options EARLYCONS=omap3, CONSADDR=0x49020000
52
53 # ODROID-C1
54 #options EARLYCONS=meson, CONSADDR=0xc81004c0
55
56 # ODROID-U3
57 #options EARLYCONS=exynos, CONSADDR=0x13810000
58
59 # ODROID-XU lite
60 #options EARLYCONS=exynos, CONSADDR=0x12c20000
61
62 # RaspberryPIs
63 #options EARLYCONS=bcm2835, CONSADDR=0x20201000
64 #options EARLYCONS=bcm2836, CONSADDR=0x3f201000
65 #options EARLYCONS=bcm2837, CONSADDR=0x3f215040
66
67 #options EARLYCONS=cycv, CONSADDR=0xffc02000
68 #options EARLYCONS=rk3328, CONSADDR=0xff130000
69 #options EARLYCONS=sunxi, CONSADDR=0x01c28000
70
71 # TEGRA TK1
72 #options EARLYCONS=tegra, CONSADDR=0x70006300
73
74 #options EARLYCONS=vexpress, CONSADDR=0x1c090000
75 #options EARLYCONS=virt, CONSADDR=0x09000000
76
77 #options EARLYCONS=zynq, CONSADDR=0xe0001000
78
79 makeoptions DEBUG="-g" # compile full symbol table
80 makeoptions COPY_SYMTAB=1
81
82 config netbsd root on ? type ?
83
84 # Device tree support
85 armfdt0 at root
86 simplebus* at fdt? pass 0
87
88 # CPUs
89 cpus* at fdt? pass 0
90 cpu* at fdt? pass 0
91
92 # CPU frequency scaling
93 tegra124cpu* at cpu?
94 cpufreqdt* at cpu?
95
96 # Power State Coordination Interface (PSCI)
97 psci* at fdt?
98
99 # Clock and reset controllers
100 am3prcm* at fdt? pass 1 # TI AM335x PRCM
101 cycvclkmgr* at fdt? pass 1 # Cyclone V clock manager
102 cycvrstmgr* at fdt? pass 0 # Cyclone V reset manager
103 exy5410clk* at fdt? pass 3 # Exynos5410 clock controller
104 exy5422clk* at fdt? pass 3 # Exynos5422 clock controller
105 meson8bclkc* at fdt? pass 2 # Amlogic Meson8b clock controller
106 mesonresets* at fdt? pass 2 # Amlogic Meson misc. clock resets
107 omap3cm* at fdt? pass 1 # TI OMAP3 CM
108 omap3prm* at fdt? pass 1 # TI OMAP3 PRM
109 sun4ia10ccu* at fdt? pass 2 # Allwinner A10/A20 CCU
110 sun5ia13ccu* at fdt? pass 2 # Allwinner A13 CCU
111 sun6ia31ccu* at fdt? pass 2 # Allwinner A31 CCU
112 sun8ia83tccu* at fdt? pass 2 # Allwinner A83T CCU
113 sun8ih3ccu* at fdt? pass 2 # Allwinner H3 CCU
114 sun8ih3rccu* at fdt? pass 2 # Allwinner H3 CCU (PRCM)
115 sun9ia80ccu* at fdt? pass 2 # Allwinner A80 CCU
116 sunxiresets* at fdt? pass 1 # Allwinner Misc. clock resets
117 sunxigates* at fdt? pass 1 # Allwinner Misc. clock gates
118 sunxigmacclk* at fdt? pass 2 # Allwinner GMAC MII/RGMII clock mux
119 sun8iapbclk* at fdt? pass 2 # Allwinner A23 APB0
120 sun9icpusclk* at fdt? pass 2 # Allwinner A80 CPUS
121 sun9immcclk* at fdt? pass 2 # Allwinner A80 SD/MMC-COMM
122 sun9iusbclk* at fdt? pass 2 # Allwinner A80 USB HCI
123 tegra124car* at fdt? pass 3 # NVIDIA Tegra CAR (T124)
124 tegra210car* at fdt? pass 3 # NVIDIA Tegra CAR (T210)
125 tidivclk* at fdt? pass 1 # TI divider clock
126 tidpllclk* at fdt? pass 2 # TI DPLL clock
127 timuxclk* at fdt? pass 1 # TI mux clock
128
129 fclock* at fdt? pass 1
130 ffclock* at fdt? pass 1
131 fregulator* at fdt? pass 5
132 gregulator* at fdt? pass 4
133 gpiokeys* at fdt?
134 wskbd* at gpiokeys? console ? mux 1
135 gpioleds* at fdt?
136
137 # ARM Motherboard Express uATX system registers
138 vxsysreg* at fdt?
139
140 # SRAM controller
141 sunxisramc* at fdt? pass 4 # SRAM controller
142
143 # System Controller
144 syscon* at fdt? pass 1 # Generic System Controller
145 tisysc* at fdt? pass 2 # TI sysc interconnect
146 #zynqslcr* at fdt? pass 1 # Zynq 7000 system Controller
147
148 # Timer
149 a9ptmr* at fdt? pass 2 # ARM Cortex A5/A9 Private Timer
150 arma9ptmr* at a9ptmr?
151 a9tmr* at fdt? pass 2 # ARM Cortex A5/A9 Timer
152 arma9tmr* at a9tmr?
153 gtmr* at fdt? pass 1 # ARM Generic Timer
154 armgtmr0 at gtmr?
155 mct* at fdt? pass 2 # Exynos Multi Core Timer (MCT)
156 armgtmr* at mct?
157 omaptimer* at fdt? # TI OMAP Timer
158 meson6timer* at fdt? # Amlogic Timer
159 sunxitimer* at fdt? # Allwinner async timer
160 sunxihstimer* at fdt? # Allwinner High-Speed timer
161 tegratimer* at fdt? # Timers
162
163 # Watchdog
164 bcmpmwdog* at fdt? # Broadcom BCM283x watchdog
165 dwcwdt* at fdt? # DesignWare watchdog
166 mesonwdt* at fdt? # Amlogic Meson watchdog
167 sunxiwdt* at fdt? # Allwinner watchdog
168 tiwdt* at fdt? # TI OMAP watchdog
169
170 # Interrupt controller
171 gic* at fdt? pass 1 # ARM GIC
172 armgic0 at gic?
173 bcmicu* at fdt? pass 1 # Broadcom BCM283x ICU
174 exyointr* at fdt? pass 1 # Samsung Exynos ICU
175 omapintc* at fdt? pass 2 # TI OMAP INTC
176 tegralic* at fdt? pass 1 # NVIDIA Tegra LIC
177 sunxiintc* at fdt? pass 1 # Allwinner INTC
178 sunxinmi* at fdt? pass 2 # Allwinner NMI / R_INTC
179
180 # Level 2 Cache Controller
181 l2cc* at fdt? pass 2 # ARM Cortex A9 L2 Cache Controller
182 arml2cc* at l2cc?
183
184 # Memory controller
185 tegramc* at fdt? pass 4 # NVIDIA Tegra MC
186 tigpmc* at fdt? pass 4 # TI OMAP2 GPMC
187
188 # Firmware devices
189 bcmmbox* at fdt? # Broadcom VideoCore IV mailbox
190 qemufwcfg* at fdt? # QEMU Firmware Configuration device
191 vcmbox* at bcmmbox?
192
193 # DMA controller
194 bcmdmac* at fdt? # Broadcom BCM283x DMA controller
195 sun4idma* at fdt? pass 4 # Allwinner DMA controller (sun4i)
196 sun6idma* at fdt? pass 4 # Allwinner DMA controller (sun6i)
197 tegraapbdma* at fdt? pass 4 # NVIDIA Tegra APB DMA
198 tiedma* at fdt? pass 4 # TI EDMA3 (TPCC)
199 titptc* at fdt? pass 3 # TI EDMA3 (TPTC)
200
201 # FUSE controller
202 tegrafuse* at fdt? pass 4 # NVIDIA Tegra FUSE
203
204 # Power management controller
205 tegrapmc* at fdt? pass 4 # NVIDIA Tegra PMC
206
207 # Performance monitors
208 armpmu* at fdt?
209 pseudo-device tprof
210
211 # Clock and Reset controller
212 bcmcprman* at fdt? pass 1 # Broadcom BCM283x Clock Manager
213 bcmaux* at fdt? pass 1 # Broadcom BCM283x Aux Periph Clocks
214
215 # GPIO controller
216 bcmgpio* at fdt? # Broadcom BCM283x GPIO
217 exyopctl* at fdt? pass 2 # Samsung Exynos GPIO
218 mesonpinctrl* at fdt? pass 2 # Amlogic Meson GPIO
219 plgpio* at fdt? # ARM PrimeCell GPIO
220 sunxigpio* at fdt? pass 3 # Allwinner GPIO
221 tegragpio* at fdt? pass 2 # NVIDIA Tegra GPIO
222 tigpio* at fdt? pass 2 # TI GPIO
223 gpio* at gpiobus?
224
225 # MPIO / Pinmux
226 pinctrl* at fdt? pass 2 # Generic pinctrl driver
227 tegrapinmux* at fdt? # NVIDIA Tegra MPIO
228
229 # PWM controller
230 expwm* at fdt? pass 4 # PWM
231 sunxipwm* at fdt? pass 3 # Allwinner PWM
232
233 # Backlight
234 pwmbacklight* at fdt? # PWM Backlight controls
235
236 # Fan
237 pwmfan* at fdt? # PWM Fan controls
238
239 # XUSB PADCTL
240 tegra124xpad* at fdt? # NVIDIA Tegra XUSB PADCTL (T124)
241 tegra210xpad* at fdt? # NVIDIA Tegra XUSB PADCTL (T210)
242 tegra210xphy* at tegra210xpad?
243
244 # PCIE
245 pcihost* at fdt? # Generic PCI host controller
246 tegrapcie0 at fdt? # NVIDIA Tegra PCIE
247 pci* at pcibus?
248 ppb* at pci? dev ? function ?
249 pci* at ppb?
250
251 # Ethernet
252 awge* at fdt? # Allwinner Gigabit Ethernet (GMAC)
253 cemac* at fdt? # Cadence EMAC/GEM ethernet controller
254 cpsw* at fdt? # TI CPSW 3-port Ethernet Switch
255 emac* at fdt? # Allwinner Fast/Gigabit Ethernet (EMAC)
256 smsh* at fdt? # SMSC LAN9118
257
258 # PCI Ethernet
259 re* at pci? dev ? function ? # Realtek RTL8111GS
260
261 # MII/PHY support
262 exphy* at mii? phy ? # 3Com internal PHYs
263 gentbi* at mii? phy ? # Generic Ten-Bit 1000BASE-[CLS]X PHYs
264 glxtphy* at mii? phy ? # Level One LXT-1000 PHYs
265 gphyter* at mii? phy ? # NS83861 Gig-E PHY
266 icsphy* at mii? phy ? # Integrated Circuit Systems ICS189x
267 igphy* at mii? phy ? # Intel IGP01E1000
268 ihphy* at mii? phy ? # Intel 82577 PHYs
269 ikphy* at mii? phy ? # Intel 82563 PHYs
270 inphy* at mii? phy ? # Intel 82555 PHYs
271 iophy* at mii? phy ? # Intel 82553 PHYs
272 lxtphy* at mii? phy ? # Level One LXT-970 PHYs
273 makphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs
274 nsphy* at mii? phy ? # NS83840 PHYs
275 nsphyter* at mii? phy ? # NS83843 PHYs
276 pnaphy* at mii? phy ? # generic HomePNA PHYs
277 qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs
278 rdcphy* at mii? phy ? # RDC R6040 10/100 PHY
279 rgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs
280 rlphy* at mii? phy ? # Realtek 8139/8201L PHYs
281 sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs
282 tlphy* at mii? phy ? # ThunderLAN PHYs
283 tqphy* at mii? phy ? # TDK Semiconductor PHYs
284 urlphy* at mii? phy ? # Realtek RTL8150L internal PHYs
285 ukphy* at mii? phy ? # generic unknown PHYs
286
287 # Mini-PCIe Wireless
288 #options ATHHAL_AR5212,ATHHAL_RF2425 # AR5BHB63
289 #ath* at pci? dev ? function ? # Atheros IEEE 802.11
290 #athn* at pci? dev ? function ? # Atheros IEEE 802.11
291
292 # UART
293 com* at fdt? pass 4 # UART
294 exuart* at fdt? pass 4 # SSCOM UART
295 plcom* at fdt? pass 4 # ARM PL011 UART
296 mesonuart* at fdt? pass 4 # Amlogic Meson UART
297 zynquart* at fdt? pass 4 # Cadence UART
298
299 # I2C controllers
300 options I2C_MAX_ADDR=0xfff
301 bsciic* at fdt? # Broadcom BCM283x Serial Control
302 exyoi2c* at fdt? # Samsung Exynos I2C
303 sunxirsb* at fdt? pass 4 # Allwinner RSB
304 sunxitwi* at fdt? # Allwinner TWI
305 tegrai2c* at fdt? pass 4 # NVIDIA Tegra I2C
306 tiiic* at fdt? pass 4 # TI OMAP I2C
307 iic* at i2cbus?
308
309 # I2C devices
310 ac100ic* at iic? # AC100 integrated audio codec and RTC
311 as3722pmic* at iic?
312 as3722reg* at as3722pmic?
313 axp20x* at iic? # AXP209 Power Management IC
314 axp20xreg* at axp20x?
315 axp22x* at iic? # AXP221 Power Management IC
316 axppmic* at iic? # X-Powers AXP Power Management IC
317 axpreg* at axppmic?
318 max77620pmic* at iic?
319 pcf8563rtc* at iic? # PCF8563 RTC
320 seeprom* at iic? # AT24Cxx Serial EEPROM
321 sy8106a* at iic? # Silergy SY81061 regulator
322 tcakp* at iic? # TI TCA8418 Keypad Scan IC
323 tcagpio* at iic?
324 tdahdmi* at iic? # NXP TDA19988 HDMI encoder
325 titemp* at iic?
326 tps65217pmic* at iic? # TI TPS65217 Power Management IC
327 tps65217reg* at tps65217pmic?
328 twl* at iic? # TI TWL4030 Power Management IC
329 wskbd* at tcakp? console ?
330
331 # CAN bus
332 options CAN # Controller Area Network protocol
333 pseudo-device canloop # CAN loopback interface
334 sunxican* at fdt? # A10/A20 CAN controller
335
336 # SPI
337 sun4ispi* at fdt?
338 sun6ispi* at fdt?
339 spi* at spibus?
340
341 # Random number generators
342 bcmrng* at fdt? # Broadcom BCM283x RNG
343 mesonrng* at fdt? # Amlogic Meson RNG
344 tirng* at fdt? # TI RNG
345
346 # Security ID EFUSE
347 sunxisid* at fdt? pass 4 # SID
348
349 # Low res ADC
350 sunxilradc* at fdt?
351
352 # RTC
353 #exyortc* at fdt? # RTC
354 mesonrtc* at fdt? # Amlogic Meson RTC
355 plrtc* at fdt? # ARM PrimeCell RTC
356 sunxirtc* at fdt? # Allwinner RTC
357 tegrartc* at fdt? # NVIDIA Tegra RTC
358
359 # Thermal sensor
360 sunxithermal* at fdt? # Thermal sensor controller
361
362 # BCM2835 VCHIQ, etc
363 vchiq0 at fdt?
364 vcaudio0 at vchiq0
365
366 # Audio
367 a64acodec* at fdt? # Allwinner A64 audio codec (analog part)
368 aaci* at fdt? # ARM PrimeCell AACI
369 ausoc* at fdt? # Simple SoC audio card
370 h3codec* at fdt? # Allwinner H3 audio codec (analog part)
371 hdaudio* at fdt? # Intel HDA
372 hdafg* at hdaudiobus?
373 options HDAUDIOVERBOSE
374 options HDAUDIO_ENABLE_HDMI
375 options HDAUDIO_ENABLE_DISPLAYPORT
376 sun8icodec* at fdt? # Audio codec (sun8i)
377 sunxicodec* at fdt? # Allwinner audio codec
378 sunxii2s* at fdt? # I2S/PCM
379 audio* at audiobus?
380 spkr* at audio?
381
382 # SDMMC
383 bcmsdhost* at fdt? # Broadcom BCM283x SD Host Interface
384 dwcmmc* at fdt? # DesignWare SDMMC
385 mesonsdio* at fdt? # Amlogic Meson SDIO controller
386 mesonsdhc* at fdt? # Amlogic Meson SDHC controller
387 mmcpwrseq* at fdt? # Simple MMC power sequence provider
388 plmmc* at fdt? # ARM PrimeCell MCI
389 sdhc* at fdt? # SD Host Controller Interface
390 sunximmc* at fdt? # Allwinner SD/MMC
391 sdmmc* at sdmmcbus?
392 ld0 at sdmmc0
393 ld1 at sdmmc1
394 ld2 at sdmmc2
395 ld3 at sdmmc3
396 ld* at sdmmc?
397 bwfm* at sdmmc? # Broadcom BCM43xxx WiFi Interface
398
399 # NAND Flash
400 sunxinand* at fdt? # Allwinner NAND flash controller
401 omapnand* at fdt? # TI OMAP2 flash controller
402 nand* at nandbus?
403 flash* at nand? dynamic 1
404
405 # SATA
406 ahcisata* at fdt? # AHCI SATA
407 ahcisata* at pci? dev ? function ?
408 atabus* at ata?
409 atapibus* at atapi?
410 wd* at atabus? drive ?
411 cd* at atapibus? drive ?
412
413 # NVMe
414 nvme* at pci? dev ? function ?
415 ld* at nvme? nsid ?
416
417 # SPI controllers
418 bcmspi* at fdt? # Broadcom BCM283x SPI
419 spi* at spibus?
420
421 # HDMI CEC
422 tegracec0 at fdt? # NVIDIA Tegra HDMI CEC
423 hdmicec* at hdmicecbus?
424
425 # Display
426 #tegradrm* at fdt? # NVIDIA Tegra Display
427 #tegrafb* at tegrafbbus?
428 genfb* at fdt? # Simple Framebuffer
429 mesonfb* at fdt? # Amlogic Meson Framebuffer
430 omapfb* at fdt? # TI OMAP3 Framebuffer
431 wsdisplay* at wsemuldisplaydev?
432 sunxidebe* at fdt? pass 4 # Display Backend
433 genfb* at sunxidebe?
434 sunxitcon* at fdt? pass 4 # LCD LVDS/RGB controller
435 sunxihdmi* at fdt? pass 4 # HDMI controller
436 connector* at fdt? pass 4
437 panel* at fdt? pass 4
438 #sunxidep must be after display pipeline elements but before genfb@fdt
439 sunxidep* at fdt? pass 5 # Display Engine Pipeline
440 tilcdc* at fdt? # TI OMAP4 LCDC
441 tifb* at tilcdc?
442
443 options VCONS_DRAW_INTR
444 options WSEMUL_VT100
445 options WS_DEFAULT_FG=WSCOL_WHITE
446 options WS_DEFAULT_BG=WSCOL_BLACK
447 options WS_KERNEL_FG=WSCOL_GREEN
448 options WS_KERNEL_BG=WSCOL_BLACK
449 options WSDISPLAY_COMPAT_PCVT
450 options WSDISPLAY_COMPAT_SYSCONS
451 options WSDISPLAY_COMPAT_USL
452 options WSDISPLAY_COMPAT_RAWKBD
453 options WSDISPLAY_DEFAULTSCREENS=4
454 options WSDISPLAY_MULTICONS
455 options WSDISPLAY_SCROLLSUPPORT
456 pseudo-device wsmux
457 pseudo-device wsfont
458 options FONT_BOLD8x16
459 options FONT_BOLD16x32
460
461 # GPU
462 #nouveau* at fdt? # NVIDIA GPU
463
464 # PS/2 keyboard and mouse support
465 plkmi* at fdt?
466 pckbd* at pckbport?
467 wskbd* at pckbd? console ?
468 pms* at pckbport?
469 wsmouse* at pms? mux 0
470
471 # Touch Screen controller
472 sunxits* at fdt? # Touch Screen controller
473 wsmouse* at sunxits? mux 0
474
475 # Thermal throttling controller
476 tegrasoctherm* at fdt? # NVIDIA Tegra SOC_THERM
477
478 # USB
479 exusbphy* at fdt? pass 9 # Samsung Exynos USB2 PHY
480 exusbdrdphy* at fdt? pass 9 # Samsung Exynos USB3 DRD PHY
481 mesonusbphy* at fdt? pass 9 # Amlogic Meson USB2 PHY
482 sun9iusbphy* at fdt? pass 9 # Allwinner A80 USB PHY
483 sunxiusbphy* at fdt? pass 9 # Allwinner USB PHY
484 sunxiusb3phy* at fdt? pass 9 # Allwinner USB3 PHY
485 tegrausbphy* at fdt? # NVIDIA Tegra USB PHY
486 usbnopphy* at fdt? pass 9 # Generic USB PHY
487 tiotg* at fdt? # TI dual port OTG
488 tiusb* at fdt? pass 9 # TI HS USB host
489 tiusbtll* at fdt? pass 8 # TI HS USB host TLL
490 dwctwo* at fdt? # Designware USB DRD
491 ehci* at fdt? # EHCI
492 motg* at fdt? # Mentor Graphics USB OTG
493 ohci* at fdt? # OHCI
494 xhci* at fdt? # XHCI
495 usb* at usbus?
496
497 # Virtio devices
498 virtio* at fdt? # Virtio MMIO device
499 virtio* at pci? dev ? function ? # Virtio PCI device
500 # the balloon driver cannot work on machines with non-4k pages
501 #viomb* at virtio? # Virtio memory balloon device
502 ld* at virtio? # Virtio disk device
503 vioif* at virtio? # Virtio network device
504 viornd* at virtio? # Virtio entropy device
505 vioscsi* at virtio? # Virtio SCSI device
506
507 # SCSI
508 scsibus* at scsi?
509 sd* at scsibus? target ? lun ? # SCSI disks
510 st* at scsibus? target ? lun ? # SCSI tapes
511 cd* at scsibus? target ? lun ? # SCSI CD-ROMs
512 ch* at scsibus? target ? lun ? # SCSI changer devices
513 ss* at scsibus? target ? lun ? # SCSI scanners
514 ses* at scsibus? target ? lun ? # SCSI SES/SAF-TE devices
515 uk* at scsibus? target ? lun ? # unknown SCSI
516
517 # SPI NOR flash support
518 m25p* at spi?
519 spiflash* at spiflashbus?
520
521 include "dev/usb/usbdevices.config"
522 midi* at midibus?
523 pseudo-device sequencer # MIDI sequencer
524
525 cinclude "arch/evbarm/conf/GENERIC.local"
526