CI20 revision 1.32
11.32Ssimonb#	$NetBSD: CI20,v 1.32 2022/08/07 02:52:25 simonb Exp $
21.1Smacallan#
31.1Smacallan# MIPS Creator CI20
41.1Smacallan#
51.1Smacallan
61.1Smacallaninclude 	"arch/evbmips/conf/std.ingenic"
71.1Smacallan
81.1Smacallan#options 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
91.1Smacallan
101.32Ssimonb#ident 		"CI20-$Revision: 1.32 $"
111.1Smacallan
121.1Smacallanmaxusers	32
131.1Smacallan
141.1Smacallan#makeoptions	COPTS="-Os"		# Optimise for space. Implies -O2
151.1Smacallan
161.1Smacallanoptions 	MIPS32R2
171.1Smacallanmakeoptions	CPUFLAGS+="-mips32r2"
181.1Smacallanmakeoptions	NEED_BINARY="yes"
191.1Smacallanmakeoptions	NEED_UBOOTIMAGE="gz"
201.3Smacallanoptions 	COM_TOLERANCE=50	# +/- 5%
211.1Smacallanoptions 	CONSPEED=115200	# u-boot default
221.1Smacallan
231.1Smacallan# Options for necessary to use MD
241.23Smrg#makeoptions	NEED_MDSETIMAGE="yes"
251.1Smacallan#options 	MEMORY_DISK_HOOKS
261.1Smacallan#options 	MEMORY_DISK_IS_ROOT	# force root on memory disk
271.1Smacallan#options 	MEMORY_DISK_SERVER=0	# no userspace memory disk support
281.1Smacallan#options 	MEMORY_DISK_ROOT_SIZE=6144	# size of memory disk, in blocks
291.1Smacallan#options 	MEMORY_DISK_ROOT_SIZE=16384	# size of memory disk, in blocks
301.1Smacallan#options 	MEMORY_DISK_ROOT_SIZE=7300
311.1Smacallan
321.1Smacallan# Size reduction options
331.1Smacallan#options 	VNODE_OP_NOINLINE
341.1Smacallan#options 	PIPE_SOCKETPAIR
351.1Smacallanoptions		SOSEND_NO_LOAN
361.1Smacallan
371.1Smacallan# Standard system options
381.1Smacallanoptions 	KTRACE		# system call tracing support
391.1Smacallan#options 	SYSVMSG		# System V message queues
401.1Smacallan#options 	SYSVSEM		# System V semaphores
411.1Smacallan#options 	SYSVSHM		# System V shared memory
421.1Smacallanoptions 	NTP		# network time protocol
431.1Smacallan
441.1Smacallan# Debugging options
451.1Smacallanoptions 	DIAGNOSTIC	# extra kernel sanity checking
461.14Smacallan#options 	DEBUG		# extra kernel debugging support
471.1Smacallan#options 	USERCONF	# userconf(4) support
481.1Smacallan#options 	SYSCTL_INCLUDE_DESCR	# Include sysctl descriptions in kernel
491.1Smacallanoptions 	DDB		# kernel dynamic debugger
501.1Smacallanoptions 	DDB_HISTORY_SIZE=100 # enable history editing in DDB
511.1Smacallanmakeoptions 	DEBUG="-g"	# compile full symbol table
521.1Smacallanmakeoptions	COPY_SYMTAB=1	# size for embedded symbol table
531.1Smacallan
541.8Smacallan#options 	INGENIC_DEBUG
551.8Smacallan#options 	INGENIC_CLOCK_DEBUG
561.6Smacallan#options 	INGENIC_INTR_DEBUG	# *very* spammy
571.5Smacallan
581.1Smacallan# Compatibility options
591.25Smrginclude         "conf/compat_netbsd16.config"
601.25Smrg
611.1Smacallan#options 	EXEC_ECOFF	# exec ECOFF binaries
621.1Smacallan#options 	COMPAT_ULTRIX	# binary compatibility with Ultrix
631.1Smacallan
641.1Smacallan# File systems
651.1Smacallanfile-system	FFS		# Berkeley Fast Filesystem
661.8Smacallan#file-system	MFS		# memory-based filesystem
671.1Smacallan#file-system 	EXT2FS		# second extended file system (linux)
681.1Smacallanfile-system	NFS		# Sun NFS-compatible filesystem client
691.8Smacallanfile-system	KERNFS		# kernel data-structure filesystem
701.1Smacallan#file-system	NULLFS		# NULL layered filesystem
711.1Smacallan#file-system 	OVERLAY		# overlay file system
721.1Smacallan#file-system	FDESC		# user file descriptor filesystem
731.1Smacallan#file-system	UMAPFS		# uid/gid remapping filesystem
741.1Smacallan#file-system	LFS		# Log-based filesystem (still experimental)
751.8Smacallanfile-system	PROCFS		# /proc
761.1Smacallan#file-system	CD9660		# ISO 9660 + Rock Ridge file system
771.1Smacallan#file-system	UNION		# union file system
781.8Smacallanfile-system	MSDOSFS		# MS-DOS FAT filesystem(s).
791.1Smacallan#file-system 	CODA		# Coda File System; also needs vcoda (below)
801.8Smacallanfile-system	PTYFS		# /dev/pts/N support
811.8Smacallanfile-system	TMPFS		# Efficient memory file-system
821.1Smacallan
831.1Smacallan# File system options
841.32Ssimonb#options 	FFS_EI		# FFS Endian Independent support
851.32Ssimonboptions 	FFS_NO_SNAPSHOT	# No FFS snapshot support
861.1Smacallan#options 	QUOTA		# legacy UFS quotas
871.1Smacallan#options 	QUOTA2		# new, in-filesystem UFS quotas
881.32Ssimonb#options 	UFS_DIRHASH	# UFS Large Directory Hashing
891.32Ssimonb#options 	UFS_EXTATTR	# Extended attribute support for UFS1
901.1Smacallanoptions 	WAPBL		# File system journaling support
911.1Smacallan#options 	EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
921.1Smacallan				# immutable) behave as system flags.
931.32Ssimonb#options 	DISKLABEL_EI	# disklabel Endian Independent support
941.32Ssimonb#options 	NFSSERVER	# Network File System server
951.1Smacallan
961.27Ssevan# Alternate buffer queue strategies for better responsiveness under high
971.27Ssevan# disk I/O load.
981.27Ssevan#options 	BUFQ_READPRIO
991.27Ssevanoptions 	BUFQ_PRIOCSCAN
1001.27Ssevan
1011.1Smacallan# Networking options
1021.1Smacallan#options 	GATEWAY		# IP packet forwarding
1031.1Smacallanoptions 	INET		# Internet protocols
1041.8Smacallanoptions 	INET6		# IPV6
1051.1Smacallan#options 	IPSEC		# IP security
1061.1Smacallan#options 	IPSEC_DEBUG	# debug for IP security
1071.1Smacallan#options 	MROUTING	# packet forwarding of multicast packets
1081.1Smacallan#options 	PIM		# Protocol Independent Multicast
1091.1Smacallan#options 	NETATALK	# AppleTalk (over Ethernet) protocol
1101.1Smacallan#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1111.1Smacallan#options 	PPP_DEFLATE	# Deflate compression support for PPP
1121.1Smacallan#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1131.1Smacallan
1141.1Smacallan# JIT compiler for bpfilter
1151.1Smacallan#options	SLJIT
1161.1Smacallan#options	BPFJIT
1171.1Smacallan
1181.1Smacallan# These options enable verbose messages for several subsystems.
1191.1Smacallan# Warning, these may compile large string tables into the kernel!
1201.1Smacallanoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1211.1Smacallan
1221.1Smacallanoptions 	NFS_BOOT_BOOTP
1231.8Smacallanoptions 	NFS_BOOT_DHCP
1241.1Smacallan#options 	NFS_V2_ONLY
1251.1Smacallan
1261.8Smacallanconfig		netbsd	root on sd0a type ffs
1271.8Smacallan#config		netbsd	root on axe0 type nfs
1281.14Smacallan#config		netbsd	root on dme0 type nfs
1291.1Smacallan
1301.1Smacallanmainbus0 	at root
1311.12Smacallan#options 	MULTIPROCESSOR
1321.14Smacallan
1331.21Smacallancpu* 		at mainbus?
1341.1Smacallan#wdog0		at mainbus?
1351.4Smacallanapbus0		at mainbus?
1361.3Smacallan
1371.14Smacallan# On-chip UARTs
1381.14Smacallancom*		at apbus?
1391.14Smacallan
1401.19Smacallan# EFUSE
1411.19Smacallanefuse* 		at apbus?
1421.19Smacallan
1431.14Smacallan# On-chip USB
1441.11Smacallandwctwo* 	at apbus?
1451.7Smacallan#options 	DWC2_DEBUG
1461.5Smacallanusb* 		at dwctwo?
1471.9Smacallan
1481.11Smacallanohci*		at apbus?
1491.9Smacallanusb* 		at ohci?
1501.9Smacallan
1511.14Smacallan# this one doesn't work right just yet
1521.19Smacallanehci*		at apbus?
1531.14Smacallan#options 	INGENIC_EHCI_DEBUG
1541.14Smacallan#options 	EHCI_DEBUG
1551.14Smacallan#options 	USBVERBOSE
1561.19Smacallan#options 	USBHIST
1571.19Smacallanusb* 		at ehci?
1581.9Smacallan
1591.10Smacallan# onboard ethernet
1601.11Smacallandme*		at apbus?
1611.10Smacallan
1621.12Smacallan# I2C/SMBus
1631.12Smacallanjziic* 		at apbus?
1641.12Smacallan#options 	JZIIC_DEBUG	# spammy
1651.12Smacallaniic* 		at jziic?
1661.12Smacallan
1671.12Smacallan# voltage control and the like, no driver yet
1681.12Smacallan#act8600pm0 	at iic0 addr 0x5a
1691.12Smacallan
1701.12Smacallan# XXX
1711.12Smacallan# the manual says there's a Pericom RTC at SMB4 addr 0x68
1721.12Smacallan# on my preproduction CI20 that's not the case, instead there's something that
1731.12Smacallan# looks like a PCF8563 at addr 0x51
1741.12Smacallan 
1751.12Smacallan# the Pericom PT7C4337 seems to be a DS1339 clone
1761.12Smacallan#dsrtc0 	at iic4 addr 0x68 flags 1339
1771.12Smacallan
1781.12Smacallan# at least some CI20 have this instead
1791.12Smacallanpcf8563rtc0	at iic4 addr 0x51
1801.12Smacallan
1811.3Smacallan#jzgpio* 	at apbus? addr ?
1821.3Smacallan#gpio*		at jzgpio?
1831.1Smacallan
1841.14Smacallan# MSC / SDMMC - unfinished
1851.14Smacallan#jzmmc* 		at apbus?
1861.14Smacallan#options 	JZMMC_DEBUG
1871.14Smacallan#sdmmc* 		at jzmmc?
1881.14Smacallan#ld* 		at sdmmc?
1891.14Smacallan
1901.10Smacallan# USB stuff
1911.10Smacallanuhub*		at usb?
1921.10Smacallanuhub*		at uhub? port ?
1931.10Smacallan
1941.7Smacallan# USB HID device
1951.7Smacallanuhidev*	at uhub? port ? configuration ? interface ?
1961.7Smacallan
1971.7Smacallan# USB Mice
1981.7Smacallanums*		at uhidev? reportid ?
1991.7Smacallanwsmouse*	at ums? mux 0
2001.7Smacallan
2011.7Smacallan# USB Keyboards
2021.7Smacallanukbd*	at uhidev? reportid ?
2031.7Smacallanwskbd*	at ukbd? console ? mux 1
2041.7Smacallan
2051.7Smacallan# USB Generic HID devices
2061.7Smacallanuhid*	at uhidev? reportid ?
2071.7Smacallan
2081.7Smacallan# USB Mass Storage
2091.7Smacallanumass*	at uhub? port ? configuration ? interface ?
2101.7Smacallanscsibus*	at umass? channel ?
2111.7Smacallansd*		at scsibus? target ? lun ?	# SCSI disk drives
2121.7Smacallancd*		at scsibus? target ? lun ?	# SCSI CD-ROM drives
2131.7Smacallan
2141.7Smacallan# Ethernet
2151.19Smacallan#axe*	at uhub? port ?
2161.19Smacallan#urtwn*	at uhub? port ?
2171.1Smacallan
2181.15Smacallan# Random number generator
2191.15Smacallanjzrng0	at apbus0
2201.15Smacallan
2211.1Smacallan# MII/PHY support
2221.1Smacallan#acphy*		at mii? phy ?		# DAltima AC101 and AMD Am79c874 PHYs
2231.1Smacallan#amhphy* 	at mii? phy ?		# AMD 79c901 Ethernet PHYs
2241.30Snisimuradmphy*		at mii? phy ?		# Davicom DM9101 PHYs
2251.1Smacallan#glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
2261.1Smacallan#gphyter*	at mii? phy ?		# NS83861 Gig-E PHY
2271.1Smacallan#icsphy* 	at mii? phy ?		# Integrated Circuit Systems ICS1890
2281.1Smacallan#lxtphy* 	at mii? phy ?		# Level One LXT-970 PHYs
2291.1Smacallan#makphy* 	at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
2301.1Smacallan#nsphy*		at mii? phy ?		# NS83840 PHYs
2311.1Smacallan#nsphyter*	at mii? phy ?		# NS83843 PHYs
2321.1Smacallan#pnaphy* 	at mii? phy ?		# generic HomePNA PHYs
2331.1Smacallan#qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
2341.1Smacallan#sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
2351.1Smacallan#tlphy*		at mii? phy ?		# ThunderLAN PHYs
2361.1Smacallan#tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
2371.1Smacallan#rlphy*		at mii? phy ?		# RealTek PHYs
2381.30Snisimuraukphy*		at mii? phy ?		# generic unknown PHYs
2391.1Smacallan
2401.1Smacallan
2411.1Smacallan# Pseudo-devices
2421.1Smacallan
2431.1Smacallan# Disk/mass storage pseudo-devices
2441.1Smacallan#pseudo-device	ccd				# concatenated disk devices
2451.1Smacallan#pseudo-device	raid				# RAIDframe disk driver
2461.1Smacallan#pseudo-device	fss				# file system snapshot device
2471.1Smacallan#pseudo-device	md				# memory disk device (ramdisk)
2481.1Smacallan#pseudo-device	vnd				# disk-like interface to files
2491.1Smacallan
2501.1Smacallan# Network pseudo-devices
2511.1Smacallanpseudo-device	bpfilter			# Berkeley packet filter
2521.28Ssevanpseudo-device 	carp				# Common Address Redundancy Protocol
2531.26Smaxv#pseudo-device	npf			# NPF packet filter
2541.1Smacallanpseudo-device	loop				# network loopback
2551.1Smacallan#pseudo-device	ppp				# Point-to-Point Protocol
2561.1Smacallan#pseudo-device	sl				# Serial Line IP
2571.1Smacallan#pseudo-device	tun				# network tunneling over tty
2581.1Smacallan#pseudo-device	tap				# virtual Ethernet
2591.1Smacallan#pseudo-device	gre				# generic L3 over IP tunnel
2601.1Smacallan#pseudo-device	ipip				# RFC 2003 IP Encapsulation
2611.1Smacallan#pseudo-device	gif				# RFC1933 tunnel
2621.1Smacallan#pseudo-device	faith				# IPv[46] tcp relay translation
2631.1Smacallan#pseudo-device	stf				# 6to4 IPv6 over IPv4 encapsulation
2641.1Smacallan#pseudo-device	vlan				# IEEE 802.1q encapsulation
2651.1Smacallan#pseudo-device	bridge				# simple inter-network bridging
2661.31Sroy#pseudo-device	vether				# Virtual Ethernet for bridge
2671.1Smacallan
2681.1Smacallan# Miscellaneous pseudo-devices
2691.1Smacallanpseudo-device	pty				# pseudo-terminals
2701.1Smacallanpseudo-device	clockctl			# user control of clock subsystem
2711.1Smacallanpseudo-device	ksyms				# /dev/ksyms
2721.1Smacallan
2731.1Smacallan# A pseudo device needed for Coda		# also needs CODA (above)
2741.1Smacallan#pseudo-device	vcoda				# coda minicache <-> venus comm.
2751.13Smartin
2761.28Ssevaninclude "dev/veriexec.config"
2771.13Smartin
2781.13Smartincinclude 	"arch/evbmips/conf/CI20.local"
2791.13Smartin
280