Port-arm archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: NetBSD 5.0.1 Support for the TS7200
>To get started I want to build a development environment so that I can build
>TS-7200 kernels. At this point I have a cross development environment
>running on a IA64 VMware virtual. I can build the standard TS7200 kernel in
>the 5.0.1 source tree but I can't work out how to gzip it so that it can be
>written to and booted from the TS-7200 flash.
Fair enough; you either have to look at the various Makefiles, or build
a full distribution and watch the commands go by.
>If you can help me with the following things I would be very thankful:
>
>1. How to build a TS-7200 gzipped kernel.
Well, _that_ part is easy, actually. Just gzip it!
But seriously ... when you build your kernel, you should have something
like "netbsd.bin", or "netbsd-wd0.bin" (if you are using a CF card, you
probably want the latter). First, gzip that (probably with -9).
Then, you need a file called "gzboot_TS7200_0x60660000.bin". That probably
lives in /usr/mdec on the TS7200 distribution media (you can also build
that via the cross-compilation environment by using "build.sh build".
Simply cat those together:
cat gzboot_TS7200_0x60660000.bin netbsd-wd0.bin.gz > netbsd.gz
And voila! Copy that to flash, and you're good to go.
>2. A kernel config file that will built a kernel for an 8 MB flash / 32
>MB RAM TS-7200.
I've attached what I use ... but you probably want to comment out the
stuff about epgpio. Notice that basically it's the TS7200 kernel config
file with a bunch of crap removed.
>3. Any pointer you may have that will help me to build a kernel driver
>for the onboard ADC hardware and use it with TCL.
Ummm ... do you have the additional ADC hardware? (The MAX197).
The EP9302 does have a on-board ADC, but it's not clear to me that
it's usable (there is calibration data for it in an EEPROM that the
TS7250 has, but the TS7200 does not).
A driver for that has to be written. No one has done that yet. I suppose
in theory you could do that from userspace via /dev/mem or something like
that. You could maybe even do that via a Tcl extension. The TS7200
manual has more details on how that works.
--Ken
#
# MODRED -- Ken's TS7200
#
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 TMPFS # Efficient 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 SOFTDEP
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 LKM # loadable kernel modules
#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?
# On-board GPIO ports
epgpio0 at epsoc? addr 0x80840000 size 0xcc intr 59
gpio* at epgpio?
options EPGPIO_PORT_C_MASK=0x00
options EPGPIO_PORT_D_MASK=0x00
options EPGPIO_PORT_E_MASK=0x00
options EPGPIO_PORT_F_MASK=0x02
options EPGPIO_PORT_G_MASK=0x00
options EPGPIO_PORT_H_MASK=0x38
# 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
Home |
Main Index |
Thread Index |
Old Index