73 lines
2.7 KiB
Plaintext
73 lines
2.7 KiB
Plaintext
|
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.
|