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