Date: Sat, 13 Dec 2008 17:12:44 +0000 From: Bruce Simpson <bms@incunabulum.net> To: freebsd-embedded@FreeBSD.org Subject: ARM closet cleaning: Freecom FSG3 configs Message-ID: <4943ED0C.4000006@incunabulum.net>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------090401010106080503070502 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Here are the configs for the FSG3 I was hacking on, pulled from a temporary svn branch. cheers BMS --------------090401010106080503070502 Content-Type: text/plain; name="fsg3-kernel-configs.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="fsg3-kernel-configs.diff" Index: sys/arm/conf/FSG3.hints =================================================================== --- sys/arm/conf/FSG3.hints (revision 0) +++ sys/arm/conf/FSG3.hints (revision 0) @@ -0,0 +1,49 @@ +# $FreeBSD$ + +# +# Device wiring for the Freecom FSG3 +# + +# DBGU is unit 0 +hint.uart.0.at="ixp0" +hint.uart.0.addr=0xc8000000 +hint.uart.0.irq=15 +hint.uart.0.flags=0x10 +# USART0 is unit 1 +hint.uart.1.at="ixp0" +hint.uart.1.addr=0xc8001000 +hint.uart.1.irq=13 + +# NPE Hardware Queue Manager +hint.ixpqmgr.0.at="ixp0" + +# NPE NIC's, requires ixpqmgr +hint.npe.0.at="ixp0" +hint.npe.0.mac="A" +hint.npe.0.mii="A" +hint.npe.0.phy=5 +# XXX BMSR for PHY 5 must always be forced. +# XXX Don't use the rlswitch shared driver +# for this side of the switch; use a different OUI. +hint.npe.0.force_bmsr=0x402C +hint.npe.0.force_idr1=0x000C +hint.npe.0.force_idr2=0xC851 + +hint.npe.1.at="ixp0" +hint.npe.1.mac="B" +hint.npe.1.mii="A" +hint.npe.1.phy=4 +# Realtek RTL8305SB (Rev 1) +# XXX BMSR must always be forced -- RTL8305SB has no ID registers. +hint.npe.1.force_bmsr=0x4024 +hint.npe.1.force_idr1=0x001C +hint.npe.1.force_idr2=0xC851 + +# RTC +hint.x1226rtc.0.at="iicbus0" +hint.x1226rtc.0.addr=0x6f + +#not yet +# Slug LED +# Slug button +# Slug Buzzer Index: sys/arm/conf/FSG3.env =================================================================== --- sys/arm/conf/FSG3.env (revision 0) +++ sys/arm/conf/FSG3.env (revision 0) @@ -0,0 +1 @@ +boot_verbose=YES Index: sys/arm/conf/FSG3 =================================================================== --- sys/arm/conf/FSG3 (revision 0) +++ sys/arm/conf/FSG3 (revision 0) @@ -0,0 +1,153 @@ +# FSG3 - kernel configuration file for FreeBSD/arm on Freecom FSG3. +# + +machine arm +ident FSG3 + +options PHYSADDR=0x10000000 +options KERNPHYSADDR=0x10200000 +options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm +options FLASHADDR=0x50000000 +options LOADERRAMADDR=0x00000000 +options STARTUP_PAGETABLE_ADDR=0x10000000 + +# XXX 0x0 is not free in NSLU2 loader, but it *might* be free +# in the U-Boot loader. +# Allow 4MB (XXX) for kernel image. +# XXX Changing this appears to bloat the tramp, why? +#options FLASHADDR=0x01d00000 +#options LOADERRAMADDR=0x01d00000 + +include "../xscale/ixp425/std.avila" +#To statically compile in device wiring instead of /boot/device.hints +hints "FSG3.hints" #Default places to look for devices. + +# For some reason the kernel ain't bootp-ing. +#env "FSG3.env" # XXX set mountroot + +# XXX need tramp w/o symbols for <1MB +#makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols +makeoptions DEBUG=-g3 #Build kernel with gdb(1) debug symbols + +makeoptions CONF_CFLAGS=-mcpu=xscale +options HZ=100 +options DEVICE_POLLING + +# XXX +options VERBOSE_SYSINIT + +# Debugging for use in -current +options KDB +options GDB +options DDB #Enable the kernel debugger + +options ALT_BREAK_TO_DEBUGGER + +#options INVARIANTS #Enable calls of extra sanity checking +#options INVARIANT_SUPPORT #Extra sanity checks of internal structures, required by INVARIANTS +#options WITNESS #Enable checks to detect deadlocks and cycles +#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed +#options DIAGNOSTIC + +options SCHED_ULE #ULE scheduler +options INET #InterNETworking +#options INET6 #IPv6 communications protocols +options FFS #Berkeley Fast Filesystem +options SOFTUPDATES #Enable FFS soft updates support +options UFS_ACL #Support for access control lists +options UFS_DIRHASH #Improve performance on big directories +#options NFSCLIENT #Network Filesystem Client +#options NFSSERVER #Network Filesystem Server +#options NFSLOCKD #Network Lock Manager +#options NFS_ROOT #NFS usable as /, requires NFSCLIENT +#options MSDOSFS #MSDOS Filesystem +#options CD9660 #ISO 9660 Filesystem +#options PROCFS #Process filesystem (requires PSEUDOFS) +options PSEUDOFS #Pseudo-filesystem framework +options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI +options KTRACE #ktrace(1) support +options SYSVSHM #SYSV-style shared memory +options SYSVMSG #SYSV-style message queues +options SYSVSEM #SYSV-style semaphores +options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions + +options MUTEX_NOINLINE #Mutex inlines are space hogs +options RWLOCK_NOINLINE #rwlock inlines are space hogs +options SX_NOINLINE #sx inliens are space hogs + +# XXX Until we can get disk drivers to attach above, +# we will need to attempt network boot. +options BOOTP +options BOOTP_NFSROOT +options BOOTP_NFSV3 +options BOOTP_WIRED_TO=npe0 +options BOOTP_COMPAT + +options NFSCLIENT #Network Filesystem Client +options NFSLOCKD #Network Lock Manager +options NFS_ROOT #NFS usable as /, requires NFSCLIENT + +#options GEOM_MBR +#options GEOM_PART_MBR + +device mem # Memory and kernel memory devices +device pci +device uart + +# I2C Bus +device iicbus +device iicbb +device iic + +device ixpiic # I2C bus glue +device ixpwdog # watchdog timer + +device x1226rtc # I2C real-time clock + +####### netwerk + +device npe # Network Processing Engine +device npe_fw +device firmware +device qmgr # Q Manager (required by npe) + +# XXX There is an RTL8305SB with 5 physical ports. Two are configured +# as miibus PHYs, however the SB rev does NOT have ID registers, and +# attempting to probe the BMSR seems to cause problems with the PHY. +# +# The rlswitch driver is written for the RTL8305SC, which is a totally +# different chip -- the vlan register setup is not the same. +# +# ukphy is part of mii, we use that for the first port, but reject any +# attempts to read or write PHY ID 5 (npe0). +# +device mii +device rlswitch + +device ether +device bpf + +device pty +device loop + +options XSCALE_CACHE_READ_WRITE_ALLOCATE +device md # XXX .ko candidate? +device random # Entropy device + +#options ARM_USE_SMALL_ALLOC + +# XXX only needed for bootstrap rootfs from usb +#device usb +#options USB_DEBUG # XXX not needed <1MB? +#device ohci +#device ehci +#device umass +#device scbus # SCSI bus (required for SCSI) +#device da # Direct Access (disks) + +# XXX PCI devices have not yet been configured, so +# the kernel never sees the onboard VIA VT6421A. +#device atacore +#device atapci +#device atavia +#device atadisk --------------090401010106080503070502--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4943ED0C.4000006>