CUBOX revision 1.21 1 # $NetBSD: CUBOX,v 1.21 2022/08/07 02:52:25 simonb Exp $
2 #
3 # CUBOX -- SolidRun Ltd. Cubox kernel
4 #
5
6 include "arch/evbarm/conf/std.marvell"
7
8 #options INCLUDE_CONFIG_FILE # embed config file in kernel binary
9
10 # estimated number of users
11
12 maxusers 32
13
14 # Board Type
15 makeoptions BOARDTYPE="cubox"
16 options EVBARM_BOARDTYPE=cubox
17
18 # CPU options
19 options CPU_PJ4B # XXXX: CPU is PJ4
20 options ARM_HAS_VBAR
21 options FPU_VFP
22 makeoptions CPUFLAGS="-march=armv7-a -mfpu=vfpv3"
23
24 # Marvell SoC options
25 options DOVE
26
27 # Standard system options
28
29 options INSECURE # disable kernel security levels - X needs this
30
31 options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT
32 #options NTP # NTP phase/frequency locked loop
33 options KTRACE # system call tracing via ktrace(1)
34
35 # Note: SysV IPC parameters can be changed dynamically; see sysctl(8).
36 options SYSVMSG # System V-like message queues
37 options SYSVSEM # System V-like semaphores
38 options SYSVSHM # System V-like memory sharing
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
44 # Alternate buffer queue strategies for better responsiveness under high
45 # disk I/O load.
46 #options BUFQ_READPRIO
47 options BUFQ_PRIOCSCAN
48
49 # Diagnostic/debugging support options
50 #options VERBOSE_INIT_ARM # verbose bootstraping messages
51 options DIAGNOSTIC # internally consistency checks
52
53 #options DEBUG
54 #options UVMHIST # kernhist for uvm/pmap subsystems
55 options LOCKDEBUG # expensive locking checks/support
56 options IRQSTATS # manage IRQ statistics
57 #options NO_POWERSAVE # uncomment this to run under ICE
58
59 #makeoptions COPTS="-O2"
60 options DDB # in-kernel debugger
61 #options DDB_KEYCODE=0x1d # ^]
62 #options DDB_COMMANDONENTER="bt" # execute command when ddb is entered
63 options DDB_ONPANIC=1 # see also sysctl(7): `ddb.onpanic'
64 options DDB_HISTORY_SIZE=100 # Enable history editing in DDB
65 options DDB_VERBOSE_HELP
66 #options KGDB
67 #options KGDB_DEVRATE=115200
68 makeoptions DEBUG="-g" # compile full symbol table
69 makeoptions COPY_SYMTAB=1
70 #options SYSCALL_STATS # per syscall counts
71 #options SYSCALL_TIMES # per syscall times
72 #options SYSCALL_TIMES_HASCOUNTER # use 'broken' rdtsc (soekris)
73
74
75 # Compatibility options
76
77 include "conf/compat_netbsd60.config"
78 options COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries
79
80 # Wedge support
81 options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances
82 options DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges
83
84 # File systems
85 file-system FFS # UFS
86 file-system MFS # memory file system
87 file-system NFS # Network File System client
88 file-system TMPFS # Efficient memory file-system
89 file-system EXT2FS # second extended file system (linux)
90 file-system LFS # log-structured file system
91 file-system NTFS # Windows/NT file system (experimental)
92 file-system CD9660 # ISO 9660 + Rock Ridge file system
93 file-system MSDOSFS # MS-DOS file system
94 file-system FDESC # /dev/fd
95 file-system KERNFS # /kern
96 file-system NULLFS # loopback file system
97 file-system OVERLAY # overlay file system
98 file-system PROCFS # /proc
99 file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
100 file-system UMAPFS # NULLFS + uid and gid remapping
101 file-system UNION # union file system
102 file-system CODA # Coda File System; also needs vcoda (below)
103 file-system PTYFS # /dev/ptm support
104 #file-system UDF # experimental - OSTA UDF CD/DVD file-system
105 #file-system HFS # experimental - Apple HFS+ (read-only)
106 #file-system NILFS # experimental - NTT's NiLFS(2)
107
108 # File system options
109 options FFS_EI # FFS Endian Independent support
110 #options FFS_NO_SNAPSHOT # No FFS snapshot support
111 options QUOTA # legacy UFS quotas
112 options QUOTA2 # new, in-filesystem UFS quotas
113 options UFS_DIRHASH # UFS Large Directory Hashing
114 options UFS_EXTATTR # Extended attribute support for UFS1
115 options WAPBL # File system journaling support
116 options LFS_DIRHASH # LFS version of UFS_DIRHASH - experimental
117 #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
118 # immutable) behave as system flags.
119 #options DISKLABEL_EI # disklabel Endian Independent support
120 options NFSSERVER # Network File System server
121
122 # Networking options
123 #options GATEWAY # packet forwarding
124 options INET # IP + ICMP + TCP + UDP
125 options INET6 # IPv6
126 options IPSEC # IP security
127 #options IPSEC_DEBUG # debug for IP security
128 #options MPLS # MultiProtocol Label Switching (needs ifmpls)
129 #options MROUTING # IP multicast routing
130 #options PIM # Protocol Independent Multicast
131 options NETATALK # AppleTalk networking protocols
132 options PPP_BSDCOMP # BSD-Compress compression support for PPP
133 options PPP_DEFLATE # Deflate compression support for PPP
134 options PPP_FILTER # Active filter support for PPP (requires bpf)
135 #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
136
137 #options ALTQ # Manipulate network interfaces' output queues
138 #options ALTQ_BLUE # Stochastic Fair Blue
139 #options ALTQ_CBQ # Class-Based Queueing
140 #options ALTQ_CDNR # Diffserv Traffic Conditioner
141 #options ALTQ_FIFOQ # First-In First-Out Queue
142 #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
143 #options ALTQ_HFSC # Hierarchical Fair Service Curve
144 #options ALTQ_LOCALQ # Local queueing discipline
145 #options ALTQ_PRIQ # Priority Queueing
146 #options ALTQ_RED # Random Early Detection
147 #options ALTQ_RIO # RED with IN/OUT
148 #options ALTQ_WFQ # Weighted Fair Queueing
149
150 # Device options
151
152 # These options enable verbose messages for several subsystems.
153 # Warning, these may compile large string tables into the kernel!
154 options MIIVERBOSE # verbose PHY autoconfig messages
155 #options PCIVERBOSE # verbose PCI device autoconfig messages
156 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
157 #options PCMCIAVERBOSE # verbose PCMCIA configuration messages
158 #options SCSIVERBOSE # Verbose SCSI errors
159 #options USBVERBOSE # verbose USB device autoconfig messages
160
161 # Kernel root file system and dump configuration.
162 config netbsd root on ? type ?
163
164 options NFS_BOOT_BOOTP
165 options NFS_BOOT_DHCP
166 #options NFS_BOOT_BOOTPARAM
167 #options NFS_BOOT_BOOTSTATIC
168 #options NFS_BOOTSTATIC_MYIP="\"192.168.0.2\""
169 #options NFS_BOOTSTATIC_GWIP="\"192.168.0.1\""
170 #options NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
171 #options NFS_BOOTSTATIC_SERVADDR="\"192.168.0.3\""
172 #options NFS_BOOTSTATIC_SERVER="\"192.168.0.3:/nfs/cubox\""
173
174
175 #
176 # Device configuration
177 #
178
179 mainbus0 at root
180
181 cpu* at mainbus?
182
183 # Marvell 88AP510 Dove System-on-chip
184 mvsoc0 at mainbus?
185 #options MVSOC_CONSOLE_EARLY
186
187 # On-chip Power Management Unit
188 mvsocpmu* at mvsoc? offset ? irq ?
189
190 # On-chip Gigabit Ethernet Controller
191 mvgbec* at mvsoc? offset ?
192 mvgbe* at mvgbec? port ? irq ?
193
194 # MII/PHY support
195 makphy* at mii? phy ?
196
197 # On-chip Cryptographic Engines and Security Accelerator (CESA)
198 mvcesa* at mvsoc? offset ? irq ?
199
200 # On-chip XOR DMA Engine
201 gtidmac* at mvsoc? offset ? irq ?
202
203 # On-chip PCI Express Interface
204 mvpex* at mvsoc? offset ? irq ?
205 pci* at mvpex?
206
207 # PCI bus support
208 options PCI_NETBSD_CONFIGURE
209 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
210
211 pchb* at pci? dev ? function ? # PCI-Host bridges
212
213 # On-chip Serial-ATA (SATA) II Interface
214 mvsata* at mvsoc? offset ? irq ?
215
216 # ATA (IDE) bus support
217 atabus* at ata?
218 #options ATADEBUG
219
220 # IDE drives
221 wd* at atabus? drive ? flags 0x0000
222
223 # On-chip USB 2.0 Interface
224 ehci* at mvsoc? offset ? irq ?
225
226 # On-chip Secure Digital Input/Output Host Controller
227 sdhc* at mvsoc? offset ? irq ?
228 sdmmc* at sdhc?
229
230 ld* at sdmmc?
231
232 # On-chip Serial Peripheral Interface (SPI)
233 mvspi* at mvsoc? offset ? irq ?
234 spi* at mvspi?
235
236 m25p0 at spi? slave 0
237 spiflash0 at spiflashbus?
238
239 # On-chip Two-Wire Serial Interface (TWSI)
240 gttwsi* at mvsoc? offset ? irq ?
241 iic* at gttwsi?
242
243 #TDA998x at iic? addr 0x34 # HDMI transmitters
244 #Si5351A at iic? addr 0x60 # Programmable Any-Frequency CMOS Clock Generator
245 #lcdc at iic? addr 0x70
246
247 # On-chip UART Interface
248 com* at mvsoc? offset ? irq ?
249
250 # On-chip Real Time Clock (RTC)
251 mvsocrtc* at mvsoc? offset ? irq ?
252
253 # On-chip Timers
254 mvsoctmr* at mvsoc? offset ? irq ?
255
256
257 # USB bus support
258 usb* at ehci?
259
260 # USB Hubs
261 uhub* at usb?
262 uhub* at uhub? port ?
263
264 # USB HID device
265 uhidev* at uhub? port ? configuration ? interface ?
266
267 # USB Mice
268 ums* at uhidev? reportid ?
269 wsmouse* at ums? mux 0
270
271 # USB Keyboards
272 ukbd* at uhidev? reportid ?
273 wskbd* at ukbd? console ? mux 1
274
275 # USB Mass Storage
276 umass* at uhub? port ? configuration ? interface ?
277 scsibus* at scsi?
278 sd* at scsibus? target ? lun ? # SCSI disk drives
279 cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
280
281 # Serial adapters
282 uftdi* at uhub? port ? # FTDI FT8U100AX serial adapter
283 ucom* at uftdi? portno ?
284
285 uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter
286 ucom* at uplcom? portno ?
287
288 # USB Generic driver
289 ugen* at uhub? port ?
290
291
292 # Pseudo-Devices
293
294 pseudo-device crypto # /dev/crypto device
295 pseudo-device swcrypto # software crypto implementation
296
297 # disk/mass storage pseudo-devices
298 pseudo-device bio # RAID control device driver
299 pseudo-device ccd # concatenated/striped disk devices
300 pseudo-device cgd # cryptographic disk devices
301 pseudo-device raid # RAIDframe disk driver
302 #options RAID_AUTOCONFIG # auto-configuration of RAID components
303 #Options to enable various other RAIDframe RAID types.
304 #options RF_INCLUDE_EVENODD=1
305 #options RF_INCLUDE_RAID5_RS=1
306 #options RF_INCLUDE_PARITYLOGGING=1
307 #options RF_INCLUDE_CHAINDECLUSTER=1
308 #options RF_INCLUDE_INTERDECLUSTER=1
309 #options RF_INCLUDE_PARITY_DECLUSTERING=1
310 #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
311 pseudo-device fss # file system snapshot device
312 pseudo-device putter # for puffs and pud
313
314 pseudo-device vnd # disk-like interface to files
315 options VND_COMPRESSION # compressed vnd(4)
316
317
318 # network pseudo-devices
319 pseudo-device bpfilter # Berkeley packet filter
320 #pseudo-device carp # Common Address Redundancy Protocol
321 #pseudo-device npf # NPF packet filter
322 pseudo-device loop # network loopback
323 #pseudo-device ifmpls # MPLS pseudo-interface
324 pseudo-device ppp # Point-to-Point Protocol
325 pseudo-device pppoe # PPP over Ethernet (RFC 2516)
326 pseudo-device sl # Serial Line IP
327 pseudo-device irframetty # IrDA frame line discipline
328 pseudo-device tun # network tunneling over tty
329 pseudo-device tap # virtual Ethernet
330 pseudo-device gre # generic L3 over IP tunnel
331 pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
332 #pseudo-device faith # IPv[46] tcp relay translation i/f
333 pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
334 pseudo-device vlan # IEEE 802.1q encapsulation
335 pseudo-device bridge # simple inter-network bridging
336 pseudo-device vether # Virtual Ethernet for bridge
337 pseudo-device agr # IEEE 802.3ad link aggregation
338 #pseudo-device npf # NPF packet filter
339
340 #
341 # accept filters
342 pseudo-device accf_data # "dataready" accept filter
343 pseudo-device accf_http # "httpready" accept filter
344
345 # miscellaneous pseudo-devices
346 pseudo-device pty # pseudo-terminals
347 pseudo-device sequencer # MIDI sequencer
348 #options RND_COM # use "com" randomness as well (BROKEN)
349 pseudo-device clockctl # user control of clock subsystem
350 pseudo-device ksyms # /dev/ksyms
351
352 # a pseudo device needed for Coda # also needs CODA (above)
353 pseudo-device vcoda # coda minicache <-> venus comm.
354
355 # wscons pseudo-devices
356 pseudo-device wsmux # mouse & keyboard multiplexor
357 pseudo-device wsfont
358
359 # pseudo audio device driver
360 #pseudo-device pad
361
362 # userland interface to drivers, including autoconf and properties retrieval
363 pseudo-device drvctl
364
365 # Veriexec
366 include "dev/veriexec.config"
367
368 options PAX_MPROTECT=0 # PaX mprotect(2) restrictions
369 options PAX_ASLR=0 # PaX Address Space Layout Randomization
370