Notes on the NetBSD/da30 port. ------------------------------ This directory contains a port of NetBSD to the DA-30, a single-board computer based on the MC68030 microprocessor. There is exactly one DA-30 in existence: it's the wire-wrap prototype of a robot controller. Unfortunately the local company making the robots that I designed the DA-30 for stopped making robots and started imported them instead :-(. So I added some disk and a graphics interface, and now it's my home system. This port won't be directly applicable to anybody else's machine, but I hope it will be useful as an example; perhaps some of the drivers may be useful to somebody also. This system deviates from "traditional" NetBSD in that one hard disk has a sector size of 1024 bytes rather than 512. The file "patches" in this directory contains modifications to files in the (supposedly) machine-independent part of NetBSD to support sector sizes other than 512 bytes. The most significant modification is that the d_psize function for a block device now takes a second parameter, which is a pointer to an integer variable where the sector size of the disk is stored. Specifications: - MC68030 CPU at 16.67 MHz - MC68881 floating-point coprocessor - 5MB of RAM (could be upgraded to 8MB) - 128kB of EPROM, containing boot code - 32kB of battery-backed SRAM - calendar/clock (DP8570 RTC) - 4 serial ports (Z85C30 SCC) - SCSI interface (WD33C93A SBIC), connected to 100MB SCSI disk - Graphics processor: TMS34010 GSP with 512kB of VRAM, driving a 880 x 600 x 4 bit/pixel display - WD1002-05 hard disk/floppy controller, controlling a 45MB hard disk and a 3.5" floppy - IDE disk drive (250MB) - VME interface (currently not used). MACHINE for this system is "da30", and MACHINE_ARCH is "m68k". The port is based largely on the hp300 port, with the exception of the device drivers and the autoconfiguration code. I use config.new, and the autoconfiguration is based on the information in ioconf.c, which is derived from the config file. The physical address space of the system is organized as follows: 00000000 - 007FFFFF RAM 00800000 - 0081FFFF EPROM 00900000 - 00907FFF battery-backed SRAM 00E00000 - 00EFFFFF I/O space (internal) 00F00000 - 00F0FFFF VME A16 address space 01000000 - FEFFFFFF VME A32 address space FF000000 - FFFFFFFF VME A24 address space I/O space is divided into 16 "slots". Slot n occupies addresses 00En0000 - 00EnFFFF. Slots are currently assigned as follows: 0 SCC 1 (serial comms controller) 1 SCC 2 4 calendar/clock 5 WD1002-05 hard + floppy disk ctrler 6 IDE disk drive 7 TMS34010 graphics processor 9 SCSI bus interface controller Paul Mackerras paulus@cs.anu.edu.au Dept. of Computer Science Australian National University.