1# $NetBSD: NINTENDO,v 1.1 2026/01/09 22:54:27 jmcneill Exp $
2#
3# Nintendo Wii
4#
5
6include 	"arch/evbppc/conf/std.nintendo"
7
8#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
9
10options 	MSGBUFSIZE=0x10000
11
12maxusers	32
13
14options 	INSECURE	# disable kernel security levels
15options 	NTP		# NTP phase/frequency locked loop
16options 	KTRACE		# system call tracing via ktrace(1)
17
18options 	SYSVMSG		# System V message queues
19options 	SYSVSEM		# System V semaphores
20options 	SYSVSHM		# System V shared memory
21
22#options 	USERCONF	# userconf(4) support
23#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
24#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
25
26# Alternate buffer queue strategies for better responsiveness under high
27# disk I/O load.
28#options 	BUFQ_READPRIO
29options 	BUFQ_PRIOCSCAN
30
31# Diagnostic/debugging support options
32options 	DIAGNOSTIC	# cheap kernel consistency checks
33#options 	DEBUG		# expensive debugging checks/support
34options 	DDB		# in-kernel debugger
35#options 	DDB_HISTORY_SIZE=100	# enable history editing in DDB
36#options 	TRAP_PANICWAIT
37makeoptions COPY_SYMTAB=1	# size for embedded symbol table
38
39#options 	KGDB		# remote debugger
40#options 	KGDB_DEVNAME="\"com\"",KGDB_DEVADDR=0xff600400,KGDB_DEVRATE=9600
41makeoptions DEBUG="-g"	# compile full symbol table
42
43# Compatibility options
44include 	"conf/compat_netbsd50.config"
45#options 	COMPAT_386BSD_MBRPART # recognize old partition ID
46
47# Wedge support
48options 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
49options 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
50
51# File systems
52file-system 	FFS		# UFS
53#file-system 	EXT2FS		# second extended file system (linux)
54#file-system 	LFS		# log-structured file system
55file-system 	MFS		# memory file system
56file-system 	NFS		# Network File System client
57file-system 	CD9660		# ISO 9660 + Rock Ridge file system
58file-system 	MSDOSFS		# MS-DOS file system
59file-system 	FDESC		# /dev/fd
60file-system 	KERNFS		# /kern
61file-system 	NULLFS		# loopback file system
62file-system 	OVERLAY		# overlay file system
63file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
64file-system 	PROCFS		# /proc
65file-system 	TMPFS		# efficient memory file system
66file-system 	UMAPFS		# NULLFS + uid and gid remapping
67file-system 	UNION		# union file system
68file-system	PTYFS		# /dev/pts/N support
69
70# File system options
71options 	FFS_EI		# FFS Endian Independent support
72options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
73#options 	QUOTA		# legacy UFS quotas
74#options 	QUOTA2		# new, in-filesystem UFS quotas
75#options 	UFS_DIRHASH	# UFS Large Directory Hashing
76#options 	UFS_EXTATTR	# Extended attribute support for UFS1
77options 	WAPBL		# File system journaling support
78#options 	LFS_DIRHASH	# LFS version of UFS_DIRHASH - experimental
79#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
80				# immutable) behave as system flags.
81options 	DISKLABEL_EI	# disklabel Endian Independent support
82#options 	NFSSERVER	# Network File System server
83
84options 	NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM
85options 	NFS_BOOT_RWSIZE=1024
86
87# Networking options
88#options 	GATEWAY		# packet forwarding
89options 	INET		# IP + ICMP + TCP + UDP
90options 	INET6		# IPV6
91options 	IPSEC		# IP security
92#options 	IPSEC_DEBUG	# debug for IP security
93#options 	MROUTING	# IP multicast routing
94#options 	PIM		# Protocol Independent Multicast
95#options 	NETATALK	# AppleTalk networking protocols
96#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
97#options 	PPP_DEFLATE	# Deflate compression support for PPP
98#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
99#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
100
101# These options enable verbose messages for several subsystems.
102# Warning, these may compile large string tables into the kernel!
103#options 	MIIVERBOSE	# verbose PHY autoconfig messages
104#options 	SCSIVERBOSE	# human readable SCSI error messages
105#options 	USBVERBOSE	# verbose USB device autoconfig messages
106
107# Kernel root file system and dump configuration.
108config		netbsd	root on ? type ?
109
110#
111# Device configuration
112#
113
114mainbus0 at root
115
116cpu*		at mainbus0
117genfb0		at mainbus0
118wsdisplay*      at wsemuldisplaydev?
119options 	WSEMUL_VT100
120options 	WSDISPLAY_CUSTOM_OUTPUT
121options 	WS_DEFAULT_FG=WSCOL_WHITE
122options 	WS_DEFAULT_BG=WSCOL_BLACK
123options 	WS_KERNEL_FG=WSCOL_GREEN
124options 	WS_KERNEL_BG=WSCOL_BLACK
125options 	WSDISPLAY_COMPAT_PCVT
126options 	WSDISPLAY_COMPAT_SYSCONS
127options 	WSDISPLAY_COMPAT_USL
128#options 	WSDISPLAY_COMPAT_RAWKBD
129options 	WSDISPLAY_DEFAULTSCREENS=4
130options 	WSDISPLAY_SCROLLSUPPORT
131options 	WSDISPLAY_MULTICONS
132
133ahb0 		at mainbus0 irq 14
134si0		at mainbus0 addr 0x0d006400 irq 3	# Serial interface
135uhid*		at si0
136exi0		at mainbus0 addr 0x0d006800 irq 4	# External interface
137rtcsram0	at exi0					# RTC/SRAM chip
138gecko0		at exi0					# USB Gecko
139bwai0		at mainbus0 addr 0x0d006c00 irq 5	# Audio interface
140bwdsp0		at mainbus0 addr 0x0c005000 irq 6	# DSP
141
142hwgpio0		at ahb0 addr 0x0d0000c0 irq 10		# GPIO
143gpio0		at hwgpio0
144gpioiic0	at gpio0 offset 0 mask 0xc000 flag 1
145iic0		at gpioiic0
146avenc0		at iic0 addr 0x70			# A/V Encoder
147
148resetbtn0	at ahb0 irq 17				# Reset button
149
150ehci0		at ahb0 addr 0x0d040000 irq 4		# EHCI0
151ehci1		at ahb0 addr 0x0d120000 irq 34		# EHCI1 (Wii U)
152ehci2		at ahb0 addr 0x0d140000 irq 36		# EHCI2 (Wii U)
153ohci0		at ahb0 addr 0x0d050000 irq 5		# OHCI0
154ohci1		at ahb0 addr 0x0d060000 irq 6		# OHCI1
155ohci2		at ahb0 addr 0x0d130000 irq 35		# OHCI2 (Wii U)
156ohci3		at ahb0 addr 0x0d150000 irq 37		# OHCI3 (Wii U)
157usb*		at usbus?
158
159sdhc0		at ahb0 addr 0x0d070000 irq 7		# SD card
160sdhc1		at ahb0 addr 0x0d080000 irq 8		# SDIO/BT
161sdmmc*		at sdmmcbus?
162ld*		at sdmmc?
163bwi*		at sdmmc?				# WLAN (Wii)
164bwfm*		at sdmmc?				# WLAN (Wii U)
165
166di0		at ahb0 addr 0x0d806000 irq 18		# Drive interface
167
168hwaes0		at ahb0 addr 0x0d020000 irq 2		# AES engine
169
170ahcisata0	at ahb0 addr 0x0d160400 irq 38		# AHCI SATA (Wii U)
171atabus*		at ata?
172atapibus*	at atapi?
173wd*		at atabus? drive ?
174cd*		at atapibus? drive ?
175
176include "dev/usb/usbdevices.config"
177include "dev/bluetooth/bluetoothdevices.config"
178
179# MII/PHY support
180urlphy*		at mii? phy ?
181ukphy*		at mii? phy ?
182
183# Radio support
184radio*	at radiodev?
185
186# Audio support
187audio*	at audiobus?
188spkr*	at audio?		# PC speaker (synthesized)
189midi*	at midibus?
190pseudo-device	sequencer	# MIDI sequencer
191
192# SCSI bus support
193scsibus* at scsi? channel ?
194
195# SCSI devices
196sd*	at scsibus? target ? lun ?	# SCSI disk drives
197st*	at scsibus? target ? lun ?	# SCSI tape drives
198cd*	at scsibus? target ? lun ?	# SCSI CD-ROM drives
199ch*	at scsibus? target ? lun ?	# SCSI autochangers
200ses*	at scsibus? target ? lun ?	# SCSI Enclosure Services devices
201ss*	at scsibus? target ? lun ?	# SCSI scanners
202uk*	at scsibus? target ? lun ?	# SCSI unknown
203
204pseudo-device	vnd			# disk-like interface to files
205#pseudo-device	fss			# file system snapshot device
206pseudo-device	cgd			# cryptographic disk devices
207#pseudo-device	md			# memory disk device
208pseudo-device	loop			# network loopback
209pseudo-device	bpfilter		# packet filter
210#pseudo-device 	carp			# Common Address Redundancy Protocol
211pseudo-device	npf			# NPF packet filter
212pseudo-device	ppp			# Point-to-Point Protocol
213pseudo-device	sl			# Serial Line IP
214pseudo-device	tun			# network tunneling over tty
215pseudo-device	gre			# generic L3 over IP tunnel
216pseudo-device	gif			# IPv[46] over IPv[46] tunnel (RFC1933)
217#pseudo-device	faith			# IPv[46] tcp relay translation i/f
218pseudo-device	stf			# 6to4 IPv6 over IPv4 encapsulation
219pseudo-device	vlan			# IEEE 802.1q encapsulation
220pseudo-device	pty			# pseudo-terminals
221pseudo-device	clockctl		# user control of clock subsystem
222pseudo-device	drvctl			# user control of drive subsystem
223pseudo-device	putter			# for puffs and pud
224pseudo-device	ksyms
225
226# wscons pseudo-devices
227pseudo-device	wsmux			# mouse & keyboard multiplexor
228pseudo-device	wsfont
229options         FONT_BOLD8x16
230
231include "dev/veriexec.config"
232
233options		PAX_SEGVGUARD=0		# PaX Segmentation fault guard
234options		PAX_MPROTECT=1		# PaX mprotect(2) restrictions
235options		PAX_MPROTECT_DEBUG=1	# PaX mprotect debug
236options		PAX_ASLR=1		# PaX Address Space Layout Randomization
237options		PAX_ASLR_DEBUG=1	# PaX ASLR debug
238