Module Name: src Committed By: jakllsch Date: Wed Jul 20 22:53:38 UTC 2011
Added Files: src/sys/arch/evbarm/conf: MV2120 mk.mv2120 std.mv2120 Log Message: Add support for HP Media Vault MV2100/MV5100 series Marvell Orion board. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/sys/arch/evbarm/conf/MV2120 \ src/sys/arch/evbarm/conf/mk.mv2120 src/sys/arch/evbarm/conf/std.mv2120 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Added files: Index: src/sys/arch/evbarm/conf/MV2120 diff -u /dev/null src/sys/arch/evbarm/conf/MV2120:1.1 --- /dev/null Wed Jul 20 22:53:38 2011 +++ src/sys/arch/evbarm/conf/MV2120 Wed Jul 20 22:53:38 2011 @@ -0,0 +1,360 @@ +# $NetBSD: MV2120,v 1.1 2011/07/20 22:53:38 jakllsch Exp $ +# +# This configuration supports for HP MV2120/MV5140/MV5150. + +include "arch/evbarm/conf/std.mv2120" + +options INCLUDE_CONFIG_FILE # embed config file in kernel binary + +options SYMTAB_SPACE=920000 + +options DIAGNOSTIC +options LOCKDEBUG + +makeoptions DEBUG="-g" + +# estimated number of users + +maxusers 32 + +# Board Type +makeoptions BOARDTYPE="mv2120" +options EVBARM_BOARDTYPE=mv2120 + +# CPU options +options CPU_ARM9E +makeoptions CPUFLAGS="-mcpu=arm926ej-s -O2" + +# Marvell SoC options +options ORION + +# Standard system options + +options MSGBUFSIZE=32768 + +options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT +options NTP # NTP phase/frequency locked loop + +# File systems + +file-system FFS # UFS +file-system EXT2FS # second extended file system (linux) +file-system LFS # log-structured file system +file-system MFS # memory file system +file-system NFS # Network File System client +file-system NTFS # Windows/NT file system (experimental) +file-system CD9660 # ISO 9660 + Rock Ridge file system +file-system MSDOSFS # MS-DOS file system +file-system FDESC # /dev/fd +file-system KERNFS # /kern +file-system NULLFS # loopback file system +file-system OVERLAY # overlay file system +file-system PUFFS # Userspace file systems (e.g. ntfs-3g & sshfs) +file-system PROCFS # /proc +file-system UMAPFS # NULLFS + uid and gid remapping +file-system UNION # union file system +file-system CODA # Coda File System; also needs vcoda (below) +file-system SMBFS # experimental - CIFS; also needs nsmb (below) +file-system PTYFS # /dev/ptm support +file-system TMPFS # Efficient memory file-system +file-system UDF # experimental - OSTA UDF CD/DVD file-system +file-system HFS # experimental - Apple HFS+ (read-only) + +# File system options +options QUOTA # UFS quotas +#options FFS_EI # FFS Endian Independent support +options WAPBL # File system journaling support - Experimental +# Note that UFS_DIRHASH is suspected of causing kernel memory corruption. +# It is not recommended for general use. +#options UFS_DIRHASH # UFS Large Directory Hashing - Experimental +options NFSSERVER # Network File System server +#options FFS_NO_SNAPSHOT # No FFS snapshot support +#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and + # immutable) behave as system flags. + +# Networking options + +options TCP_CSUM_COUNTERS +options UDP_CSUM_COUNTERS + +#options GATEWAY # packet forwarding +options INET # IP + ICMP + TCP + UDP +options INET6 # IPv6 +#options IPSEC # IP security +#options IPSEC_ESP # IP security (encryption part; define w/IPSEC) +#options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) +#options IPSEC_DEBUG # debug for IP security +#options MROUTING # IP multicast routing +#options PIM # Protocol Independent Multicast +#options ISO,TPIP # OSI +#options EON # OSI tunneling over IP +#options NETATALK # AppleTalk networking protocols +options PPP_BSDCOMP # BSD-Compress compression support for PPP +options PPP_DEFLATE # Deflate compression support for PPP +options PPP_FILTER # Active filter support for PPP (requires bpf) +options PFIL_HOOKS # pfil(9) packet filter hooks +options IPFILTER_LOG # ipmon(8) log support +options IPFILTER_LOOKUP # ippool(8) support +options IPFILTER_COMPAT # Compat for IP-Filter +#options IPFILTER_DEFAULT_BLOCK # block all packets by default +#options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG + +options NFS_BOOT_BOOTP +#options NFS_BOOT_BOOTPARAM +options NFS_BOOT_DHCP +options NFS_BOOT_TCP + +# Compatibility options + +#options COMPAT_09 # NetBSD 0.9 compatibility. +#options COMPAT_10 # NetBSD 1.0 compatibility. +#options COMPAT_11 # NetBSD 1.1 compatibility. +#options COMPAT_12 # NetBSD 1.2 compatibility. +#options COMPAT_13 # NetBSD 1.3 compatibility. +#options COMPAT_14 # NetBSD 1.4 compatibility. +#options COMPAT_15 # NetBSD 1.5 compatibility. +options COMPAT_16 # NetBSD 1.6 compatibility. +options COMPAT_20 # NetBSD 2.0 compatibility. +options COMPAT_30 # NetBSD 3.0 compatibility. +options COMPAT_40 # NetBSD 4.0 compatibility. +#options COMPAT_43 # 4.3BSD compatibility. +#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. + +options COMPAT_LINUX # binary compatibility with Linux +options COMPAT_BSDPTY # /dev/[pt]ty?? ptys. + +# Shared memory options + +#options SYSVMSG # System V-like message queues +#options SYSVSEM # System V-like semaphores +#options SEMMNI=10 # number of semaphore identifiers +#options SEMMNS=60 # number of semaphores in system +#options SEMUME=10 # max number of undo entries per process +#options SEMMNU=30 # number of undo structures in system +#options SYSVSHM # System V-like memory sharing +#options SHMMAXPGS=1024 # 1024 pages is the default +options P1003_1B_SEMAPHORE # p1003.1b semaphore support + +# Device options + +#options MEMORY_DISK_HOOKS # boottime setup of ramdisk +#options MEMORY_DISK_IS_ROOT # use memory disk as root +#options MEMORY_DISK_DYNAMIC +#options MEMORY_DISK_ROOT_SIZE=22528 # Size in blocks +#options MEMORY_RBFLAGS=RB_AUTOBOOT + +# Miscellaneous kernel options + +options KTRACE # system call tracing, a la ktrace(1) +options IRQSTATS # manage IRQ statistics +#options KMEMSTATS # kernel memory statistics +options DDB # in-kernel debugger +options MIIVERBOSE # Verbose MII autoconfuration messages +#options PCIVERBOSE # Verbose PCI descriptions +options SCSIVERBOSE # human readable SCSI error messages +options USBVERBOSE # verbose USB device autoconfig messages +#options DDB_KEYCODE=0x40 +options USERCONF # userconf(4) support +#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) +#options SYSCTL_INCLUDE_DESCR # Include sysctl descriptions in kernel + +config netbsd root on ? type ? +config netbsd-mvgbe0 root on mvgbe0 type nfs + +# The main bus device +mainbus0 at root + +# The boot cpu +cpu0 at mainbus? + +# Mervell MV88Fxx81 Orion System-on-Chip +mvsoc0 at mainbus? + +# On-chip PCI Express Interface +mvpex* at mvsoc? offset ? irq ? + +# On-chip PCI Interface +gtpci* at mvsoc? offset ? irq ? + +# PCI bus support +#options PCI_NETBSD_CONFIGURE +#options PCI_CONFIG_DUMP # verbosely dump PCI config space + +pci* at mvpex? +pci* at gtpci? + +pchb* at pci? dev ? function ? # PCI-Host bridges + +# On-chip Serial-ATA II Host Controller (SATAHC) +mvsata* at mvsoc? offset ? irq ? + +# On-chip Gigabit Ethernet Controller Interface +mvgbec* at mvsoc? offset ? +mvgbe* at mvgbec? port ? irq ? + +# On-chip USB 2.0 Interface +ehci* at mvsoc? offset ? irq ? + +# On-chip Cryptographic Engines and Security Accelerator +#mvcesa* at mvsoc? offset ? irq ? + +# On-chip Two-Wire Serial Interface (TWSI) +gttwsi* at mvsoc? offset ? irq ? +iic* at gttwsi? # I2C bus + +# On-chip UART Interface +com* at mvsoc? offset ? irq ? + +# On-chip IDMA Controller +gtidmac* at mvsoc? offset ? irq ? + +# On-chip General Purpose I/O Port Interface +mvsocgpp* at mvsoc? offset ? irq ? +gpio* at mvsocgpp? + +# On-chip Timers +mvsoctmr* at mvsoc? offset ? irq ? + +# Real Time Clock +pcf8563rtc* at iic? addr 0x51 + +# MII/PHY support +makphy* at mii? phy ? # Marvell Semiconductor 88E1000 PHYs + +# PCI IDE Controller +mvsata* at pci? dev ? function ? # Marvell SATA Controller + +# ATA (IDE) bus support +atabus* at ata? +#options ATADEBUG + +# IDE drives +wd0 at atabus0 drive 0 flags 0x0000 +wd1 at atabus1 drive 0 flags 0x0000 +wd* at atabus? drive ? flags 0x0000 + +# ATAPI bus support +atapibus* at atapi? + +# ATAPI devices +# flags have the same meaning as for IDE drives. +cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives +sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives +st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives +uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown + +# SCSI bus support +scsibus* at scsi? + +# SCSI devices +sd* at scsibus? target ? lun ? # SCSI disk drives +cd* at scsibus? target ? lun ? # SCSI CD-ROM drives +st* at scsibus? target ? lun ? # SCSI tape drives +uk* at scsibus? target ? lun ? # SCSI unknown + +usb* at ehci? +include "dev/usb/usbdevices.config" +include "dev/bluetooth/bluetoothdevices.config" + +audio* at audiobus? +midi* at midibus? + +# Pseudo-Devices + +pseudo-device crypto # /dev/crypto device +pseudo-device swcrypto # software crypto implementation + +# disk/mass storage pseudo-devices +pseudo-device bio # RAID control device driver +pseudo-device ccd 4 # concatenated/striped disk devices +pseudo-device cgd 4 # cryptographic disk devices +pseudo-device raid 8 # RAIDframe disk driver +options RAID_AUTOCONFIG # auto-configuration of RAID components +# Options to enable various other RAIDframe RAID types. +#options RF_INCLUDE_EVENODD=1 +#options RF_INCLUDE_RAID5_RS=1 +#options RF_INCLUDE_PARITYLOGGING=1 +#options RF_INCLUDE_CHAINDECLUSTER=1 +#options RF_INCLUDE_INTERDECLUSTER=1 +#options RF_INCLUDE_PARITY_DECLUSTERING=1 +#options RF_INCLUDE_PARITY_DECLUSTERING_DS=1 +pseudo-device fss # file system snapshot device +pseudo-device putter # for puffs and pud + +#pseudo-device md # memory disk device (ramdisk) +pseudo-device vnd # disk-like interface to files +options VND_COMPRESSION # compressed vnd(4) + +# network pseudo-devices +pseudo-device bpfilter # Berkeley packet filter +#pseudo-device carp # Common Address Redundancy Protocol +pseudo-device ipfilter # IP filter (firewall) and NAT +pseudo-device loop # network loopback +pseudo-device ppp # Point-to-Point Protocol +pseudo-device pppoe # PPP over Ethernet (RFC 2516) +#pseudo-device sl # Serial Line IP +#pseudo-device strip # Starmode Radio IP (Metricom) +#pseudo-device irframetty # IrDA frame line discipline +pseudo-device tap # virtual Ethernet +pseudo-device tun # network tunneling over tty +#pseudo-device gre # generic L3 over IP tunnel +pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC 1933) +#pseudo-device faith # IPv[46] TCP relay translation i/f +pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation +pseudo-device vlan # IEEE 802.1q encapsulation +#pseudo-device bridge # simple inter-network bridging +#options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too +#pseudo-device agr # IEEE 802.3ad link aggregation +#pseudo-device pf # PF packet filter +#pseudo-device pflog # PF log if + +# miscellaneous pseudo-devices +pseudo-device pty # pseudo-terminals +#pseudo-device sequencer 1 # MIDI sequencer +pseudo-device rnd # /dev/random and in-kernel generator +#options RND_COM +pseudo-device clockctl # user control of clock subsystem +pseudo-device ksyms # /dev/ksyms + +# a pseudo device needed for Coda # also needs CODA (above) +pseudo-device vcoda 4 # coda minicache <-> venus comm. + +# a pseudo device needed for SMBFS +pseudo-device nsmb # experimental - SMB requester + +# wscons pseudo-devices +pseudo-device wsmux # mouse & keyboard multiplexor +pseudo-device wsfont + +# data mover pseudo-devices +pseudo-device swdmover # softare dmover(9) back-end +pseudo-device dmoverio # /dev/dmover dmover(9) interface + +pseudo-device dm + +options FILEASSOC # fileassoc(9) - required for Veriexec + +# Veriexec +pseudo-device veriexec +# +# Uncomment the fingerprint methods below that are desired. Note that +# removing fingerprint methods will have almost no impact on the kernel +# code size. +# +options VERIFIED_EXEC_FP_RMD160 +options VERIFIED_EXEC_FP_SHA256 +options VERIFIED_EXEC_FP_SHA384 +options VERIFIED_EXEC_FP_SHA512 +options VERIFIED_EXEC_FP_SHA1 +options VERIFIED_EXEC_FP_MD5 + +options PAX_MPROTECT=0 # PaX mprotect(2) restrictions +options PAX_ASLR=0 # PaX Address Space Layout Randomization + +pseudo-device kttcp +pseudo-device drvctl + +options DKWEDGE_AUTODISCOVER +options DKWEDGE_METHOD_GPT +options BUFQ_READPRIO +options BUFQ_PRIOCSCAN Index: src/sys/arch/evbarm/conf/mk.mv2120 diff -u /dev/null src/sys/arch/evbarm/conf/mk.mv2120:1.1 --- /dev/null Wed Jul 20 22:53:38 2011 +++ src/sys/arch/evbarm/conf/mk.mv2120 Wed Jul 20 22:53:38 2011 @@ -0,0 +1,41 @@ +# $NetBSD: mk.mv2120,v 1.1 2011/07/20 22:53:38 jakllsch Exp $ + +SYSTEM_FIRST_OBJ= marvell_start.o +SYSTEM_FIRST_SFILE= ${THISARM}/marvell/marvell_start.S + +_OSRELEASE!= ${HOST_SH} $S/conf/osrelease.sh + +KERNEL_BASE_PHYS=0x00400040 +KERNEL_BASE_VIRT=0xc0400040 + +MKUBOOTIMAGEARGS= -A arm -T kernel +MKUBOOTIMAGEARGS+= -a 0x00400000 -e 0x40004000 #byteswapped entry +MKUBOOTIMAGEARGS+= -n "NetBSD/$(BOARDTYPE) ${_OSRELEASE}" +MKUBOOTIMAGEARGS_NONE= ${MKUBOOTIMAGEARGS} -C none +MKUBOOTIMAGEARGS_GZ= ${MKUBOOTIMAGEARGS} -C gz + +# +# These not have expanding buffer over 4Mbyte. (before version 1.1.5) +# And these cannot handle the endian of entry point. (1.1.4 and older) +# +# MV2120 U-Boot is 1.1.4. +# +SYSTEM_LD_TAIL_EXTRA+=; \ + echo ${OBJCOPY} -S -O binary $@ $@.bin; \ + ${OBJCOPY} -S -O binary $@ $@.bin; \ + echo gzip -c $@.bin > $@.bin.gz; \ + gzip -c $@.bin > $@.bin.gz; \ + echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_GZ} $@.bin.gz $@.gz.ub; \ + ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_GZ} $@.bin.gz $@.gz.ub; \ + echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE} $@.bin $@.ub; \ + ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE} $@.bin $@.ub; \ + echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE:C/((-a (0x)*)([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2}))/\1 -e \3\7\6\5\4/W} $@.bin $@-old.ub; \ + ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS_NONE:C/((-a (0x)*)([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2}))/\1 -e \3\7\6\5\4/W} $@.bin $@-old.ub; \ + echo + +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin@} +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin.gz@} +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.ub@} +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.gz@} +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.gz.ub@} +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}-old.ub@} Index: src/sys/arch/evbarm/conf/std.mv2120 diff -u /dev/null src/sys/arch/evbarm/conf/std.mv2120:1.1 --- /dev/null Wed Jul 20 22:53:38 2011 +++ src/sys/arch/evbarm/conf/std.mv2120 Wed Jul 20 22:53:38 2011 @@ -0,0 +1,22 @@ +# $NetBSD: std.mv2120,v 1.1 2011/07/20 22:53:38 jakllsch Exp $ +# +# standard NetBSD/evbarm for MAEVELL options + +machine evbarm arm +include "conf/std" # MI standard options + +include "arch/evbarm/conf/files.marvell" + +options EXEC_ELF32 +options EXEC_SCRIPT + +# To support easy transit to ../arch/arm/arm32 +options ARM32 +options __HAVE_PCI_CONF_HOOK # should be in types.h + +options COM_REGMAP + +options KERNEL_BASE_EXT=0xc0000000 +makeoptions LOADADDRESS="0xc0400000" +makeoptions BOARDMKFRAG="${THISARM}/conf/mk.mv2120" +options ARM_INTR_IMPL="<arch/arm/marvell/mvsoc_intr.h>"