Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: TS7200_INSTALL kernel problem solved - kernel too big!
Following is the kernel configuration file that I have tried using
CURRENT. I think I have disabled everything I possibly can but it
still drops to the debugger when I attempt to load it.
Patrick Collins
+61 419 712 581
include "arch/evbarm/conf/std.tsarm"
#options INCLUDE_CONFIG_FILE # embed config file in kernel binary
options MSGBUFSIZE=65536
#options KSTACK_CHECK_MAGIC
# 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_ARM9 # Support the ARM9TDMI core
# 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 FILECORE # Acorn filecore file system
file-system KERNFS # /kern
file-system NULLFS # loopback file system
#file-system PORTAL # portal filesystem (still experimental)
file-system PROCFS # /proc
#file-system UMAPFS # NULLFS + uid and gid remapping
file-system UNION # union file system
file-system PTYFS # /dev/pts/N support
# File system options
#options QUOTA # UFS quotas
#options FFS_EI # FFS Endian Independant support
#options NFSSERVER
#options WAPBL # File system journaling support - Experimental
#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 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_BOOTP
#options NFS_BOOT_DHCP
#options NFS_BOOT_BOOTPARAM
# Compatibility options
#options COMPAT_LINUX
#options COMPAT_43 # 4.3BSD 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.
# 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
# Device options
#options MEMORY_DISK_HOOKS # boottime setup of ramdisk
#options MEMORY_DISK_ROOT_SIZE=3400 # Size in blocks
#options MEMORY_DISK_IS_ROOT # use memory disk as root
# Console options. The default console is speed is 115200 baud.
#options CONSPEED=9600 # Console speed
# Miscellaneous kernel options
#options KTRACE # system call tracing, a la ktrace(1)
#options IRQSTATS # manage IRQ statistics
#options KMEMSTATS # kernel memory statistics
#options SCSIVERBOSE # Verbose SCSI errors
#options PCIVERBOSE # Verbose PCI descriptions
#options MIIVERBOSE # Verbose MII autoconfuration messages
#options PCI_CONFIG_DUMP # verbosely dump PCI config space
#options DDB_KEYCODE=0x40
#options USERCONF # userconf(4) support
#options PIPE_SOCKETPAIR # smaller, but slower pipe(2)
# Development and Debugging options
#options PERFCTRS # performance counters
#options DIAGNOSTIC # internally consistency checks
#options DEBUG
#options PMAP_DEBUG # Enable pmap_debug_level code
#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
#makeoptions DEBUG="-g" # compile full symbol table
#options SYMTAB_SPACE=450000
#options PMAP_INCLUDE_PTE_SYNC
#options LOCKDEBUG
config netbsd root on ? type ?
#config netbsd-epe0 root on epe0 type nfs
config netbsd-wd0 root on wd0 type ffs
#config netbsd-sd0 root on sd0 type ffs
# The main bus device
mainbus0 at root
# The boot cpu
cpu0 at mainbus?
# Cirrus Logic EP93xx System-on-chip
epsoc0 at mainbus?
# On-chip timers
epclk0 at epsoc? addr 0x80810000 size 0x90 intr 35
# On-chip serial UARTS
epcom0 at epsoc? addr 0x808c0000 size 0x1000 intr 52
epcom1 at epsoc? addr 0x808d0000 size 0x1000 intr 54
# On-chip USB 1.1
ohci* at epsoc? addr 0x80020000 size 0x1000 intr 56
# On-chip 10/100 Ethernet
epe0 at epsoc? addr 0x80010000 size 0x10000 intr 39
# On-board TS-7200 CPLD
tspld0 at mainbus?
# PC/104 bus
isa0 at tspld?
# CompactFlash interface
wdc0 at tspld?
# TS-5620 battery-backed real-time clock
tsrtc* at tspld?
# HD44780 LCD on LCD header
#tslcd* at tspld?
#wsdisplay* at tslcd? console ?
# 4x4 Matrix Keypad on DIO header
#tskp* at tspld?
#wskbd* at tskp? console ? mux 1
# TS-SER[1,2,4] multiport serial PC/104 cards
#com0 at isa? port 0x3f8 irq 6 # Standard PC serial ports
#com1 at isa? port 0x2f8 irq 6
#com2 at isa? port 0x3e8 irq 6
#com3 at isa? port 0x2e8 irq 6
wdc1 at isa? port 0x1f0 irq 7 flags 0x00
#wdc2 at isa? port 0x170 irq 7 flags 0x00
#tscs0 at isa? port 0x300 iomem ? irq ? drq ? # TS-ETH10 PC/104 ethernet
#tscs1 at isa? port 0x310 iomem ? irq ? drq ?
#tscs2 at isa? port 0x320 iomem ? irq ? drq ?
#tscs3 at isa? port 0x330 iomem ? irq ? drq ?
#tsdio0 at isa? port 0x100 # TS-DIO24 general-purpose I/O
#tsdio1 at isa? port 0x108
#tsdio2 at isa? port 0x110
#tsdio3 at isa? port 0x118
# PCMCIA bus support
#pcmcia* at pcic? controller ? socket ?
#options PCIC_ISA_INTR_ALLOC_MASK=0xe0
# ISA PCMCIA controllers
#pcic0 at isa? port 0x3e0 iomem 0xd0000 iosiz 0x10000
#pcic1 at isa? port 0x3e2 iomem 0xe0000 iosiz 0x4000
#pcic2 at isa? port 0x3e4 iomem 0xe0000 iosiz 0x4000
# ATA (IDE) bus support
atabus* at ata?
# IDE drives
# Flags are used only with controllers that support DMA operations
# and mode settings (e.g. some pciide controllers)
# The lowest order four bits (rightmost digit) of the flags define the PIO
# mode to use, the next set of four bits the DMA mode and the third set the
# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
# to use, and the last bit must be 1 for this setting to be used.
# For DMA and UDMA, 0xf (1111) means 'disable'.
# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
# (0xc=1100, 0xa=1010, 0xf=1111)
# 0x0000 means "use whatever the drive claims to support".
wd* at atabus? drive ? flags 0x00ff
# ATAPI bus support
#atapibus* at atapi?
# ATAPI devices
# flags have the same meaning as for IDE drives.
# XXX No DMA on IDE devices for now
#cd* at atapibus? drive ? flags 0x0ff0 # 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
# MII/PHY support
#acphy* at mii? phy ? # Altima AC101 and AMD Am79c874 PHYs
#amhphy* at mii? phy ? # AMD 79c901 Ethernet PHYs
#bmtphy* at mii? phy ? # Broadcom BCM5201 and BCM5202 PHYs
#brgphy* at mii? phy ? # Broadcom BCM5400-family PHYs
#dmphy* at mii? phy ? # Davicom DM9101 PHYs
#exphy* at mii? phy ? # 3Com internal PHYs
#gentbi* at mii? phy ? # Generic Ten-Bit 1000BASE-[CLS]X PHYs
#glxtphy* at mii? phy ? # Level One LXT-1000 PHYs
#gphyter* at mii? phy ? # NS83861 Gig-E PHY
#icsphy* at mii? phy ? # Integrated Circuit Systems ICS189x
#igphy* at mii? phy ? # Intel IGP01E1000
#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 ? # Marvell Semiconductor 88E1000 PHYs
#nsphy* at mii? phy ? # NS83840 PHYs
#nsphyter* at mii? phy ? # NS83843 PHYs
#pnaphy* at mii? phy ? # generic HomePNA PHYs
#qsphy* at mii? phy ? # Quality Semiconductor QS6612 PHYs
#sqphy* at mii? phy ? # Seeq 80220/80221/80223 PHYs
#tlphy* at mii? phy ? # ThunderLAN PHYs
#tqphy* at mii? phy ? # TDK Semiconductor PHYs
#ukphy* at mii? phy ? # generic unknown PHYs
#urlphy* at mii? phy ? # Realtek RTL8150L internal PHYs
# USB Controller and Devices
# USB bus support
#usb* at ehci?
usb* at ohci?
#usb* at uhci?
#usb* at slhci?
# USB Hubs
uhub* at usb?
uhub* at uhub? port ?
# USB HID device
uhidev* at uhub? port ? configuration ? interface ?
# USB Mice
# ums* at uhidev? reportid ?
# wsmouse* at ums? mux 0
# USB eGalax touch-panel
# uep* at uhub? port ?
# wsmouse* at uep? mux 0
# USB Keyboards
#ukbd* at uhidev? reportid ?
#wskbd* at ukbd? console ? mux 1
# USB serial adapter
#ucycom* at uhidev? reportid ?
# USB Generic HID devices
uhid* at uhidev? reportid ?
# USB Printer
#ulpt* at uhub? port ? configuration ? interface ?
# USB Modem
umodem* at uhub? port ? configuration ?
ucom* at umodem?
# USB Mass Storage
umass* at uhub? port ? configuration ? interface ?
scsibus* at umass?
# SCSI devices
sd* at scsibus? target ? lun ? # SCSI disk drives
#st* at scsibus? target ? lun ? # SCSI tape drives
#cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
#ch* at scsibus? target ? lun ? # SCSI autochangers
#ses* at scsibus? target ? lun ? # SCSI Enclosure Services devices
#ss* at scsibus? target ? lun ? # SCSI scanners
#uk* at scsibus? target ? lun ? # SCSI unknown
# wd* at umass?
# USB audio
#uaudio* at uhub? port ? configuration ?
# USB MIDI
#umidi* at uhub? port ? configuration ?
# USB IrDA
# USB-IrDA bridge spec
#uirda* at uhub? port ? configuration ? interface ?
#irframe* at uirda?
# SigmaTel STIr4200 USB/IrDA Bridge
#ustir* at uhub? port ?
#irframe* at ustir?
# USB Ethernet adapters
#aue* at uhub? port ? # ADMtek AN986 Pegasus based adapters
#axe* at uhub? port ? # ASIX AX88172 based adapters
#cue* at uhub? port ? # CATC USB-EL1201A based adapters
#kue* at uhub? port ? # Kawasaki LSI KL5KUSB101B based adapters
#udav* at uhub? port ? # Davicom DM9601 based adapters
#url* at uhub? port ? # Realtek RTL8150L based adapters
# Prolific PL2301/PL2302 host-to-host adapter
#upl* at uhub? port ?
# Serial adapters
#ubsa* at uhub? port ? # Belkin serial adapter
#ucom* at ubsa? portno ?
#uftdi* at uhub? port ? # FTDI FT8U100AX serial adapter
#ucom* at uftdi? portno ?
#umct* at uhub? port ? # MCT USB-RS232 serial adapter
#ucom* at umct? portno ?
#uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter
#ucom* at uplcom? portno ?
#uvscom* at uhub? port ? # SUNTAC Slipper U VS-10U serial adapter
#ucom* at uvscom? portno ?
#atu* at uhub? port ? # Atmel AT76C50XX 802.11b adapter
# Diamond Multimedia Rio 500
# urio* at uhub? port ?
# USB Handspring Visor
# uvisor* at uhub? port ?
# ucom* at uvisor?
# Kyocera AIR-EDGE PHONE
#ukyopon* at uhub? port ?
#ucom* at ukyopon? portno ?
# USB scanners
# uscanner* at uhub? port ?
# USB scanners that use SCSI emulation, e.g., HP5300
# usscanner* at uhub? port ?
# Y@P firmware loader
# uyap* at uhub? port ?
# D-Link DSB-R100 USB radio
# udsbr* at uhub? port ?
# radio* at udsbr?
# USB Generic driver
ugen* at uhub? port ?
# IrDA and Consumer Ir devices
# Toshiba Oboe
# oboe* at pci? dev ? function ?
# irframe* at oboe?
# CardBus IEEE1394 controllers
#fwohci* at cardbus? function ? # IEEE1394 Open Host Controller
#fw* at fwbus? # IP over 1394
# IEEE1394 nodes
#fwnode* at fwbus? idhi ? idlo ?
#sbpscsi* at fwnode?
#scsibus* at sbpscsi?
# Audio Devices
# OPL[23] FM synthesizers
#opl* at cmpci? flags 1
#opl* at eso?
#opl* at fms?
#opl* at sv?
#opl* at yds?
# Audio support
#audio* at audiobus?
# MPU 401 UARTs
#mpu* at cmpci?
#mpu* at eso?
#mpu* at fms?
#mpu* at yds?
# MIDI support
#midi* at midibus?
# Pseudo-Devices
# disk/mass storage pseudo-devices
#pseudo-device md 1 # memory disk device (ramdisk)
pseudo-device vnd # disk-like interface to files
#pseudo-device fss 4 # file system snapshot device
# network pseudo-devices
pseudo-device bpfilter # Berkeley packet filter
pseudo-device loop # network loopback
pseudo-device kttcp # network loopback
# miscellaneous pseudo-devices
pseudo-device pty # pseudo-terminals
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
# data mover pseudo-devices
#pseudo-device swdmover # softare dmover(9) back-end
#pseudo-device dmoverio # /dev/dmover dmover(9) interface
#
# wscons options
#
# builtin terminal emulations
#options WSEMUL_SUN # sun terminal emulation
options WSEMUL_VT100 # VT100 / VT220 emulation
# customization of console and kernel output - see dev/wscons/wsdisplayvar.h
#options WSDISPLAY_CUSTOM_OUTPUT # color customization from wsconsctl(8)
#options WS_DEFAULT_FG=WSCOL_WHITE
#options WS_DEFAULT_BG=WSCOL_BLACK
#options WS_DEFAULT_COLATTR="(0)"
#options WS_DEFAULT_MONOATTR="(0)"
#options WS_KERNEL_FG=WSCOL_GREEN
#options WS_KERNEL_BG=WSCOL_BLACK
#options WS_KERNEL_COLATTR=""
#options WS_KERNEL_MONOATTR=""
# customization of console border color
#options WSDISPLAY_CUSTOM_BORDER # border customization from wsconsctl(8)
#options WSDISPLAY_BORDER_COLOR=WSCOL_BLUE # default color
# compatibility to other console drivers
#options WSDISPLAY_COMPAT_PCVT # emulate some ioctls
#options WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls
#options WSDISPLAY_COMPAT_USL # VT handling
#options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
# see dev/pckbport/wskbdmap_mfii.c for implemented layouts
#options PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
# allocate a number of virtual screens at autoconfiguration time
#options WSDISPLAY_DEFAULTSCREENS=4
# use a large software cursor that doesn't blink
#options PCDISPLAY_SOFTCURSOR
# modify the screen type of the console; defaults to "80x25"
#options VGA_CONSOLE_SCREENTYPE="\"80x24\""
# work around a hardware bug that loaded fonts don't work; found on ATI cards
#options VGA_CONSOLE_ATI_BROKEN_FONTSEL
# console scrolling support.
#options WSDISPLAY_SCROLLSUPPORT
# enable VGA raster mode capable of displaying multilingual text on console
#options VGA_RASTERCONSOLE
# wscons pseudo-devices
pseudo-device wsmux # mouse & keyboard multiplexor
#pseudo-device wsfont
2008/12/12 M. Warner Losh <imp%bsdimp.com@localhost>:
> In message: <494192D2.3050505%embeddedARM.com@localhost>
> Jesse Off <joff%embeddedARM.com@localhost> writes:
> : Ken Hornstein wrote:
> : >> u-boot has those features now, but not redboot.
> : >>
> : >
> : > Yeah, I think that unless Embedded ARM wants to switch to u-boot, that
> doesn't
> : > help us. Ah, well.
> : >
> : > --Ken
> : >
> : >
> :
> : We're not a big fan of either u-Boot or RedBoot out here. Seems like
> : overkill to write one OS to for the sole purpose of starting up
> : another. I personally prefer to minimize how many drivers I write or
> : debug for the same hardware. :-)
>
> Yea...
>
> : In our new products, we have written a 442 byte bootloader that loads
> : kernels from x86 MBR style partitions of either NAND flash or SD card
> : and can boot a small Linux kernel + ramdisk in about the same amount of
> : time it takes the RedBoot or u-boot bloatware to start up. Once up, we
> : have written a Linux program + kernel module that can start up other
> : OS's, RTOS's, and OS-less applications. In effect, we use Linux as our
> : bootloader so that you could load kernels via NFS over USB wifi dongle
> : and configure pre-bootup behavior in shell script, etc...
>
> 442! Wow! I was all proud of a 9k boot loader I wrote for the
> AT91RM9200 that I was working that loaded kernels off a ufs partition,
> including a SD/MMC card isolation and reading stack and keyboard
> interrupt/kernel name entry... I stopped at 9k since that easily fit
> in the 12k+4k stack that you have in the initial program load on that
> SoC. I was bummed to see that newer at91 parts had only 4k of RAM for
> the initial load, which was going to be a big stretch.... but I
> digress...
>
>
> : Here's some info on it:
> : http://www.embeddedarm.com/software/arm-linux-bootloader.php
> :
> : I ported the bootload utility to NetBSD too-- it doesn't even need a
> : kernel module. I do what I need to do there via /dev/mem and /dev/kmem.
> :
> : This application + kernel module should also work on the default TS-7200
> : Linux installation. You can place the NetBSD kernel on the Linux JFFS2
> : filesystem and then run our "bootload" command to soft-boot into another
> : OS. On the platforms we've standardized on this scheme we can go from
> : power-on to Linux to another OS in about 3 seconds or so. The TS-7200
> : Linux boots up a little slower, but its still not too bad.
>
> Well, at least I got this same speed: power on to mounting a FreeBSD
> root was between 2s and 3s...
>
> Very cool that you can do similar in so much less...
>
> Warner
>
Home |
Main Index |
Thread Index |
Old Index