11.34Schristos#	$NetBSD: CI20,v 1.34 2024/01/29 18:27:11 christos 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.34Schristos#ident 		"CI20-$Revision: 1.34 $"
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.32Ssimonb#options 	DISKLABEL_EI	# disklabel Endian Independent support
921.32Ssimonb#options 	NFSSERVER	# Network File System server
931.1Smacallan
941.27Ssevan# Alternate buffer queue strategies for better responsiveness under high
951.27Ssevan# disk I/O load.
961.27Ssevan#options 	BUFQ_READPRIO
971.27Ssevanoptions 	BUFQ_PRIOCSCAN
981.27Ssevan
991.1Smacallan# Networking options
1001.1Smacallan#options 	GATEWAY		# IP packet forwarding
1011.1Smacallanoptions 	INET		# Internet protocols
1021.8Smacallanoptions 	INET6		# IPV6
1031.1Smacallan#options 	IPSEC		# IP security
1041.1Smacallan#options 	IPSEC_DEBUG	# debug for IP security
1051.1Smacallan#options 	MROUTING	# packet forwarding of multicast packets
1061.1Smacallan#options 	PIM		# Protocol Independent Multicast
1071.1Smacallan#options 	NETATALK	# AppleTalk (over Ethernet) protocol
1081.1Smacallan#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
1091.1Smacallan#options 	PPP_DEFLATE	# Deflate compression support for PPP
1101.1Smacallan#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
1111.1Smacallan
1121.1Smacallan# JIT compiler for bpfilter
1131.1Smacallan#options	SLJIT
1141.1Smacallan#options	BPFJIT
1151.1Smacallan
1161.1Smacallan# These options enable verbose messages for several subsystems.
1171.1Smacallan# Warning, these may compile large string tables into the kernel!
1181.1Smacallanoptions 	MIIVERBOSE	# verbose PHY autoconfig messages
1191.1Smacallan
1201.1Smacallanoptions 	NFS_BOOT_BOOTP
1211.8Smacallanoptions 	NFS_BOOT_DHCP
1221.1Smacallan#options 	NFS_V2_ONLY
1231.1Smacallan
1241.8Smacallanconfig		netbsd	root on sd0a type ffs
1251.8Smacallan#config		netbsd	root on axe0 type nfs
1261.14Smacallan#config		netbsd	root on dme0 type nfs
1271.1Smacallan
1281.1Smacallanmainbus0 	at root
1291.12Smacallan#options 	MULTIPROCESSOR
1301.14Smacallan
1311.21Smacallancpu* 		at mainbus?
1321.1Smacallan#wdog0		at mainbus?
1331.4Smacallanapbus0		at mainbus?
1341.3Smacallan
1351.14Smacallan# On-chip UARTs
1361.14Smacallancom*		at apbus?
1371.14Smacallan
1381.19Smacallan# EFUSE
1391.19Smacallanefuse* 		at apbus?
1401.19Smacallan
1411.14Smacallan# On-chip USB
1421.11Smacallandwctwo* 	at apbus?
1431.7Smacallan#options 	DWC2_DEBUG
1441.5Smacallanusb* 		at dwctwo?
1451.9Smacallan
1461.11Smacallanohci*		at apbus?
1471.9Smacallanusb* 		at ohci?
1481.9Smacallan
1491.14Smacallan# this one doesn't work right just yet
1501.19Smacallanehci*		at apbus?
1511.14Smacallan#options 	INGENIC_EHCI_DEBUG
1521.14Smacallan#options 	EHCI_DEBUG
1531.14Smacallan#options 	USBVERBOSE
1541.19Smacallan#options 	USBHIST
1551.19Smacallanusb* 		at ehci?
1561.9Smacallan
1571.10Smacallan# onboard ethernet
1581.11Smacallandme*		at apbus?
1591.10Smacallan
1601.12Smacallan# I2C/SMBus
1611.12Smacallanjziic* 		at apbus?
1621.12Smacallan#options 	JZIIC_DEBUG	# spammy
1631.12Smacallaniic* 		at jziic?
1641.12Smacallan
1651.12Smacallan# voltage control and the like, no driver yet
1661.12Smacallan#act8600pm0 	at iic0 addr 0x5a
1671.12Smacallan
1681.12Smacallan# XXX
1691.12Smacallan# the manual says there's a Pericom RTC at SMB4 addr 0x68
1701.12Smacallan# on my preproduction CI20 that's not the case, instead there's something that
1711.12Smacallan# looks like a PCF8563 at addr 0x51
1721.12Smacallan 
1731.12Smacallan# the Pericom PT7C4337 seems to be a DS1339 clone
1741.12Smacallan#dsrtc0 	at iic4 addr 0x68 flags 1339
1751.12Smacallan
1761.12Smacallan# at least some CI20 have this instead
1771.12Smacallanpcf8563rtc0	at iic4 addr 0x51
1781.12Smacallan
1791.3Smacallan#jzgpio* 	at apbus? addr ?
1801.3Smacallan#gpio*		at jzgpio?
1811.1Smacallan
1821.14Smacallan# MSC / SDMMC - unfinished
1831.14Smacallan#jzmmc* 		at apbus?
1841.14Smacallan#options 	JZMMC_DEBUG
1851.14Smacallan#sdmmc* 		at jzmmc?
1861.14Smacallan#ld* 		at sdmmc?
1871.14Smacallan
1881.10Smacallan# USB stuff
1891.10Smacallanuhub*		at usb?
1901.10Smacallanuhub*		at uhub? port ?
1911.10Smacallan
1921.7Smacallan# USB HID device
1931.7Smacallanuhidev*	at uhub? port ? configuration ? interface ?
1941.7Smacallan
1951.7Smacallan# USB Mice
1961.7Smacallanums*		at uhidev? reportid ?
1971.7Smacallanwsmouse*	at ums? mux 0
1981.7Smacallan
1991.7Smacallan# USB Keyboards
2001.7Smacallanukbd*	at uhidev? reportid ?
2011.7Smacallanwskbd*	at ukbd? console ? mux 1
2021.7Smacallan
2031.7Smacallan# USB Generic HID devices
2041.7Smacallanuhid*	at uhidev? reportid ?
2051.7Smacallan
2061.7Smacallan# USB Mass Storage
2071.7Smacallanumass*	at uhub? port ? configuration ? interface ?
2081.7Smacallanscsibus*	at umass? channel ?
2091.7Smacallansd*		at scsibus? target ? lun ?	# SCSI disk drives
2101.7Smacallancd*		at scsibus? target ? lun ?	# SCSI CD-ROM drives
2111.7Smacallan
2121.7Smacallan# Ethernet
2131.19Smacallan#axe*	at uhub? port ?
2141.19Smacallan#urtwn*	at uhub? port ?
2151.1Smacallan
2161.15Smacallan# Random number generator
2171.15Smacallanjzrng0	at apbus0
2181.15Smacallan
2191.1Smacallan# MII/PHY support
2201.1Smacallan#acphy*		at mii? phy ?		# DAltima AC101 and AMD Am79c874 PHYs
2211.1Smacallan#amhphy* 	at mii? phy ?		# AMD 79c901 Ethernet PHYs
2221.30Snisimuradmphy*		at mii? phy ?		# Davicom DM9101 PHYs
2231.1Smacallan#glxtphy*	at mii? phy ?		# Level One LXT-1000 PHYs
2241.1Smacallan#gphyter*	at mii? phy ?		# NS83861 Gig-E PHY
2251.1Smacallan#icsphy* 	at mii? phy ?		# Integrated Circuit Systems ICS1890
2261.1Smacallan#lxtphy* 	at mii? phy ?		# Level One LXT-970 PHYs
2271.1Smacallan#makphy* 	at mii? phy ?		# Marvell Semiconductor 88E1000 PHYs
2281.1Smacallan#nsphy*		at mii? phy ?		# NS83840 PHYs
2291.1Smacallan#nsphyter*	at mii? phy ?		# NS83843 PHYs
2301.1Smacallan#pnaphy* 	at mii? phy ?		# generic HomePNA PHYs
2311.1Smacallan#qsphy*		at mii? phy ?		# Quality Semiconductor QS6612 PHYs
2321.1Smacallan#sqphy*		at mii? phy ?		# Seeq 80220/80221/80223 PHYs
2331.1Smacallan#tlphy*		at mii? phy ?		# ThunderLAN PHYs
2341.1Smacallan#tqphy*		at mii? phy ?		# TDK Semiconductor PHYs
2351.1Smacallan#rlphy*		at mii? phy ?		# RealTek PHYs
2361.30Snisimuraukphy*		at mii? phy ?		# generic unknown PHYs
2371.1Smacallan
2381.1Smacallan
2391.1Smacallan# Pseudo-devices
2401.1Smacallan
2411.1Smacallan# Disk/mass storage pseudo-devices
2421.1Smacallan#pseudo-device	ccd				# concatenated disk devices
2431.1Smacallan#pseudo-device	raid				# RAIDframe disk driver
2441.1Smacallan#pseudo-device	fss				# file system snapshot device
2451.1Smacallan#pseudo-device	md				# memory disk device (ramdisk)
2461.1Smacallan#pseudo-device	vnd				# disk-like interface to files
2471.1Smacallan
2481.1Smacallan# Network pseudo-devices
2491.1Smacallanpseudo-device	bpfilter			# Berkeley packet filter
2501.28Ssevanpseudo-device 	carp				# Common Address Redundancy Protocol
2511.26Smaxv#pseudo-device	npf			# NPF packet filter
2521.1Smacallanpseudo-device	loop				# network loopback
2531.1Smacallan#pseudo-device	ppp				# Point-to-Point Protocol
2541.1Smacallan#pseudo-device	sl				# Serial Line IP
2551.1Smacallan#pseudo-device	tun				# network tunneling over tty
2561.1Smacallan#pseudo-device	tap				# virtual Ethernet
2571.1Smacallan#pseudo-device	gre				# generic L3 over IP tunnel
2581.1Smacallan#pseudo-device	ipip				# RFC 2003 IP Encapsulation
2591.1Smacallan#pseudo-device	gif				# RFC1933 tunnel
2601.1Smacallan#pseudo-device	faith				# IPv[46] tcp relay translation
2611.1Smacallan#pseudo-device	stf				# 6to4 IPv6 over IPv4 encapsulation
2621.1Smacallan#pseudo-device	vlan				# IEEE 802.1q encapsulation
2631.1Smacallan#pseudo-device	bridge				# simple inter-network bridging
2641.31Sroy#pseudo-device	vether				# Virtual Ethernet for bridge
2651.1Smacallan
2661.1Smacallan# Miscellaneous pseudo-devices
2671.1Smacallanpseudo-device	pty				# pseudo-terminals
2681.1Smacallanpseudo-device	clockctl			# user control of clock subsystem
2691.1Smacallanpseudo-device	ksyms				# /dev/ksyms
2701.1Smacallan
2711.1Smacallan# A pseudo device needed for Coda		# also needs CODA (above)
2721.1Smacallan#pseudo-device	vcoda				# coda minicache <-> venus comm.
2731.13Smartin
2741.28Ssevaninclude "dev/veriexec.config"
2751.13Smartin
2761.33Sabs# Pull in optional local configuration - always at end
2771.13Smartincinclude 	"arch/evbmips/conf/CI20.local"
278