- Make setregs() conform to the PowerPC SVR4 ABI, plus one NetBSD
extention (for ps_strings).
- machine == powerpc, not PowerPC.
- Set up machine vector for OpenFirmware.
- Nuke the msgbuf for now; it's not mapped correctly.
- Add missing casts in some asm() directives.
- Enable PSL_RI earlier, and do *not* disable it in fake_spl(), since it
is needed for page faults.
- Some general cleanup.
- Clean up symbol goop - use macros in asm.h where appropriate.
- Add, correct, and generally clean up comments.
- Properly align save areas and temporary stacks.
- Fix the 603 tlb reload code.
- Fix several bogus constants and modifiers.
- Some stylistic changes.
on to the kernel. The boot program passes a boot args string plus
additional information like so:
/pci/scsi@3/disk@0,0:1/netbsd -s<NUL><esym><tag>
The post-<NUL> values are:
<esym> end of the kernel symbol table (32-bits)
<tag> machine type tag (32-bits)
NetBSD/powerpc boot program. Highligts:
- Rearrange a bit so that we can sanely add boot programs for
non-OpenFirmware systems.
- Add support for loading compressed kernels (for booting from
1.44M floppies).
- Add support for loading Elf kernels (Elf is the new standard format
for NetBSD/powerpc). (XXX Don't load symbols right now - the code
to do it is there, but I don't particularly like how space for the
symbol table is allocated; I will revisit this soon'ish).
surprisingly if the power off sequence doesn't work as expected,
and simplifies the code a little. Fix the doboot() prototype
to quash a warning from gcc.
for user input, or until the driver is ready to handle them itself.
Also, try to turn on power management if the BIOS says it's disabled at
connect time.
systems with a Frodo Utility Chip. This is essientially an 8250 with
3 bytes of padding between each register. From mike smith
<miff@spam.frisbee.net.au>.
- Remove unused `register' modifier on declarations
- Reverse the sense of some tests to make the code more clear
- Type casts per KNF
- Move a static variable into the only function that uses it (perhaps
we can eliminate it entirely, someday?)
- place all interrupt-related macros, prototypes, etc. into <machine/intr.h>,
like other ports.
- rename isrlink/isrunlink/isrinit, etc. intr_establish/intr_disestablish/
intr_init, etc., and move to intr.c for naming consistency.
- don't call intr_init() twice.
(1) object code can be shared (where the hardware makes that possible), and
(2) so that the file names better describe the systems which use them. (the
pci_swiz* files are for machines whose PCI interfaces require address
"swizzling." Later, there will be probably be other sets, e.g. pci_bwx*
for machines whose chipsets can easily deal with the Alpha BWX extensions
when doing device accesses.)
arguments, so that a device can tell if its memory and I/O spaces are
enabled. The flags are cleared, depending on the contents of devices CSR
registers, in the machine-independent PCI bus code.
define CPU options and FIX_UNALIGNED_VAX_FP as header-generating options.
add pci_swiz_*_common.c when appropriate.
clean up a bit and sort more carefully.
Fixes broken blitting from rcons.
* Put back old 4.4bsd range test on cursor movement. 1.2 code is broken.
* Disable screensaver, it reportedly never comes back on properly.
Change in the way receive buffer areas are handled. Before we gave
the chip 16 buffers, each 1536 bytes (big enough for one packet).
Now we're handing the chip 8 buffers, each 4 Kbytes, and letting
the chip fit as many packets as it can in each one. This should
help keep it from running out of buffer space. Also make some of
the performance-crucial routines inline. It made no measurable
difference except to make me feel better
Changes from Bob Nestor <rnestor@metronet.com> to get closer to support
for his Apple SONIC-based nubus card.
Changes from me to try to get SONIC's MAC address from MacOS settings if
we can't read the PROM space.
mappings to a user pmap when it's created rather than at context
allocation time. Also, do not copy the kernel's region administration
to every user pmap, especially since no memory appears to be allocated
to copy it into.
As a result of this, we must now switch to context 0 in both pmap_copy_page()
and pmap_zero_page() (XXX).