EFIKA revision 1.2 1 # $NetBSD: EFIKA,v 1.2 2026/07/12 11:43:23 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.2 $"
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 #config netbsd root on fec0 type nfs
126
127 #
128 # Device configuration
129 #
130 mainbus* at root
131
132 # CPUs
133 cpu* at mainbus?
134
135 # Generic OpenFirmware console support
136 rtas* at mainbus?
137
138 #
139 # Freescale MPC5200B on-chip peripherals (SoC bus).
140 #
141 options PIC_MPC5200 # SIU interrupt-routing glue in mainbus/ofwpci
142
143 mpcobio* at mainbus?
144 mpc5200pic* at mpcobio? # SIU interrupt controller
145 cdm* at mpcobio? # clock distribution module
146 sram* at mpcobio? # on-chip SRAM (BestComm scratch)
147 bestcomm* at mpcobio? # BestComm SDMA engine
148 fec* at mpcobio? # Fast Ethernet Controller (MAC + MII)
149 psc* at mpcobio? # programmable serial controller
150 # Use a PSC in UART mode (PSC1) as the OpenFirmware serial console.
151 options PSC_CONSOLE
152 ohci* at mpcobio? # on-chip USB OHCI host controller
153 wdc* at mpcobio? # on-chip ATA controller (PIO mode)
154 #mpcaudio* at mpcobio? # AC97 audio (PSC2 + STAC9766, BestComm DMA)
155
156 # PCI root nodes. EFIKA uses the native MPC5200 host-bridge driver (mpcpci)
157 # instead of the generic ofwpci.
158 mpcpci* at mainbus?
159 pci* at mpcpci? bus ?
160
161 # PCI bridges
162 pchb* at pci? dev ? function ?
163 ppb* at pci? dev ? function ?
164 pcib* at pci? dev ? function ?
165
166 # Console Devices
167 #genfb* at pci? dev ? function ?
168 radeonfb* at pci? dev ? function ? # ATI Radeon
169 options RADEONFB_BIOS_INIT
170
171 veritefb* at pci? dev ? function ? # Rendition Verite V2100/V2200
172 #options VERITEFB_CONSOLE
173 #options VERITEFB_DEBUG
174
175 wsdisplay* at wsemuldisplaydev?
176
177 scsibus* at umass?
178
179 # SCSI devices
180 sd* at scsibus? target ? lun ? # SCSI disk drives
181 st* at scsibus? target ? lun ? # SCSI tape drives
182 cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
183 #ch* at scsibus? target ? lun ? # SCSI autochangers
184 #ss* at scsibus? target ? lun ? # SCSI scanners
185 #uk* at scsibus? target ? lun ? # SCSI unknown
186
187 # IDE and related devices
188 # PCI IDE controllers
189 satalink* at pci? dev ? function ? # Silicon Image SATALink SATA
190
191 # ATA (IDE) bus support
192 atabus* at ata?
193
194 # IDE drives
195 wd* at atabus? drive ? flags 0x0000
196
197 # ATAPI bus support
198 atapibus* at atapi?
199
200 # ATAPI devices
201 # flags have the same meaning as for IDE drives.
202 cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
203 sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
204 uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
205
206 # MII/PHY support
207 rlphy* at mii? phy ? # Realtek 8139/8201L PHYs
208
209 usb* at ohci? # USB bus support
210 uhub* at usb? # USB Hubs
211 uhub* at uhub? port ?
212
213 # USB Mass Storage
214 umass* at uhub? port ? configuration ? interface ?
215
216 uhidev* at uhub? port ? configuration ? interface ? # USB HID device
217
218 ums* at uhidev? reportid ? # USB Mice
219 wsmouse* at ums? mux 0
220
221 ukbd* at uhidev? reportid ? # USB Keyboards
222 wskbd* at ukbd? console ? mux 1
223
224 ucycom* at uhidev? reportid ? # USB serial adapter
225 uhid* at uhidev? reportid ? # USB Generic HID
226
227 ulpt* at uhub? port ? configuration ? interface ? # USB Printer
228 #uaudio* at uhub? port ? configuration ? # USB audio
229
230 ugen* at uhub? port ? configuration ? interface ? # USB Generic driver
231
232 # Audio support
233 #audio* at audiobus?
234
235 #spkr* at audio? # PC speaker (synthesized)
236 #wsbell* at spkr?
237
238 #
239 # accept filters
240 pseudo-device accf_data # "dataready" accept filter
241 pseudo-device accf_http # "httpready" accept filter
242
243 pseudo-device vnd # disk-like interface to files
244 #options VND_COMPRESSION # compressed vnd(4)
245 pseudo-device fss # file system snapshot device
246 pseudo-device md # memory disk device
247 pseudo-device loop # network loopback
248 pseudo-device bpfilter # packet filter
249 pseudo-device npf # NPF packet filter
250 # NB: pppoe (and its sppp line discipline) is intentionally omitted on this board.
251 pseudo-device sl # Serial Line IP
252 pseudo-device tun # network tunneling over tty
253 pseudo-device tap # virtual Ethernet
254 #pseudo-device gre # generic L3 over IP tunnel
255 pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
256 #pseudo-device faith # IPv[46] tcp relay translation i/f
257 pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
258 pseudo-device vlan # IEEE 802.1q encapsulation
259 pseudo-device bridge # simple inter-network bridging
260 pseudo-device vether # Virtual Ethernet for bridge
261 pseudo-device agr # IEEE 802.3ad link aggregation
262 pseudo-device pty # pseudo-terminals
263 pseudo-device clockctl # user control of clock subsystem
264 pseudo-device openfirm # /dev/openfirm
265 pseudo-device ksyms # /dev/ksyms
266 pseudo-device wsmux # mouse and keyboard multiplexor
267 pseudo-device putter # for puffs and pud
268 pseudo-device swwdog # software watchdog timer -- swwdog(4)
269
270 # userland interface to drivers, including autoconf and properties retrieval
271 pseudo-device drvctl
272
273 include "dev/veriexec.config"
274
275 # Pull in optional local configuration - always at end
276 cinclude "arch/ofppc/conf/EFIKA.local"
277