1994-02-23 11:28:11 +03:00
|
|
|
THINGS TO BE DONE: (NetBSD/Sun3 version) <$Revision: 1.3 $>
|
|
|
|
|
|
|
|
This is a list of things that need to be done for NetBSD/Sun3. Some
|
|
|
|
of these tasks are small, others are large. Some are extremely
|
|
|
|
critical, others would be useful to do, and some are fluff. Included
|
|
|
|
in each description, is a notation of its importance. Please note
|
|
|
|
however that this is a list of things to do above and beyond fixing
|
|
|
|
bugs in the existing code base.
|
|
|
|
|
|
|
|
In general there are some guidelines for work to be included in
|
|
|
|
NetBSD. Chief among these are:
|
|
|
|
|
|
|
|
(1) Keep GPLed stuff out of the kernel.
|
|
|
|
(2) Only clean code, that lends itself to further enhancement
|
|
|
|
(3) Keep architecture dependent code out of architecture independent
|
|
|
|
directories
|
|
|
|
|
|
|
|
The important part of this is that the sun3 stuff better stay in
|
|
|
|
sys/arch/sun3.
|
|
|
|
|
|
|
|
Bootstrapping:
|
|
|
|
|
|
|
|
make it easy to do nfs diskless (CRITICAL). currently you have to
|
|
|
|
hack up the nfs_diskless sturcture. this should be fixed by finishing
|
|
|
|
porting sys/lib/libnetboot.
|
|
|
|
|
|
|
|
native boot blocks (HIGH)
|
|
|
|
|
|
|
|
nfs diskless boot blocks (HIGH).
|
|
|
|
|
|
|
|
Kernel core tasks (arch/sun3/sun3):
|
|
|
|
|
|
|
|
make pmap module modifications necessary so that we can turn
|
|
|
|
on MACHINE_NONCONTIG,a kernel config option that allows for
|
|
|
|
non-contiguous physical memory. This work is necessitated by the
|
|
|
|
the frame buffer on the 3/50 which is plop in the middle of physical
|
|
|
|
ram. (CRITICAL)
|
|
|
|
|
|
|
|
kernel text is not protected. (CRITICAL..for debugging)
|
|
|
|
|
|
|
|
find out why kernel has to be linked with such wierd options. (HIGH)
|
|
|
|
|
|
|
|
test virtual addressed cache support on non-desktop machines. (HIGH)
|
|
|
|
|
|
|
|
need support for the sun eeprom, including a non-sun
|
|
|
|
copyrighted header file describing its structure. Needed
|
|
|
|
at least for console handling. (MEDIUM)
|
|
|
|
|
|
|
|
ddb support (MEDIUM) (mycroft is working on this, for 68ks in general,
|
|
|
|
and it may actually work some now)
|
|
|
|
|
|
|
|
locore.s got split into many pieces as part of a bit of research
|
|
|
|
by the author into how much of it was truly sun-dependent vs
|
|
|
|
68k-dependent. Needs to be re-integrated into a standard
|
|
|
|
locore.s so that we can benefit from changes to the hp300, and
|
|
|
|
amiga ports, and vice-versa. (MEDIUM, will be fixed by glass)
|
|
|
|
|
|
|
|
FPUCOPROC support needs to be better integrated and triggered
|
|
|
|
by something other than this awful define. Also need
|
|
|
|
FPU emulation code (see briggs). (MEDIUM)
|
|
|
|
|
|
|
|
msgbuf should be allocated later, using the pmap stuff, same with
|
|
|
|
high_segment crud. see the dvma_alloc code for an example of
|
|
|
|
how much cleaner this is. (LOW..it works now)
|
|
|
|
|
|
|
|
compute idprom checksum, and check it (was lazy) (LOW)
|
|
|
|
|
|
|
|
HPUX compatibility support (make it hang off p_emul like our
|
|
|
|
COMPAT_SUNOS support). (LOW)
|
|
|
|
|
|
|
|
pmap module should keep a 3-level cache of ptes instead of 2. (LOW)
|
|
|
|
|
|
|
|
need /dev/eeprom driver functionality added to mem.c (LOW)
|
|
|
|
|
|
|
|
support for sun3x architecture (LOW, but we have the 030 code)
|
|
|
|
|
|
|
|
Device-driver related tasks:
|
|
|
|
|
|
|
|
scsi driver - use the scsi infrastructure in sys/scsi.
|
|
|
|
See config-file component in sys/arch/i386/conf
|
|
|
|
For host-adapter driver examples look
|
|
|
|
in sys/arch/{386/isa,mac68k/dev}
|
|
|
|
host adapter chip is NCR 5380.
|
|
|
|
dma chip is amd 9516.
|
|
|
|
secondary sources in: mac port, sprite, mach3
|
|
|
|
(SUPER_DUPER_CRITICAL)
|
|
|
|
|
|
|
|
prom console can accept input, though it does so lamely
|
|
|
|
|
|
|
|
make zs, ms, kbd driver as incorporated from torek's code actually
|
|
|
|
work. Then re-engineer such that it isn't so ugly. (CRITICAL)
|
|
|
|
|
|
|
|
intel ether - driver for 'ie' intel 82586-based ethernet.
|
|
|
|
see mach3, sprite, and i386 port (CRITICAL)
|
|
|
|
|
|
|
|
VME support (CRITICAL)
|
|
|
|
|
|
|
|
console handling (choice, detection, etc.) (MEDIUM)
|
|
|
|
|
|
|
|
OBIO probe support needed. support for handling the traps is
|
|
|
|
already present in the form of pcb_onfault. (MEDIUM)
|
|
|
|
|
|
|
|
Better OBIO configuration architecture, less re-computation of
|
|
|
|
default parameters. device-conflict notification. Requires
|
|
|
|
mycroft's autoconfig fix. (MEDIUM)
|
|
|
|
|
|
|
|
bw?, cg*,fb - must have same external interface as sun's to
|
|
|
|
keep X happy.
|
|
|
|
see sparc, and sprite code. (MEDIUM)
|
|
|
|
|
|
|
|
lance - switch to sparc code as a base instead of hp300. (LOW)
|
|
|
|
|
|
|
|
THINGS TO BE DONE: (NetBSD/Sun3 version) <$Revision: 1.3 $>
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
This is a list of things that need to be done for NetBSD/Sun3. Some
|
|
|
|
of these tasks are small, others are large. Some are extremely
|
|
|
|
critical, others would be useful to do, and some are fluff. Included
|
1994-02-04 11:19:37 +03:00
|
|
|
in each description, is a notation of its importance. Please note
|
|
|
|
however that this is a list of things to do above and beyond fixing
|
|
|
|
bugs in the existing code base.
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
In general there are some guidelines for work to be included in
|
1994-02-04 11:19:37 +03:00
|
|
|
NetBSD. Chief among these are:
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
(1) Keep GPLed stuff out of the kernel.
|
|
|
|
(2) Only clean code, that lends itself to further enhancement
|
|
|
|
(3) Keep architecture dependent code out of architecture independent
|
|
|
|
directories
|
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
The important part of this is that the sun3 stuff better stay in
|
|
|
|
sys/arch/sun3.
|
1993-12-19 10:53:41 +03:00
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
Bootstrapping:
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
make it easy to do nfs diskless (CRITICAL). currently you have to
|
|
|
|
hack up the nfs_diskless sturcture. this should be fixed by finishing
|
1994-02-04 11:19:37 +03:00
|
|
|
porting sys/lib/libnetboot.
|
1993-12-19 10:53:41 +03:00
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
native boot blocks (HIGH)
|
|
|
|
|
|
|
|
nfs diskless boot blocks (HIGH).
|
|
|
|
|
|
|
|
Kernel core tasks (arch/sun3/sun3):
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
make pmap module modifications necessary so that we can turn
|
|
|
|
on MACHINE_NONCONTIG,a kernel config option that allows for
|
|
|
|
non-contiguous physical memory. This work is necessitated by the
|
|
|
|
the frame buffer on the 3/50 which is plop in the middle of physical
|
1994-02-04 11:19:37 +03:00
|
|
|
ram. (CRITICAL)
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
all the FPUCOPROC support is untested and from the hp300 port.
|
|
|
|
It needs to be better integrated and triggered by something other
|
|
|
|
than this awful define. Also need FPU emulation code. (CRITICAL)
|
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
kernel text is not protected. (CRITICAL..for debugging)
|
1993-12-19 10:53:41 +03:00
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
find out why kernel has to be linked with such wierd options. (HIGH)
|
1993-12-19 10:53:41 +03:00
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
test virtual addressed cache support on non-desktop machines. (HIGH)
|
|
|
|
|
|
|
|
need support for the sun eeprom, including a non-sun
|
|
|
|
copyrighted header file describing its structure. Needed
|
|
|
|
at least for console handling. (MEDIUM)
|
|
|
|
|
|
|
|
ddb support (MEDIUM) (mycroft is working on this, for 68ks in general,
|
|
|
|
and it may actually work some now)
|
|
|
|
|
|
|
|
add some debugging facilities to the pmap module. (MEDIUM)
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
locore.s got split into many pieces as part of a bit of research
|
|
|
|
by the author into how much of it was truly sun-dependent vs
|
|
|
|
68k-dependent. Needs to be re-integrated into a standard
|
|
|
|
locore.s so that we can benefit from changes to the hp300, and
|
1994-02-04 11:19:37 +03:00
|
|
|
amiga ports, and vice-versa. (MEDIUM, will be fixed by glass)
|
|
|
|
|
|
|
|
msgbuf should be allocated later, using the pmap stuff, same with
|
|
|
|
high_segment crud. see the dvma_alloc code for an example of
|
|
|
|
how much cleaner this is. (LOW..it works now)
|
|
|
|
|
|
|
|
compute idprom checksum, and check it (was lazy) (LOW)
|
|
|
|
|
1993-12-19 10:53:41 +03:00
|
|
|
HPUX compatibility support (make it hang off p_emul like our
|
1994-02-04 11:19:37 +03:00
|
|
|
COMPAT_SUNOS support). (LOW)
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
pmap module should keep a 3-level cache of ptes instead of 2. (LOW)
|
|
|
|
|
|
|
|
need /dev/eeprom driver functionality added to mem.c (LOW)
|
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
support for sun3x architecture (LOW, but we have the 030 code)
|
1993-12-19 10:53:41 +03:00
|
|
|
|
|
|
|
Device-driver related tasks:
|
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
scsi driver - use the scsi infrastructure in sys/scsi.
|
1993-12-19 10:53:41 +03:00
|
|
|
See config-file component in sys/arch/i386/conf
|
|
|
|
For host-adapter driver examples look
|
|
|
|
in sys/arch/{386/isa,mac68k/dev}
|
|
|
|
host adapter chip is NCR 5380.
|
|
|
|
dma chip is amd 9516.
|
|
|
|
secondary sources in: mac port, sprite, mach3
|
|
|
|
(SUPER_DUPER_CRITICAL)
|
1994-02-04 11:19:37 +03:00
|
|
|
|
|
|
|
prom console currently can't accept input (CRITICAL)
|
|
|
|
|
|
|
|
intel ether - driver for 'ie' intel 82586-based ethernet.
|
|
|
|
see mach3, sprite, and i386 port (CRITICAL)
|
|
|
|
|
|
|
|
VME support (CRITICAL)
|
|
|
|
|
1993-12-19 10:53:41 +03:00
|
|
|
kbd - must have same external interface as sun's kbd driver in order
|
1994-02-04 11:19:37 +03:00
|
|
|
to keep X happy. see sprite code, maybe sparc port.
|
1993-12-19 10:53:41 +03:00
|
|
|
(HIGH)
|
|
|
|
|
1994-02-04 11:19:37 +03:00
|
|
|
zs driver - Zilog 8530 duart (MEDIUM)
|
|
|
|
sources: sparc port, mach3, sprite
|
|
|
|
|
|
|
|
console handling (choice, detection, etc.) (MEDIUM)
|
|
|
|
|
|
|
|
OBIO probe support needed. support for handling the traps is
|
|
|
|
already present in the form of pcb_onfault. (MEDIUM)
|
|
|
|
|
|
|
|
Better OBIO configuration architecture, less re-computation of
|
|
|
|
default parameters. device-conflict notification. Requires
|
|
|
|
mycroft's autoconfig fix. (MEDIUM)
|
|
|
|
|
1993-12-19 10:53:41 +03:00
|
|
|
mouse - must have same external interface as sun's mouse
|
|
|
|
driver in order to keep X happy. see supplied sprite
|
|
|
|
+ sparc code. (MEDIUM)
|
|
|
|
|
|
|
|
bw?, cg*,fb - must have same external interface as sun's to
|
|
|
|
keep X happy.
|
|
|
|
see sparc, and sprite code. (MEDIUM)
|
|
|
|
|
|
|
|
lance - switch to sparc code as a base instead of hp300. (LOW)
|
|
|
|
|