EFIKA revision 1.1 1 # $NetBSD: EFIKA,v 1.1 2026/07/01 00:19:39 rkujawa Exp $
2 #
3 # EFIKA 5200B - Genesi/bplan single-board computer based on the MPC5200B
4 #
5 # Standalone configuration for the EFIKA 5200B.
6
7 include "arch/ofppc/conf/std.ofppc"
8
9 options INCLUDE_CONFIG_FILE # embed config file in kernel binary
10
11 #ident "EFIKA-$Revision: 1.1 $"
12
13 maxusers 32
14
15 options EFIKA_OFW_WORKAROUNDS
16 # FIRMWORKSBUGS, and its real-mode OF-call wrapper, ofwreal.S does not work
17 # on EFIKA. It hangs the kernel during early ofwr_init/savemmu. It does not
18 # matter if SmartFirmware is running with real-mode? true or false, the
19 # result is the same.
20 #
21 # It is worth nothing that rjs' original EFIKA port from 2008-2012 used
22 # FIRMWORKSBUGS option and the kernel booted fine. The problem is that the
23 # current ofwreal.S wrapper is not compatible with SmartFirmware. The
24 # incompatibility must have been introduced in one of the later refactors.
25 #
26 # So we have this EFIKA_OFW_WORKAROUND kludge. OF calls use the standard
27 # openfirmware_trampoline and the kernel boots. It's just that we need to
28 # restore proper contents of SDR1 and BATs, which is exactly what the option
29 # do.
30
31 # Standard system options
32 options INSECURE # disable kernel security checks
33 #options NTP # NTP phase/frequency locked loop
34 options KTRACE # system call tracing via ktrace(1)
35
36 options SYSVMSG # System V message queues
37 options SYSVSEM # System V semaphores
38 options SYSVSHM # System V shared memory
39
40 options USERCONF # userconf(4) support
41 #options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
42 options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel
43 options RDB_PART # Rigid Disk Block partition support
44
45 # Alternate buffer queue strategies for better responsiveness under high
46 # disk I/O load.
47 #options BUFQ_READPRIO
48 options BUFQ_PRIOCSCAN
49
50 # Diagnostic/debugging support options
51 #options DIAGNOSTIC # cheap kernel consistency checks
52 #options DEBUG # expensive debugging checks/support
53 options DDB # in-kernel debugger
54 options DDB_HISTORY_SIZE=512 # enable history editing in DDB
55 options DDB_VERBOSE_HELP
56 options TRAP_PANICWAIT
57 options MSGBUFSIZE=32768
58
59 makeoptions DEBUG="-g" # compile full symbol table
60
61 # Wedge support. The disk on the onboard IDE port is RDB-partitioned and
62 # removable media may arrive with an MBR, so enable those methods in addition to
63 # the GPT and Apple methods.
64 options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances
65 options DKWEDGE_METHOD_MBR # Support MBR partitions as wedges
66 options DKWEDGE_METHOD_RDB # Support Amiga RDB partitions as wedges
67
68 # File systems
69 file-system FFS # UFS
70 file-system EXT2FS # second extended file system (linux)
71 file-system MFS # memory file system
72 file-system NFS # Network file System client
73 file-system CD9660 # ISO 9660 + Rock Ridge file system
74 file-system MSDOSFS # MS-DOS file system
75 file-system ADOSFS # AmigaDOS file system
76 file-system FDESC # /dev/fd
77 file-system KERNFS # /kern
78 file-system NULLFS # loopback file system
79 file-system OVERLAY # overlay file system
80 file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
81 file-system PROCFS # /proc
82 file-system UMAPFS # NULLFS + uid and gid remapping
83 file-system UNION # union file system
84 file-system NTFS # Windows NT file system
85 file-system PTYFS # /dev/pts/N support
86 file-system TMPFS # Efficient memory file-system
87 #file-system UDF # experimental - OSTA UDF CD/DVD file-system
88
89 # File system options
90 options FFS_EI # FFS Endian Independent support
91 #options FFS_NO_SNAPSHOT # No FFS snapshot support
92 options QUOTA # legacy UFS quotas
93 options QUOTA2 # new, in-filesystem UFS quotas
94 options UFS_DIRHASH # UFS Large Directory Hashing
95 options UFS_EXTATTR # Extended attribute support for UFS1
96 options WAPBL # File system journaling support
97 options LFS_DIRHASH # LFS version of UFS_DIRHASH - experimental
98
99 options NFS_BOOT_DHCP # Support DHCP NFS root
100
101 # Networking options
102 #options GATEWAY # packet forwarding
103 options INET # IP + ICMP + TCP + UDP
104 options INET6 # IPV6
105
106 # These options enable verbose messages for several subsystems.
107 # Warning, these may compile large string tables into the kernel!
108 options MIIVERBOSE # verbose PHY autoconfig messages
109 options PCIVERBOSE # verbose PCI device autoconfig messages
110 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
111 options SCSIVERBOSE # human readable SCSI error messages
112 options USBVERBOSE # verbose USB device autoconfig messages
113
114 options WSEMUL_VT100
115 options WSDISPLAY_COMPAT_USL # wsconscfg VT handling
116 options WS_DEFAULT_FG=WSCOL_BLACK
117 options WS_DEFAULT_BG=WSCOL_LIGHT_WHITE
118 options WS_KERNEL_FG=WSCOL_GREEN
119 options WS_KERNEL_BG=WSCOL_LIGHT_WHITE
120 #options FONT_GALLANT12x22
121 options FONT_BOLD8x16
122
123 # Kernel root file system and dump configuration
124 config netbsd root on ? type ?
125
126 #
127 # Device configuration
128 #
129 mainbus* at root
130
131 # CPUs
132 cpu* at mainbus?
133
134 # Generic OpenFirmware console support
135 rtas* at mainbus?
136
137 #
138 # Freescale MPC5200B on-chip peripherals (SoC bus).
139 #
140 options PIC_MPC5200 # SIU interrupt-routing glue in mainbus/ofwpci
141
142 mpcobio* at mainbus?
143 mpc5200pic* at mpcobio? # SIU interrupt controller
144 cdm* at mpcobio? # clock distribution module
145 sram* at mpcobio? # on-chip SRAM (BestComm scratch)
146 bestcomm* at mpcobio? # BestComm SDMA engine
147 fec* at mpcobio? # Fast Ethernet Controller (MAC + MII)
148 psc* at mpcobio? # programmable serial controller
149 # Use a PSC in UART mode (PSC1) as the OpenFirmware serial console.
150 options PSC_CONSOLE
151 ohci* at mpcobio? # on-chip USB OHCI host controller
152 wdc* at mpcobio? # on-chip ATA controller (PIO mode)
153 mpcaudio* at mpcobio? # AC97 audio (PSC2 + STAC9766, BestComm DMA)
154
155 # PCI root nodes. EFIKA uses the native MPC5200 host-bridge driver (mpcpci)
156 # instead of the generic ofwpci.
157 mpcpci* at mainbus?
158 pci* at mpcpci? bus ?
159
160 # PCI bridges
161 pchb* at pci? dev ? function ?
162 ppb* at pci? dev ? function ?
163 pcib* at pci? dev ? function ?
164
165 # Console Devices
166 #genfb* at pci? dev ? function ?
167 #radeonfb* at pci? dev ? function ?
168 #
169 #wsdisplay0 at wsemuldisplaydev? console 1
170 #wsdisplay* at wsemuldisplaydev?
171
172 scsibus* at umass?
173
174 # SCSI devices
175 sd* at scsibus? target ? lun ? # SCSI disk drives
176 st* at scsibus? target ? lun ? # SCSI tape drives
177 cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
178 #ch* at scsibus? target ? lun ? # SCSI autochangers
179 #ss* at scsibus? target ? lun ? # SCSI scanners
180 #uk* at scsibus? target ? lun ? # SCSI unknown
181
182 # IDE and related devices
183 # PCI IDE controllers
184 satalink* at pci? dev ? function ? # Silicon Image SATALink SATA
185
186 # ATA (IDE) bus support
187 atabus* at ata?
188
189 # IDE drives
190 wd* at atabus? drive ? flags 0x0000
191
192 # ATAPI bus support
193 atapibus* at atapi?
194
195 # ATAPI devices
196 # flags have the same meaning as for IDE drives.
197 cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
198 sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
199 uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
200
201 # MII/PHY support
202 rlphy* at mii? phy ? # Realtek 8139/8201L PHYs
203
204 usb* at ohci? # USB bus support
205 uhub* at usb? # USB Hubs
206 uhub* at uhub? port ?
207
208 # USB Mass Storage
209 umass* at uhub? port ? configuration ? interface ?
210
211 uhidev* at uhub? port ? configuration ? interface ? # USB HID device
212
213 ums* at uhidev? reportid ? # USB Mice
214 wsmouse* at ums? mux 0
215
216 ukbd* at uhidev? reportid ? # USB Keyboards
217 wskbd* at ukbd? console ? mux 1
218
219 ucycom* at uhidev? reportid ? # USB serial adapter
220 uhid* at uhidev? reportid ? # USB Generic HID
221
222 ulpt* at uhub? port ? configuration ? interface ? # USB Printer
223 #uaudio* at uhub? port ? configuration ? # USB audio
224
225 ugen* at uhub? port ? configuration ? interface ? # USB Generic driver
226
227 # Audio support
228 audio* at audiobus?
229
230 spkr* at audio? # PC speaker (synthesized)
231 wsbell* at spkr?
232
233 #
234 # accept filters
235 pseudo-device accf_data # "dataready" accept filter
236 pseudo-device accf_http # "httpready" accept filter
237
238 pseudo-device vnd # disk-like interface to files
239 #options VND_COMPRESSION # compressed vnd(4)
240 pseudo-device fss # file system snapshot device
241 pseudo-device md # memory disk device
242 pseudo-device loop # network loopback
243 pseudo-device bpfilter # packet filter
244 pseudo-device npf # NPF packet filter
245 # NB: pppoe (and its sppp line discipline) is intentionally omitted on this board.
246 pseudo-device sl # Serial Line IP
247 pseudo-device tun # network tunneling over tty
248 pseudo-device tap # virtual Ethernet
249 #pseudo-device gre # generic L3 over IP tunnel
250 pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
251 #pseudo-device faith # IPv[46] tcp relay translation i/f
252 pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
253 pseudo-device vlan # IEEE 802.1q encapsulation
254 pseudo-device bridge # simple inter-network bridging
255 pseudo-device vether # Virtual Ethernet for bridge
256 pseudo-device agr # IEEE 802.3ad link aggregation
257 pseudo-device pty # pseudo-terminals
258 pseudo-device clockctl # user control of clock subsystem
259 pseudo-device openfirm # /dev/openfirm
260 pseudo-device ksyms # /dev/ksyms
261 pseudo-device wsmux # mouse and keyboard multiplexor
262 pseudo-device putter # for puffs and pud
263 pseudo-device swwdog # software watchdog timer -- swwdog(4)
264
265 # userland interface to drivers, including autoconf and properties retrieval
266 pseudo-device drvctl
267
268 include "dev/veriexec.config"
269
270 # Pull in optional local configuration - always at end
271 cinclude "arch/ofppc/conf/EFIKA.local"
272