1#	$NetBSD: CI20,v 1.34 2024/01/29 18:27:11 christos Exp $
2#
3# MIPS Creator CI20
4#
5
6include 	"arch/evbmips/conf/std.ingenic"
7
8#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
9
10#ident 		"CI20-$Revision: 1.34 $"
11
12maxusers	32
13
14#makeoptions	COPTS="-Os"		# Optimise for space. Implies -O2
15
16options 	MIPS32R2
17makeoptions	CPUFLAGS+="-mips32r2"
18makeoptions	NEED_BINARY="yes"
19makeoptions	NEED_UBOOTIMAGE="gz"
20options 	COM_TOLERANCE=50	# +/- 5%
21options 	CONSPEED=115200	# u-boot default
22
23# Options for necessary to use MD
24#makeoptions	NEED_MDSETIMAGE="yes"
25#options 	MEMORY_DISK_HOOKS
26#options 	MEMORY_DISK_IS_ROOT	# force root on memory disk
27#options 	MEMORY_DISK_SERVER=0	# no userspace memory disk support
28#options 	MEMORY_DISK_ROOT_SIZE=6144	# size of memory disk, in blocks
29#options 	MEMORY_DISK_ROOT_SIZE=16384	# size of memory disk, in blocks
30#options 	MEMORY_DISK_ROOT_SIZE=7300
31
32# Size reduction options
33#options 	VNODE_OP_NOINLINE
34#options 	PIPE_SOCKETPAIR
35options		SOSEND_NO_LOAN
36
37# Standard system options
38options 	KTRACE		# system call tracing support
39#options 	SYSVMSG		# System V message queues
40#options 	SYSVSEM		# System V semaphores
41#options 	SYSVSHM		# System V shared memory
42options 	NTP		# network time protocol
43
44# Debugging options
45options 	DIAGNOSTIC	# extra kernel sanity checking
46#options 	DEBUG		# extra kernel debugging support
47#options 	USERCONF	# userconf(4) support
48#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
49options 	DDB		# kernel dynamic debugger
50options 	DDB_HISTORY_SIZE=100 # enable history editing in DDB
51makeoptions 	DEBUG="-g"	# compile full symbol table
52makeoptions	COPY_SYMTAB=1	# size for embedded symbol table
53
54#options 	INGENIC_DEBUG
55#options 	INGENIC_CLOCK_DEBUG
56#options 	INGENIC_INTR_DEBUG	# *very* spammy
57
58# Compatibility options
59include         "conf/compat_netbsd16.config"
60
61#options 	EXEC_ECOFF	# exec ECOFF binaries
62#options 	COMPAT_ULTRIX	# binary compatibility with Ultrix
63
64# File systems
65file-system	FFS		# Berkeley Fast Filesystem
66#file-system	MFS		# memory-based filesystem
67#file-system 	EXT2FS		# second extended file system (linux)
68file-system	NFS		# Sun NFS-compatible filesystem client
69file-system	KERNFS		# kernel data-structure filesystem
70#file-system	NULLFS		# NULL layered filesystem
71#file-system 	OVERLAY		# overlay file system
72#file-system	FDESC		# user file descriptor filesystem
73#file-system	UMAPFS		# uid/gid remapping filesystem
74#file-system	LFS		# Log-based filesystem (still experimental)
75file-system	PROCFS		# /proc
76#file-system	CD9660		# ISO 9660 + Rock Ridge file system
77#file-system	UNION		# union file system
78file-system	MSDOSFS		# MS-DOS FAT filesystem(s).
79#file-system 	CODA		# Coda File System; also needs vcoda (below)
80file-system	PTYFS		# /dev/pts/N support
81file-system	TMPFS		# Efficient memory file-system
82
83# File system options
84#options 	FFS_EI		# FFS Endian Independent support
85options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
86#options 	QUOTA		# legacy UFS quotas
87#options 	QUOTA2		# new, in-filesystem UFS quotas
88#options 	UFS_DIRHASH	# UFS Large Directory Hashing
89#options 	UFS_EXTATTR	# Extended attribute support for UFS1
90options 	WAPBL		# File system journaling support
91#options 	DISKLABEL_EI	# disklabel Endian Independent support
92#options 	NFSSERVER	# Network File System server
93
94# Alternate buffer queue strategies for better responsiveness under high
95# disk I/O load.
96#options 	BUFQ_READPRIO
97options 	BUFQ_PRIOCSCAN
98
99# Networking options
100#options 	GATEWAY		# IP packet forwarding
101options 	INET		# Internet protocols
102options 	INET6		# IPV6
103#options 	IPSEC		# IP security
104#options 	IPSEC_DEBUG	# debug for IP security
105#options 	MROUTING	# packet forwarding of multicast packets
106#options 	PIM		# Protocol Independent Multicast
107#options 	NETATALK	# AppleTalk (over Ethernet) protocol
108#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
109#options 	PPP_DEFLATE	# Deflate compression support for PPP
110#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
111
112# JIT compiler for bpfilter
113#options	SLJIT
114#options	BPFJIT
115
116# These options enable verbose messages for several subsystems.
117# Warning, these may compile large string tables into the kernel!
118options 	MIIVERBOSE	# verbose PHY autoconfig messages
119
120options 	NFS_BOOT_BOOTP
121options 	NFS_BOOT_DHCP
122#options 	NFS_V2_ONLY
123
124config		netbsd	root on sd0a type ffs
125#config		netbsd	root on axe0 type nfs
126#config		netbsd	root on dme0 type nfs
127
128mainbus0 	at root
129#options 	MULTIPROCESSOR
130
131cpu* 		at mainbus?
132#wdog0		at mainbus?
133apbus0		at mainbus?
134
135# On-chip UARTs
136com*		at apbus?
137
138# EFUSE
139efuse* 		at apbus?
140
141# On-chip USB
142dwctwo* 	at apbus?
143#options 	DWC2_DEBUG
144usb* 		at dwctwo?
145
146ohci*		at apbus?
147usb* 		at ohci?
148
149# this one doesn't work right just yet
150ehci*		at apbus?
151#options 	INGENIC_EHCI_DEBUG
152#options 	EHCI_DEBUG
153#options 	USBVERBOSE
154#options 	USBHIST
155usb* 		at ehci?
156
157# onboard ethernet
158dme*		at apbus?
159
160# I2C/SMBus
161jziic* 		at apbus?
162#options 	JZIIC_DEBUG	# spammy
163iic* 		at jziic?
164
165# voltage control and the like, no driver yet
166#act8600pm0 	at iic0 addr 0x5a
167
168# XXX
169# the manual says there's a Pericom RTC at SMB4 addr 0x68
170# on my preproduction CI20 that's not the case, instead there's something that
171# looks like a PCF8563 at addr 0x51
172 
173# the Pericom PT7C4337 seems to be a DS1339 clone
174#dsrtc0 	at iic4 addr 0x68 flags 1339
175
176# at least some CI20 have this instead
177pcf8563rtc0	at iic4 addr 0x51
178
179#jzgpio* 	at apbus? addr ?
180#gpio*		at jzgpio?
181
182# MSC / SDMMC - unfinished
183#jzmmc* 		at apbus?
184#options 	JZMMC_DEBUG
185#sdmmc* 		at jzmmc?
186#ld* 		at sdmmc?
187
188# USB stuff
189uhub*		at usb?
190uhub*		at uhub? port ?
191
192# USB HID device
193uhidev*	at uhub? port ? configuration ? interface ?
194
195# USB Mice
196ums*		at uhidev? reportid ?
197wsmouse*	at ums? mux 0
198
199# USB Keyboards
200ukbd*	at uhidev? reportid ?
201wskbd*	at ukbd? console ? mux 1
202
203# USB Generic HID devices
204uhid*	at uhidev? reportid ?
205
206# USB Mass Storage
207umass*	at uhub? port ? configuration ? interface ?
208scsibus*	at umass? channel ?
209sd*		at scsibus? target ? lun ?	# SCSI disk drives
210cd*		at scsibus? target ? lun ?	# SCSI CD-ROM drives
211
212# Ethernet
213#axe*	at uhub? port ?
214#urtwn*	at uhub? port ?
215
216# Random number generator
217jzrng0	at apbus0
218
219# MII/PHY support
220#acphy*		at mii? phy ?		# DAltima AC101 and AMD Am79c874 PHYs
221#amhphy* 	at mii? phy ?		# AMD 79c901 Ethernet PHYs
222dmphy*		at mii? phy ?		# Davicom DM9101 PHYs
223#glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
224#gphyter*	at mii? phy ?		# NS83861 Gig-E PHY
225#icsphy* 	at mii? phy ?		# Integrated Circuit Systems ICS1890
226#lxtphy* 	at mii? phy ?		# Level One LXT-970 PHYs
227#makphy* 	at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
228#nsphy*		at mii? phy ?		# NS83840 PHYs
229#nsphyter*	at mii? phy ?		# NS83843 PHYs
230#pnaphy* 	at mii? phy ?		# generic HomePNA PHYs
231#qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
232#sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
233#tlphy*		at mii? phy ?		# ThunderLAN PHYs
234#tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
235#rlphy*		at mii? phy ?		# RealTek PHYs
236ukphy*		at mii? phy ?		# generic unknown PHYs
237
238
239# Pseudo-devices
240
241# Disk/mass storage pseudo-devices
242#pseudo-device	ccd				# concatenated disk devices
243#pseudo-device	raid				# RAIDframe disk driver
244#pseudo-device	fss				# file system snapshot device
245#pseudo-device	md				# memory disk device (ramdisk)
246#pseudo-device	vnd				# disk-like interface to files
247
248# Network pseudo-devices
249pseudo-device	bpfilter			# Berkeley packet filter
250pseudo-device 	carp				# Common Address Redundancy Protocol
251#pseudo-device	npf			# NPF packet filter
252pseudo-device	loop				# network loopback
253#pseudo-device	ppp				# Point-to-Point Protocol
254#pseudo-device	sl				# Serial Line IP
255#pseudo-device	tun				# network tunneling over tty
256#pseudo-device	tap				# virtual Ethernet
257#pseudo-device	gre				# generic L3 over IP tunnel
258#pseudo-device	ipip				# RFC 2003 IP Encapsulation
259#pseudo-device	gif				# RFC1933 tunnel
260#pseudo-device	faith				# IPv[46] tcp relay translation
261#pseudo-device	stf				# 6to4 IPv6 over IPv4 encapsulation
262#pseudo-device	vlan				# IEEE 802.1q encapsulation
263#pseudo-device	bridge				# simple inter-network bridging
264#pseudo-device	vether				# Virtual Ethernet for bridge
265
266# Miscellaneous pseudo-devices
267pseudo-device	pty				# pseudo-terminals
268pseudo-device	clockctl			# user control of clock subsystem
269pseudo-device	ksyms				# /dev/ksyms
270
271# A pseudo device needed for Coda		# also needs CODA (above)
272#pseudo-device	vcoda				# coda minicache <-> venus comm.
273
274include "dev/veriexec.config"
275
276# Pull in optional local configuration - always at end
277cinclude 	"arch/evbmips/conf/CI20.local"
278