Eliminate the (multiple) conditional branches based on fputype in the
m68k context switch path. Instead, the FPU save and restore blocks
begin with a BRA.W insn that branches around the FPU code, essentially
refleching FPU_NONE. Once the FPU is probed, these BRA.W insns are
patched with the displacement for the correct code fragment for the
detected FPU.
pmap_db_write_text_{enter,exit}() -> pmap_write_text_{enter,exit}().
These functions are soon to be useful in more places than just the
kernel debugger.
Add the DS2413 2 port GPIO device at its published family ID.
There are known clones and/or ripoffs of this chip that have a family
ID that is not 0x3a. This will be dealt with in the device drive that
will appear in the future.
PR/40: Quentin Thebault: The wording in the man page can be misleading. -P is
described as overriding -s although the code processes both. -s is described
as adding a socket, but giving it also removes the default socket path.
Restate that the default socket path will not be used and needs to be given
again explicitly if any of the -s or -P flags is present and specify that they
can be used together, following the code's behaviour.
Perform a bit of CPR on the cesfic port:
- Normalize with other 68040 systems vis a vis KERNBASE and
VM_MIN_KERNEL_ADDRESS. Adjust early bootstrap to accommodate.
- Determine at run-time the address the kernel was loaded at, rather
than hard-coding it to (RAM+1M) before relocating the kernel down
to (RAM+link_addr).
- Long-jump to the relocated kernel immediately after relocating it and
before clearing the BSS. Previously, it's possible that the old copy
where we were still running fro could be could get clobbered when the
BSS is cleared.
- Use the common MMU-enable code fragment and the common TT register
management functions.
The kernel has grown since the README was written, so recommand loading
it (via OS-9) at RAM+2M. Also update the contact information for the
port :-(
A few straggling Debugger -> cpu_Debugger transformations (because sun3
<sys/systm.h> was unconditionally always #define'ing Debugger() on sun3,
but now no longer does).
Export lwp0upa to allow the caller of pmap_bootstrap1() to specify
the physical address for the lwp0 u-area. If left unspecified, the
USPACE-sized region is allocated dynamically, as before.
x86/multiboot2: advance `bim' alongside `i' in mbi_modules().
Without it, every module tag describes the first module.
Potentially missed while adapting code from exec_multiboot1.c, which advanced
it at the end of the loop body.
PR port-i386/60992
Reported by Naomichi Nonaka.