Module Name: src Committed By: rkujawa Date: Wed May 29 22:52:19 UTC 2013
Added Files: src/sys/arch/evbarm/conf: ARMADAXP files.armadaxp mk.armadaxp std.armadaxp Log Message: Add build configuration for Armada XP. Obtained from Marvell, Semihalf. To generate a diff of this commit: cvs rdiff -u -r0 -r1.1 src/sys/arch/evbarm/conf/ARMADAXP \ src/sys/arch/evbarm/conf/files.armadaxp \ src/sys/arch/evbarm/conf/mk.armadaxp \ src/sys/arch/evbarm/conf/std.armadaxp 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/ARMADAXP diff -u /dev/null src/sys/arch/evbarm/conf/ARMADAXP:1.1 --- /dev/null Wed May 29 22:52:19 2013 +++ src/sys/arch/evbarm/conf/ARMADAXP Wed May 29 22:52:19 2013 @@ -0,0 +1,307 @@ +# +# $NetBSD: ARMADAXP,v 1.1 2013/05/29 22:52:19 rkujawa Exp $ +# +# ARMADA XP DEV BOARD +# + +include "arch/evbarm/conf/std.armadaxp" + +# estimated number of users + +maxusers 32 + +# Standard system options + +options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT +#options NTP # NTP phase/frequency locked loop + +# CPU options +options CPU_PJ4B + +# Architecture options +options ARMADAXP +options L2CACHE_ENABLE +#options AURORA_IO_CACHE_COHERENCY +options AURORA_L2_PT_WALK + +#options VERBOSE_INIT_ARM + +# File systems +file-system FFS # UFS +#file-system LFS # log-structured file system +file-system MFS # memory file system +file-system NFS # Network file system +#file-system ADOSFS # AmigaDOS-compatible file system +#file-system EXT2FS # second extended file system (linux) +#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 PROCFS # /proc +#file-system UMAPFS # NULLFS + uid and gid remapping +#file-system UNION # union file system +file-system TMPFS # memory file system +file-system PTYFS # /dev/pts/N support +file-system PUFFS # Pass-to-Userspace Framework File System + +# File system options +#options QUOTA # legacy UFS quotas +#options QUOTA2 # new, in-filesystem UFS quotas +#options FFS_EI # FFS Endian Independent support +#options NFSSERVER +options WAPBL # File system journaling support +#options FFS_NO_SNAPSHOT # No FFS snapshot support + +# Networking options +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 +options PFIL_HOOKS # pfil(9) packet filter hooks +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 TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG +options NFS_BOOT_DHCP + +#options NFS_BOOT_BOOTP +#options NFS_BOOT_DHCP +#options NFS_BOOT_BOOTSTATIC +#options NFS_BOOTSTATIC_MYIP="\"192.168.1.4\"" +#options NFS_BOOTSTATIC_GWIP="\"192.168.1.1\"" +#options NFS_BOOTSTATIC_MASK="\"255.255.255.0\"" +#options NFS_BOOTSTATIC_SERVADDR="\"192.168.1.1\"" +#options NFS_BOOTSTATIC_SERVER="\"192.168.1.1:/nfs/sdp2430\"" + +#options NFS_BOOT_RWSIZE=1024 + +# Compatibility options +#options COMPAT_43 # 4.3BSD compatibility. +options COMPAT_50 # NetBSD 5.0 compatibility. +#options COMPAT_40 # NetBSD 4.0 compatibility. +#options COMPAT_30 # NetBSD 3.0 compatibility. +#options COMPAT_20 # NetBSD 2.0 compatibility. +#options COMPAT_16 # NetBSD 1.6 compatibility. +#options COMPAT_15 # NetBSD 1.5 compatibility. +#options COMPAT_14 # NetBSD 1.4 compatibility. +#options COMPAT_13 # NetBSD 1.3 compatibility. +#options COMPAT_12 # NetBSD 1.2 compatibility. +#options COMPAT_11 # NetBSD 1.1 compatibility. +#options COMPAT_10 # NetBSD 1.0 compatibility. +#options COMPAT_09 # NetBSD 0.9 compatibility. +#options TCP_COMPAT_42 # 4.2BSD TCP/IP bug compat. Not recommended. +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 + +# Device options +#options MEMORY_DISK_HOOKS # boottime setup of ramdisk +#options MEMORY_DISK_ROOT_SIZE=8192 # Size in blocks +#options MEMORY_DISK_DYNAMIC +#options MINIROOTSIZE=1000 # Size in blocks +#options MEMORY_DISK_IS_ROOT # use memory disk as root + +# Miscellaneous kernel options +options KTRACE # system call tracing, a la ktrace(1) +#options KMEMSTATS # kernel memory statistics +#options SCSIVERBOSE # Verbose SCSI errors +#options MIIVERBOSE # Verbose MII autoconfuration messages +#options DDB_KEYCODE=0x40 +#options USERCONF # userconf(4) support +#options PIPE_SOCKETPAIR # smaller, but slower pipe(2) + +# Development and Debugging options +options LOCKDEBUG +#options PERFCTRS # performance counters +options DIAGNOSTIC # internally consistency checks +#options DEBUG +#options PMAP_DEBUG # Enable pmap_debug_level code +options PMAPCOUNTERS +#options IPKDB # remote kernel debugging +#options VERBOSE_INIT_ARM # verbose bootstraping messages +options DDB # in-kernel debugger +options DDB_ONPANIC=1 +options DDB_HISTORY_SIZE=100 # Enable history editing in DDB +options DDB_KEYCODE=0x1d # Enter ddb on ^] +#options KGDB +options KGDB_DEVADDR=0xd0012000 +makeoptions DEBUG="-g" # compile full symbol table +options SYMTAB_SPACE=800000 + +## USB Debugging options +#options USB_DEBUG +#options EHCI_DEBUG +#options OHCI_DEBUG +#options UHUB_DEBUG + +# Valid options for BOOT_ARGS: +# single Boot to single user only +# kdb Give control to kernel debugger +# ask Ask for file name to reboot from +# pmapdebug=<n> If PMAP_DEBUG, set pmap_debug_level to <n> +# memorydisk=<n> Set memorydisk size to <n> KB +# quiet Show aprint_naive output +# verbose Show aprint_normal and aprint_verbose output +#options BOOT_ARGS="\"verbose kdb\"" +#options BOOT_ARGS="\"pmapdebug=1\"" + +config netbsd root on ? type ? +#config netbsd root on sd0c type ffs +#config netbsd root on wd0a type ffs +#config netbsd root on re1 type nfs + +# The main bus device +mainbus0 at root + +# The boot cpu +cpu0 at mainbus? + +# Specify the memory size in bytes. +options MEMSIZE=0x80000000 + +# Marvell SoC Bus +mvsoc0 at mainbus? + +# On-chip Timers +mvsoctmr* at mvsoc? offset ? irq ? + +# On-chip UART Interface +com* at mvsoc? +#options COM_DEBUG +options CONSADDR=0xd0012000 +options CONSPEED=115200 +options CONSFREQ=250000000 + +# On-chip Two-Wire Serial Interface (TWSI) +gttwsi* at mvsoc? offset ? irq ? +iic* at gttwsi? + +# Serial Peripheral Interface (SPI) +mvspi* at mvsoc? offset ? irq ? +spi* at mvspi? + +spiflash0 at spiflashbus? +m25p0 at spi? slave 0 + +# TWSI SDRAM Serial Presence Detect +spdmem0 at iic? addr 0x56 + +# On-chip USB 2.0 Interface +ehci* at mvsoc? offset ? irq ? + +# USB bus support +usb* at ehci? + +# USB Hubs +uhub* at usb? +uhub* at uhub? port ? + +# USB Mass Storage +umass* at uhub? port ? configuration ? interface ? +wd* at umass? +scsibus* at scsi? +sd* at scsibus? target ? lun ? # SCSI disk drives + +# USB Generic driver +ugen* at uhub? port ? + +# USB Network interface +udav* at uhub? port ? + +# On-chip Serial-ATA II Host Controller (SATAHC) +mvsata* at mvsoc? offset ? irq ? +#options MVSATA_WITHOUTDMA + +# ATA (IDE) bus support +atabus* at ata? +#options ATADEBUG + +# ATAPI bus support +atapibus* at atapi? + +# IDE drives +wd* at atabus? drive ? flags 0x0000 + +# ATAPI devices +# flags have the same meaning as for IDE drives. +sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives +uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown + +# On-chip RTC +mvsocrtc* at mvsoc? offset ? irq ? + +# On-chip PCI Express Interface +mvpex* at mvsoc? offset ? irq ? + +# PCI bus support +options PCI_NETBSD_CONFIGURE +#options PCI_CONFIG_DUMP # verbosely dump PCI config space +pci* at mvpex? +pchb* at pci? dev ? function ? # PCI-Host bridges + +# PCI Ethernet +wm* at pci? dev ? function ? # Intel 8254x gigabit +re* at pci? dev ? function ? + +acphy* at mii? phy ? # Altima AC101 10/100 PHY +amhphy* at mii? phy ? # AMD 79c901 PHY (10BASE-T part) +bmtphy* at mii? phy ? # Broadcom BCM5201/5202 PHYs +brgphy* at mii? phy ? # Broadcom BCM5400/5401 Gig-E PHYs +ciphy* at mii? phy ? # Cicada CS8201 Gig-E PHYs +dmphy* at mii? phy ? # Davicom DM9101 PHYs +exphy* at mii? phy ? # 3Com internal PHYs +gentbi* at mii? phy ? # Generic ten-bit 1000BASE-X PHYs +glxtphy* at mii? phy ? # Level One LXT-1000 Gig-E PHYs +gphyter* at mii? phy ? # NatSemi DP83861 Gig-E PHYs +icsphy* at mii? phy ? # Integrated Circuit Systems ICS1890 PHYs +igphy* at mii? phy ? # Intel IGP01E1000, i82566 10/100/1000 +ikphy* at mii? phy ? # Intel 82563 PHYs +inphy* at mii? phy ? # Intel 82555 PHYs +iophy* at mii? phy ? # Intel 82553 PHYs +lxtphy* at mii? phy ? # Level One LXT-970 PHYs +makphy* at mii? phy ? # Marvel 88E1000 Gig-E PHYs +nsphy* at mii? phy ? # NatSemi DP83840 PHYs +nsphyter* at mii? phy ? # NatSemi DP83843/DP83815 PHYs +pnaphy* at mii? phy ? # Generic HomePNA PHYs +qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs +rgephy* at mii? phy ? # Realtek 8169S/8110S internal PHYs +rlphy* at mii? phy ? # Realtek 8139/8201L PHYs +sqphy* at mii? phy ? # Seeq 80220/80221/80223/80225 PHYs +tlphy* at mii? phy ? # ThunderLAN internal PHYs +tqphy* at mii? phy ? # TSC Semiconductor 78Q2120 PHYs +ukphy* at mii? phy ? # Generic/unknown PHYs +urlphy* at mii? phy ? # Realtek RTL8150L internal PHYs + +# Pseudo-Devices +# disk/mass storage pseudo-devices +pseudo-device md # memory disk device (ramdisk) +pseudo-device vnd # pseudo disks (see vnconfig) +#pseudo-device fss # file system snapshot device + +# network pseudo-devices +pseudo-device bpfilter # Berkeley packet filter +pseudo-device loop # network loopback +pseudo-device kttcp # network loopback +pseudo-device putter + +# miscellaneous pseudo-devices +pseudo-device pty # pseudo-terminals +#options RND_COM +#pseudo-device clockctl # user control of clock subsystem +pseudo-device ksyms # /dev/ksyms Index: src/sys/arch/evbarm/conf/files.armadaxp diff -u /dev/null src/sys/arch/evbarm/conf/files.armadaxp:1.1 --- /dev/null Wed May 29 22:52:19 2013 +++ src/sys/arch/evbarm/conf/files.armadaxp Wed May 29 22:52:19 2013 @@ -0,0 +1,23 @@ +# $NetBSD: files.armadaxp,v 1.1 2013/05/29 22:52:19 rkujawa Exp $ +# +# Marvell Armada XP configuration info +# +file arch/arm/arm32/arm32_boot.c +file arch/arm/arm32/arm32_kvminit.c +file arch/arm/arm32/arm32_reboot.c + +file arch/evbarm/armadaxp/armadaxp_machdep.c + +# Kernel boot arguments +defparam opt_machdep.h BOOT_ARGS +defflag opt_cputypes.h L2CACHE_ENABLE +defflag opt_cputypes.h AURORA_IO_CACHE_COHERENCY AURORA_L2_PT_WALK + +# CPU support and integrated peripherals +include "arch/arm/marvell/files.marvell" + +# SPI Serial Peripheral Interface +device mvspi: spibus +attach mvspi at mvsoc with mvspi_mbus +file dev/marvell/mvspi.c mvspi + Index: src/sys/arch/evbarm/conf/mk.armadaxp diff -u /dev/null src/sys/arch/evbarm/conf/mk.armadaxp:1.1 --- /dev/null Wed May 29 22:52:19 2013 +++ src/sys/arch/evbarm/conf/mk.armadaxp Wed May 29 22:52:19 2013 @@ -0,0 +1,26 @@ +# +# $NetBSD: +# + +SYSTEM_FIRST_OBJ= armadaxp_start.o +SYSTEM_FIRST_SFILE= ${THISARM}/armadaxp/armadaxp_start.S + +_OSRELEASE!= ${HOST_SH} $S/conf/osrelease.sh + +KERNEL_BASE_PHYS=0x00200000 +KERNEL_BASE_VIRT=0xc0200000 + +MKUBOOTIMAGEARGS= -A arm -T kernel +MKUBOOTIMAGEARGS+= -a $(KERNEL_BASE_PHYS) +MKUBOOTIMAGEARGS+= -n "NetBSD/$(BOARDTYPE) ${_OSRELEASE}" +MKUBOOTIMAGEARGS_NONE= ${MKUBOOTIMAGEARGS} -C none + +SYSTEM_LD_TAIL_EXTRA+=; \ + echo ${OBJCOPY} -S -O binary $@ $@.bin; \ + ${OBJCOPY} -S -O binary $@ $@.bin; \ + echo ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS} $@.bin $@.ub; \ + ${TOOL_MKUBOOTIMAGE} ${MKUBOOTIMAGEARGS} $@.bin $@.ub; \ + echo + +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.bin@} +EXTRA_KERNELS+= ${KERNELS:@.KERNEL.@${.KERNEL.}.ub@} Index: src/sys/arch/evbarm/conf/std.armadaxp diff -u /dev/null src/sys/arch/evbarm/conf/std.armadaxp:1.1 --- /dev/null Wed May 29 22:52:19 2013 +++ src/sys/arch/evbarm/conf/std.armadaxp Wed May 29 22:52:19 2013 @@ -0,0 +1,34 @@ +# $NetBSD: std.armadaxp,v 1.1 2013/05/29 22:52:19 rkujawa Exp $ +# +# standard NetBSD/evbarm for ARMADAXP options + +machine evbarm arm +include "conf/std" # MI standard options + +include "arch/evbarm/conf/files.armadaxp" + +options EXEC_ELF32 +options EXEC_SCRIPT + +# To support easy transit to ../arch/arm/arm32 +options ARM32 +options __HAVE_FAST_SOFTINTS # should be in types.h +options __HAVE_PCI_CONF_HOOK # should be in types.h + + +# Build for armv7-a, soft-floats only +makeoptions CPUFLAGS="-march=armv7-a -msoft-float" + +options KERNEL_BASE_EXT=0xc0000000 +options STARTUP_PAGETABLE_ADDR=0x00100000 +options MEMSTART=0x00000000 +makeoptions LOADADDRESS="0x00200000" + +makeoptions BOARDTYPE="armadaxp" +makeoptions BOARDMKFRAG="${THISARM}/conf/mk.armadaxp" + +options EVBARM_BOARDTYPE="Armada XP" +options ARM_INTR_IMPL="<arch/arm/marvell/mvsoc_intr.h>" +options COM_REGMAP +options COM_16750 +options PIC_MAXSOURCES=128