BCM5301X revision 1.27
11.1Smatt#
21.27Ssevan#	$NetBSD: BCM5301X,v 1.27 2017/06/26 03:15:16 sevan Exp $
31.1Smatt#
41.1Smatt#	BCM5301X -- Broadcom BCM5301X Eval Board Kernel
51.1Smatt#
61.1Smatt
71.1Smattinclude	"arch/evbarm/conf/std.bcm53xx"
81.1Smatt
91.1Smatt# estimated number of users
101.1Smatt
111.1Smattmaxusers	32
121.1Smatt
131.1Smatt# Standard system options
141.1Smatt
151.1Smattoptions 	RTC_OFFSET=0	# hardware clock is this many mins. west of GMT
161.1Smatt#options 	NTP		# NTP phase/frequency locked loop
171.1Smatt
181.1Smatt# CPU options
191.1Smatt
201.1Smatt#makeoptions	DEFCOPTS="-O0"
211.5Smattoptions 	UVMHIST
221.5Smatt#options 	UVMHIST_PRINT,A9WDT_PERIOD_DEFAULT=30
231.1Smattoptions 	BCM53XX_CONSOLE_EARLY
241.11Smattoptions 	BCMETH_COUNTERS
251.1Smatt#options 	MULTIPROCESSOR
261.1Smattoptions 	CPU_CORTEXA9
271.11Smatt#options 	MEMSIZE=256
281.16Smattoptions 	BCM5301X
291.1Smattoptions 	PMAPCOUNTERS
301.11Smattoptions 	BUSDMA_COUNTERS
311.17Smattmakeoptions	KERNEL_BASE_PHYS="0x80100000"
321.1Smatt
331.1Smatt# Architecture options
341.1Smatt
351.1Smatt# File systems
361.1Smatt
371.1Smattfile-system	FFS		# UFS
381.1Smatt#file-system	LFS		# log-structured file system
391.1Smattfile-system	MFS		# memory file system
401.1Smattfile-system	NFS		# Network file system
411.1Smatt#file-system 	ADOSFS		# AmigaDOS-compatible file system
421.1Smatt#file-system 	EXT2FS		# second extended file system (linux)
431.1Smattfile-system	CD9660		# ISO 9660 + Rock Ridge file system
441.1Smattfile-system	MSDOSFS		# MS-DOS file system
451.1Smatt#file-system	FDESC		# /dev/fd
461.1Smattfile-system	KERNFS		# /kern
471.1Smatt#file-system	NULLFS		# loopback file system
481.1Smatt#file-system	PROCFS		# /proc
491.4Smsaitoh#file-system	PUFFS		# Userspace file systems (e.g. ntfs-3g & sshfs)
501.1Smatt#file-system	UMAPFS		# NULLFS + uid and gid remapping
511.1Smatt#file-system	UNION		# union file system
521.1Smattfile-system	TMPFS		# memory file system
531.1Smattfile-system	PTYFS		# /dev/pts/N support
541.1Smatt
551.1Smatt# File system options
561.1Smatt#options 	QUOTA		# legacy UFS quotas
571.1Smatt#options 	QUOTA2		# new, in-filesystem UFS quotas
581.26Srin#options 	DISKLABEL_EI	# disklabel Endian Independent support
591.1Smatt#options 	FFS_EI		# FFS Endian Independent support
601.1Smatt#options 	NFSSERVER
611.1Smattoptions 	WAPBL		# File system journaling support
621.1Smatt#options 	FFS_NO_SNAPSHOT	# No FFS snapshot support
631.1Smatt
641.1Smatt# Networking options
651.1Smatt
661.1Smatt#options 	GATEWAY		# packet forwarding
671.1Smattoptions 	INET		# IP + ICMP + TCP + UDP
681.1Smattoptions 	INET6		# IPV6
691.1Smatt#options 	IPSEC		# IP security
701.1Smatt#options 	IPSEC_DEBUG	# debug for IP security
711.1Smatt#options 	MROUTING	# IP multicast routing
721.1Smatt#options 	PIM		# Protocol Independent Multicast
731.1Smatt#options 	NETATALK	# AppleTalk networking
741.1Smatt#options 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
751.1Smatt#options 	PPP_DEFLATE	# Deflate compression support for PPP
761.1Smatt#options 	PPP_FILTER	# Active filter support for PPP (requires bpf)
771.1Smatt#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
781.1Smatt
791.1Smattoptions 	NFS_BOOT_BOOTP
801.1Smattoptions 	NFS_BOOT_DHCP
811.1Smatt#options		NFS_BOOT_BOOTSTATIC
821.1Smatt#options		NFS_BOOTSTATIC_MYIP="\"192.168.1.4\""
831.1Smatt#options		NFS_BOOTSTATIC_GWIP="\"192.168.1.1\""
841.1Smatt#options		NFS_BOOTSTATIC_MASK="\"255.255.255.0\""
851.1Smatt#options		NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\""
861.1Smatt#options		NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\""
871.1Smatt
881.1Smattoptions		NFS_BOOT_RWSIZE=1024
891.1Smatt
901.1Smatt# Compatibility options
911.1Smatt
921.19Smartinoptions		COMPAT_NETBSD32	# allow running arm (e.g. non-earm) binaries
931.1Smatt#options 	COMPAT_43	# 4.3BSD compatibility.
941.23Sdholland#options 	COMPAT_09	# NetBSD 0.9,
951.23Sdholland#options 	COMPAT_10	# NetBSD 1.0,
961.23Sdholland#options 	COMPAT_11	# NetBSD 1.1,
971.23Sdholland#options 	COMPAT_12	# NetBSD 1.2,
981.23Sdholland#options 	COMPAT_13	# NetBSD 1.3,
991.23Sdholland#options 	COMPAT_14	# NetBSD 1.4,
1001.23Sdholland#options 	COMPAT_15	# NetBSD 1.5,
1011.23Sdholland#options 	COMPAT_16	# NetBSD 1.6,
1021.23Sdholland#options 	COMPAT_20	# NetBSD 2.0,
1031.23Sdhollandoptions 	COMPAT_30	# NetBSD 3.0,
1041.23Sdhollandoptions 	COMPAT_40	# NetBSD 4.0,
1051.23Sdhollandoptions 	COMPAT_50	# NetBSD 5.0,
1061.23Sdhollandoptions 	COMPAT_60	# NetBSD 6.0, and
1071.23Sdhollandoptions 	COMPAT_70	# NetBSD 7.0 binary compatibility.
1081.1Smatt#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
1091.1Smatt#options		COMPAT_BSDPTY	# /dev/[pt]ty?? ptys.
1101.1Smatt
1111.1Smatt# Shared memory options
1121.1Smatt
1131.1Smattoptions 	SYSVMSG		# System V-like message queues
1141.1Smattoptions 	SYSVSEM		# System V-like semaphores
1151.1Smattoptions 	SYSVSHM		# System V-like memory sharing
1161.1Smatt
1171.1Smatt# Device options
1181.1Smatt
1191.1Smatt#options 	MEMORY_DISK_HOOKS	# boottime setup of ramdisk
1201.1Smatt#options 	MEMORY_DISK_ROOT_SIZE=8192	# Size in blocks
1211.1Smatt#options 	MEMORY_DISK_DYNAMIC
1221.1Smatt#options 	MINIROOTSIZE=1000	# Size in blocks
1231.1Smatt#options 	MEMORY_DISK_IS_ROOT	# use memory disk as root
1241.1Smatt
1251.22Schristos# Wedge support
1261.22Schristosoptions 	DKWEDGE_AUTODISCOVER	# Automatically add dk(4) instances
1271.22Schristosoptions 	DKWEDGE_METHOD_GPT	# Supports GPT partitions as wedges
1281.2Smatt
1291.1Smatt# Miscellaneous kernel options
1301.16Smattoptions 	MODULAR		# support dynamically loaded kernel modules
1311.24Sjnemethoptions 	MODULAR_DEFAULT_AUTOLOAD
1321.1Smattoptions 	KTRACE		# system call tracing, a la ktrace(1)
1331.3Smattoptions 	PCIVERBOSE	# Verbose PCI autoconfiguration messages
1341.3Smatt#options 	PCI_CONFIG_DUMP	# Verbose PCI autoconfiguration messages
1351.5Smattoptions 	PCI_NETBSD_CONFIGURE # perform PCI configuration
1361.1Smattoptions 	RNDVERBOSE	# Verbose rnd messages
1371.1Smatt#options 	SCSIVERBOSE	# Verbose SCSI errors
1381.3Smatt#options 	MIIVERBOSE	# Verbose MII autoconfiguration messages
1391.1Smatt#options 	DDB_KEYCODE=0x40
1401.1Smatt#options 	USERCONF	# userconf(4) support
1411.1Smatt#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
1421.1Smatt
1431.1Smatt# Development and Debugging options
1441.1Smatt
1451.1Smatt#options 	PERFCTRS	# performance counters
1461.18Sdhollandoptions 	DIAGNOSTIC	# internal consistency checks
1471.1Smattoptions 	DEBUG
1481.1Smatt#options 	LOCKDEBUG	# Enable lock debugging
1491.1Smatt#options 	PMAP_DEBUG	# Enable pmap_debug_level code
1501.1Smatt#options 	IPKDB		# remote kernel debugging
1511.16Smattoptions 	VERBOSE_INIT_ARM # verbose bootstraping messages
1521.1Smattoptions 	DDB		# in-kernel debugger
1531.1Smattoptions		DDB_ONPANIC=1
1541.1Smattoptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
1551.5Smattoptions 	DDB_COMMANDONENTER="show event"
1561.1Smattoptions 	DB_MAX_LINE=INT_MAX
1571.1Smatt#options 	KGDB
1581.1Smattmakeoptions	DEBUG="-g"	# compile full symbol table
1591.21Sjoergmakeoptions	COPY_SYMTAB=1
1601.1Smatt
1611.1Smatt## USB Debugging options
1621.1Smattoptions USB_DEBUG
1631.1Smattoptions EHCI_DEBUG
1641.1Smattoptions OHCI_DEBUG
1651.1Smattoptions UHUB_DEBUG
1661.1Smatt
1671.1Smatt
1681.1Smatt# Valid options for BOOT_ARGS:
1691.1Smatt#  single		Boot to single user only
1701.1Smatt#  kdb			Give control to kernel debugger
1711.1Smatt#  ask			Ask for file name to reboot from
1721.1Smatt#  pmapdebug=<n>	If PMAP_DEBUG, set pmap_debug_level to <n>
1731.1Smatt#  memorydisk=<n>	Set memorydisk size to <n> KB
1741.1Smatt#  quiet		Show aprint_naive output
1751.1Smatt#  verbose		Show aprint_normal and aprint_verbose output
1761.1Smattoptions		BOOT_ARGS="\"\""
1771.1Smatt
1781.1Smattconfig		netbsd		root on ? type ?
1791.1Smatt
1801.1Smatt# The main bus device
1811.1Smattmainbus0	at root
1821.1Smatt
1831.1Smatt# The boot cpu
1841.1Smattcpu0		at mainbus?
1851.1Smatt#cpu*		at mainbus?
1861.1Smatt
1871.1Smatt# The MPCore interrupt controller and global timer
1881.1Smattarmperiph0	at mainbus?		# A9 On-Chip Peripherals
1891.1Smattarmgic0		at armperiph?		# ARM Generic Interrupt Controller
1901.9Smattarml2cc0	at armperiph? flags 0	# ARM PL310 L2CC
1911.1Smatta9tmr0		at armperiph?		# A9 Global Timer
1921.1Smatta9wdt0		at armperiph? flags 1	# A9 Watchdog Timer
1931.1Smatt
1941.1Smatt# ChipCommonA Peripherals
1951.1Smattbcmcca0		at mainbus?		# ChipCommonA
1961.1Smatt#options 	CONADDR=0x18000300, CONSPEED=115200
1971.16Smattoptions 	CONSPEED=9600
1981.1Smattcom0		at bcmcca? channel 0
1991.1Smattcom*		at bcmcca? channel 1
2001.1Smatt
2011.1Smatt# ChipCommonB Peripherals
2021.1Smattbcmccb0		at mainbus?		# ChipCommonB
2031.11Smattbcmpax*		at bcmccb? port ? flags 2 # use bounce buffers
2041.1Smattpci*		at bcmpax?
2051.3Smattppb*		at pci? dev ? function ?
2061.3Smattpci*		at ppb?
2071.1Smatt
2081.5Smattahcisata*	at pci? dev ? function ?
2091.5Smattatabus* 	at ahcisata? channel ?
2101.6Smatt#options 	ATADEBUG
2111.5Smattwd*		at atabus? drive ?
2121.5Smattwm*		at pci? dev ? function ?
2131.6Smattmakphy*		at mii?
2141.6Smattukphy*		at mii?
2151.5Smatt
2161.1Smattbcmmdio0	at bcmccb0
2171.1Smattbcmeth*		at bcmccb? port ?
2181.1Smatt
2191.1Smatt# SDHC controllers
2201.1Smattsdhc0		at bcmccb0
2211.1Smattsdmmc*		at sdhc?		# SD/MMC bus
2221.1Smattld*		at sdmmc?
2231.1Smatt
2241.1Smatt# Random Number Generator
2251.1Smattbcmrng0		at bcmccb0
2261.1Smatt
2271.1Smatt# NAND controller
2281.1Smatt#bcmnand0	at bcmccb0
2291.1Smatt
2301.1Smatt# NAND layer
2311.1Smatt#nand0		at nandbus?
2321.1Smatt
2331.1Smatt# use the bad block table
2341.1Smatt#options NAND_BBT
2351.1Smatt
2361.1Smatt# Define flash partitions for board
2371.1Smatt#flash0		at nand0 offset 0x000000 size 0x080000 readonly 1 # X-Loader
2381.1Smatt#flash1		at nand0 offset 0x080000 size 0x1e0000 readonly 1 # U-Boot
2391.1Smatt#flash2		at nand0 offset 0x260000 size 0x020000 readonly 1 # UB Env
2401.1Smatt#flash3		at nand0 offset 0x280000 size 0x400000		# kernel
2411.1Smatt#flash4		at nand0 offset 0x680000 size 0			# filesystem
2421.1Smatt
2431.1Smatt# I2C Controller
2441.1Smattbcmi2c0 	at bcmccb0
2451.1Smattiic*		at bcmi2c?
2461.1Smatt
2471.16Smatt# NAND Controller
2481.16Smattbcmnand0	at bcmccb0
2491.16Smattnand*		at nandbus?
2501.16Smattflash*		at nand?
2511.16Smatt
2521.1Smatt# Watchdog timers
2531.1Smatt#bcmwdt*	at bcmccb0
2541.1Smatt
2551.1Smatt# On-board USB
2561.1Smattbcmusb*		at bcmccb0
2571.1Smattohci*		at bcmusb0
2581.1Smattusb*		at ohci?
2591.1Smattehci*		at bcmusb0
2601.1Smattusb*		at ehci?
2611.1Smattuhub*		at usb?
2621.1Smattuhub*		at uhub? port ?
2631.1Smattumass*		at uhub? port ? configuration ? interface ?
2641.1Smattscsibus*	at scsi?
2651.1Smattsd*		at scsibus? target ? lun ?
2661.6Smatt#wd*		at umass?
2671.1Smatt
2681.27Ssevan# USB Ethernet adapters
2691.1Smattaxe*		at uhub? port ? configuration ? interface ?
2701.1Smatt
2711.1Smatt# Hardware clocking and power management
2721.1Smatt
2731.1Smatt# Pseudo-Devices
2741.1Smatt
2751.1Smatt# disk/mass storage pseudo-devices
2761.1Smatt#pseudo-device	md			# memory disk device (ramdisk)
2771.1Smatt#pseudo-device	vnd			# disk-like interface to files
2781.1Smatt#pseudo-device	fss			# file system snapshot device
2791.4Smsaitoh#pseudo-device	putter			# for puffs and pud
2801.1Smatt
2811.1Smatt# network pseudo-devices
2821.1Smattpseudo-device	bpfilter		# Berkeley packet filter
2831.1Smattpseudo-device	loop			# network loopback
2841.1Smatt#pseudo-device	kttcp			# network loopback
2851.7Smattpseudo-device	vlan
2861.7Smattpseudo-device	bridge
2871.1Smatt
2881.1Smatt# miscellaneous pseudo-devices
2891.1Smattpseudo-device	pty			# pseudo-terminals
2901.1Smatt#options	RND_COM
2911.1Smatt#pseudo-device	clockctl		# user control of clock subsystem
2921.1Smattpseudo-device	ksyms			# /dev/ksyms
2931.2Smattpseudo-device	drvctl			# device control
2941.10Smsaitohpseudo-device	lockstat		# lock profiling
295