CUBOX revision 1.8 1 # $NetBSD: CUBOX,v 1.8 2018/07/12 10:46:43 maxv 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 PMAP_DEBUG # Enable pmap_debug_level code
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 IPKDB # remote kernel debugging
67 #options KGDB
68 #options KGDB_DEVRATE=115200
69 makeoptions DEBUG="-g" # compile full symbol table
70 makeoptions COPY_SYMTAB=1
71 #options SYSCALL_STATS # per syscall counts
72 #options SYSCALL_TIMES # per syscall times
73 #options SYSCALL_TIMES_HASCOUNTER # use 'broken' rdtsc (soekris)
74
75
76 # Compatibility options
77
78 include "conf/compat_netbsd60.config"
79 options COMPAT_NETBSD32 # allow running arm (e.g. non-earm) binaries
80
81 options COMPAT_OSSAUDIO # OSS (Voxware) audio driver compatibility
82 #options COMPAT_NDIS # NDIS network driver
83
84 # Wedge support
85 options DKWEDGE_AUTODISCOVER # Automatically add dk(4) instances
86 options DKWEDGE_METHOD_GPT # Supports GPT partitions as wedges
87
88 # File systems
89 file-system FFS # UFS
90 file-system MFS # memory file system
91 file-system NFS # Network File System client
92 file-system TMPFS # Efficient memory file-system
93 file-system EXT2FS # second extended file system (linux)
94 file-system LFS # log-structured file system
95 file-system NTFS # Windows/NT file system (experimental)
96 file-system CD9660 # ISO 9660 + Rock Ridge file system
97 file-system MSDOSFS # MS-DOS file system
98 file-system FDESC # /dev/fd
99 file-system KERNFS # /kern
100 file-system NULLFS # loopback file system
101 file-system OVERLAY # overlay file system
102 file-system PROCFS # /proc
103 file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs)
104 file-system SMBFS # experimental - CIFS; also needs nsmb (below)
105 file-system UMAPFS # NULLFS + uid and gid remapping
106 file-system UNION # union file system
107 file-system CODA # Coda File System; also needs vcoda (below)
108 file-system PTYFS # /dev/ptm support
109 #file-system UDF # experimental - OSTA UDF CD/DVD file-system
110 #file-system HFS # experimental - Apple HFS+ (read-only)
111 #file-system NILFS # experimental - NTT's NiLFS(2)
112
113 # File system options
114 options QUOTA # legacy UFS quotas
115 options QUOTA2 # new, in-filesystem UFS quotas
116 #options DISKLABEL_EI # disklabel Endian Independent support
117 options FFS_EI # FFS Endian Independent support
118 options WAPBL # File system journaling support
119 # Note that UFS_DIRHASH is suspected of causing kernel memory corruption.
120 # It is not recommended for general use.
121 #options UFS_DIRHASH # UFS Large Directory Hashing - Experimental
122 options NFSSERVER # Network File System server
123 #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
124 # immutable) behave as system flags.
125 #options FFS_NO_SNAPSHOT # No FFS snapshot support
126
127 # Networking options
128 #options GATEWAY # packet forwarding
129 options INET # IP + ICMP + TCP + UDP
130 options INET6 # IPv6
131 options IPSEC # IP security
132 #options IPSEC_DEBUG # debug for IP security
133 #options MPLS # MultiProtocol Label Switching (needs ifmpls)
134 #options MROUTING # IP multicast routing
135 #options PIM # Protocol Independent Multicast
136 options NETATALK # AppleTalk networking protocols
137 options PPP_BSDCOMP # BSD-Compress compression support for PPP
138 options PPP_DEFLATE # Deflate compression support for PPP
139 options PPP_FILTER # Active filter support for PPP (requires bpf)
140 options IPFILTER_LOG # ipmon(8) log support
141 options IPFILTER_LOOKUP # ippool(8) support
142 options IPFILTER_COMPAT # Compat for IP-Filter
143 #options IPFILTER_DEFAULT_BLOCK # block all packets by default
144 #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG
145
146 #options ALTQ # Manipulate network interfaces' output queues
147 #options ALTQ_BLUE # Stochastic Fair Blue
148 #options ALTQ_CBQ # Class-Based Queueing
149 #options ALTQ_CDNR # Diffserv Traffic Conditioner
150 #options ALTQ_FIFOQ # First-In First-Out Queue
151 #options ALTQ_FLOWVALVE # RED/flow-valve (red-penalty-box)
152 #options ALTQ_HFSC # Hierarchical Fair Service Curve
153 #options ALTQ_LOCALQ # Local queueing discipline
154 #options ALTQ_PRIQ # Priority Queueing
155 #options ALTQ_RED # Random Early Detection
156 #options ALTQ_RIO # RED with IN/OUT
157 #options ALTQ_WFQ # Weighted Fair Queueing
158
159 # Device options
160
161 # These options enable verbose messages for several subsystems.
162 # Warning, these may compile large string tables into the kernel!
163 options MIIVERBOSE # verbose PHY autoconfig messages
164 #options PCIVERBOSE # verbose PCI device autoconfig messages
165 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
166 #options PCMCIAVERBOSE # verbose PCMCIA configuration messages
167 #options SCSIVERBOSE # Verbose SCSI errors
168 #options USBVERBOSE # verbose USB device autoconfig messages
169
170 # Kernel root file system and dump configuration.
171 config netbsd root on ? type ?
172
173 options NFS_BOOT_BOOTP
174 options NFS_BOOT_DHCP
175 #options NFS_BOOT_BOOTPARAM
176 #options NFS_BOOT_BOOTSTATIC
177 #options NFS_BOOTSTATIC_MYIP="\"192.168.0.2\""
178 #options NFS_BOOTSTATIC_GWIP="\"192.168.0.1\""
179 #options NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
180 #options NFS_BOOTSTATIC_SERVADDR="\"192.168.0.3\""
181 #options NFS_BOOTSTATIC_SERVER="\"192.168.0.3:/nfs/cubox\""
182
183
184 #
185 # Device configuration
186 #
187
188 mainbus0 at root
189
190 cpu* at mainbus?
191
192 # Marvell 88AP510 Dove System-on-chip
193 mvsoc0 at mainbus?
194 #options MVSOC_CONSOLE_EARLY
195
196 # On-chip Power Management Unit
197 mvsocpmu* at mvsoc? offset ? irq ?
198
199 # On-chip Gigabit Ethernet Controller
200 mvgbec* at mvsoc? offset ?
201 mvgbe* at mvgbec? port ? irq ?
202
203 # MII/PHY support
204 makphy* at mii? phy ?
205
206 # On-chip Cryptographic Engines and Security Accelerator (CESA)
207 mvcesa* at mvsoc? offset ? irq ?
208
209 # On-chip XOR DMA Engine
210 gtidmac* at mvsoc? offset ? irq ?
211
212 # On-chip PCI Express Interface
213 mvpex* at mvsoc? offset ? irq ?
214 pci* at mvpex?
215
216 # PCI bus support
217 options PCI_NETBSD_CONFIGURE
218 #options PCI_CONFIG_DUMP # verbosely dump PCI config space
219
220 pchb* at pci? dev ? function ? # PCI-Host bridges
221
222 # On-chip Serial-ATA (SATA) II Interface
223 mvsata* at mvsoc? offset ? irq ?
224
225 # ATA (IDE) bus support
226 atabus* at ata?
227 #options ATADEBUG
228
229 # IDE drives
230 wd* at atabus? drive ? flags 0x0000
231
232 # On-chip USB 2.0 Interface
233 ehci* at mvsoc? offset ? irq ?
234
235 # On-chip Secure Digital Input/Output Host Controller
236 sdhc* at mvsoc? offset ? irq ?
237 sdmmc* at sdhc?
238
239 ld* at sdmmc?
240
241 # On-chip Serial Peripheral Interface (SPI)
242 mvspi* at mvsoc? offset ? irq ?
243 spi* at mvspi?
244
245 m25p0 at spi? slave 0
246 spiflash0 at spiflashbus?
247
248 # On-chip Two-Wire Serial Interface (TWSI)
249 gttwsi* at mvsoc? offset ? irq ?
250 iic* at gttwsi?
251
252 #TDA998x at iic? addr 0x34 # HDMI transmitters
253 #Si5351A at iic? addr 0x60 # Programmable Any-Frequency CMOS Clock Generator
254 #lcdc at iic? addr 0x70
255
256 # On-chip UART Interface
257 com* at mvsoc? offset ? irq ?
258
259 # On-chip Real Time Clock (RTC)
260 mvsocrtc* at mvsoc? offset ? irq ?
261
262 # On-chip Timers
263 mvsoctmr* at mvsoc? offset ? irq ?
264
265
266 # USB bus support
267 usb* at ehci?
268
269 # USB Hubs
270 uhub* at usb?
271 uhub* at uhub? port ?
272
273 # USB HID device
274 uhidev* at uhub? port ? configuration ? interface ?
275
276 # USB Mice
277 ums* at uhidev? reportid ?
278 wsmouse* at ums? mux 0
279
280 # USB Keyboards
281 ukbd* at uhidev? reportid ?
282 wskbd* at ukbd? console ? mux 1
283
284 # USB Mass Storage
285 umass* at uhub? port ? configuration ? interface ?
286 wd* at umass?
287 scsibus* at scsi?
288 sd* at scsibus? target ? lun ? # SCSI disk drives
289 cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
290
291 # Serial adapters
292 uftdi* at uhub? port ? # FTDI FT8U100AX serial adapter
293 ucom* at uftdi? portno ?
294
295 uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter
296 ucom* at uplcom? portno ?
297
298 # USB Generic driver
299 ugen* at uhub? port ?
300
301
302 # Pseudo-Devices
303
304 pseudo-device crypto # /dev/crypto device
305 pseudo-device swcrypto # software crypto implementation
306
307 # disk/mass storage pseudo-devices
308 pseudo-device bio # RAID control device driver
309 pseudo-device ccd # concatenated/striped disk devices
310 pseudo-device cgd # cryptographic disk devices
311 pseudo-device raid # RAIDframe disk driver
312 #options RAID_AUTOCONFIG # auto-configuration of RAID components
313 #Options to enable various other RAIDframe RAID types.
314 #options RF_INCLUDE_EVENODD=1
315 #options RF_INCLUDE_RAID5_RS=1
316 #options RF_INCLUDE_PARITYLOGGING=1
317 #options RF_INCLUDE_CHAINDECLUSTER=1
318 #options RF_INCLUDE_INTERDECLUSTER=1
319 #options RF_INCLUDE_PARITY_DECLUSTERING=1
320 #options RF_INCLUDE_PARITY_DECLUSTERING_DS=1
321 pseudo-device fss # file system snapshot device
322 pseudo-device putter # for puffs and pud
323
324 pseudo-device vnd # disk-like interface to files
325 options VND_COMPRESSION # compressed vnd(4)
326
327
328 # network pseudo-devices
329 pseudo-device bpfilter # Berkeley packet filter
330 #pseudo-device carp # Common Address Redundancy Protocol
331 #pseudo-device ipfilter # IP filter (firewall) and NAT
332 pseudo-device loop # network loopback
333 #pseudo-device ifmpls # MPLS pseudo-interface
334 pseudo-device ppp # Point-to-Point Protocol
335 pseudo-device pppoe # PPP over Ethernet (RFC 2516)
336 pseudo-device sl # Serial Line IP
337 pseudo-device strip # Starmode Radio IP (Metricom)
338 pseudo-device irframetty # IrDA frame line discipline
339 pseudo-device tun # network tunneling over tty
340 pseudo-device tap # virtual Ethernet
341 pseudo-device gre # generic L3 over IP tunnel
342 pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933)
343 #pseudo-device faith # IPv[46] tcp relay translation i/f
344 pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation
345 pseudo-device vlan # IEEE 802.1q encapsulation
346 pseudo-device bridge # simple inter-network bridging
347 #options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too
348 pseudo-device agr # IEEE 802.3ad link aggregation
349 #pseudo-device pf # PF packet filter
350 #pseudo-device pflog # PF log if
351 #pseudo-device pfsync # PF sync if
352 #pseudo-device npf # NPF packet filter
353
354 #
355 # accept filters
356 pseudo-device accf_data # "dataready" accept filter
357 pseudo-device accf_http # "httpready" accept filter
358
359 # miscellaneous pseudo-devices
360 pseudo-device pty # pseudo-terminals
361 pseudo-device sequencer # MIDI sequencer
362 # rnd works; RND_COM does not on port i386 yet.
363 #options RND_COM # use "com" randomness as well (BROKEN)
364 pseudo-device clockctl # user control of clock subsystem
365 pseudo-device ksyms # /dev/ksyms
366
367 # a pseudo device needed for Coda # also needs CODA (above)
368 pseudo-device vcoda # coda minicache <-> venus comm.
369
370 # a pseudo device needed for SMBFS
371 pseudo-device nsmb # experimental - SMB requester
372
373 # wscons pseudo-devices
374 pseudo-device wsmux # mouse & keyboard multiplexor
375 pseudo-device wsfont
376
377 # pseudo audio device driver
378 #pseudo-device pad
379
380 # userland interface to drivers, including autoconf and properties retrieval
381 pseudo-device drvctl
382
383 options FILEASSOC # fileassoc(9) - required for Veriexec
384
385 # Veriexec
386 #
387 # a pseudo device needed for veriexec
388 pseudo-device veriexec
389 #
390 # Uncomment the fingerprint methods below that are desired. Note that
391 # removing fingerprint methods will have almost no impact on the kernel
392 # code size.
393 #
394 options VERIFIED_EXEC_FP_SHA256
395 options VERIFIED_EXEC_FP_SHA384
396 options VERIFIED_EXEC_FP_SHA512
397
398 options PAX_MPROTECT=0 # PaX mprotect(2) restrictions
399 options PAX_ASLR=0 # PaX Address Space Layout Randomization
400