| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
discussed with jsg
|
| |
|
|
|
|
|
| |
miod pointed out that time_second should be compared to 1 not 0 in the
md resettodr() functions as it is initialised to 1.
ok miod@ deraadt@
|
| | |
|
| |
|
|
|
|
|
| |
- rename uiomove() to uiomovei() and update all its users.
- introduce uiomove(), which is similar to uiomovei() but with a size_t.
- rewrite uiomovei() as an uiomove() wrapper.
ok kettenis@
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
PROT_NONE, PROT_READ, PROT_WRITE, and PROT_EXEC from mman.h.
PROT_MASK is introduced as the one true way of extracting those bits.
Remove UVM_ADV_* wrapper, using the standard names.
ok doug guenther kettenis
|
| |
|
|
| |
after discussions with beck deraadt kettenis.
|
| |
|
|
| |
of ACFAIL, what reaches the console is explicit enough.
|
| | |
|
| |
|
|
|
| |
not get lost if the chip is reset. Also try to mask the `TX start' interrupt,
but this doesn't seem to work.
|
| |
|
|
|
|
|
| |
probably due to incorrect programming of the system board ``Diagnostic Control
Register'', for which I do not have documentation yet; commited so as not to
lose this work, since the machine I was testing on has apparently commited
suicide and will no longer POST.
|
| | |
|
| |
|
|
|
| |
400 and 4300. Limited to PIO mode only for now, until the DMA controller is
tamed. Heavily based upon the MI aic(4) driver.
|
| | |
|
| |
|
|
|
|
| |
GENERIC.MP on a 2x88100(6:1)@33 4605 can now make build on local disk and
local net; but it still needs to boot its kernel off the network at the
moment.
|
| | |
|
| |
|
|
|
|
| |
request explicit IPL_xxx levels.
Fix VME Ethernet config stanzas to request IPL_NET.
|
| |
|
|
|
|
| |
before the last multiplication that might take it past 2^31 secounds.
ok deraadt@ miod@
|
| |
|
|
|
|
| |
performed much earlier in the processor startup.
No visible change, paves the way for the much important diff three commits
from here.
|
| |
|
|
| |
ok matthew@ tedu@, also eyeballed by at least krw@ oga@ kettenis@ jsg@
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
since a large part of the structures and logic remains.
Since m88k has separate supervisor/user spaces, we can map physical memory 1:1
in supervisor space, and have the kernel virtual address space start from the
end of physical memory.
This allows us to switch to __HAVE_PMAP_DIRECT. And to get rid of the double
mapped sdt, since now their virtual and physical addresses will always match.
The upper bound of the kernel virtual memory space is now platform dependent,
until the code which relies upon some hardware devices being mapped 1:1 in
supervisor mode is updated to no longer require this (this is mainly a PITA on
luna88k, where onboard devices start at 0x40000000, leaving only 1GB of KVA at
the moment - still much better than the previous 512MB).
Tested on mvme88k only (187, 188, 197LE, 197DP). Other platforms ought to
work, aviion will be checked shortly and fixed if necessary. No known
OpenBSD/luna88k system in working condition at the moment.
|
| |
|
|
|
|
|
| |
a physical address [more precisely, something suitable to pass to pmap_enter()'sphysical address argument].
This allows MI drivers to implement mmap() routines without having to know
about the pmap_phys_address() implementation and #ifdef obfuscation.
|
| |
|
|
|
|
|
| |
hierarchy. Everything attached to a single root node anyway, so at
best we had a bush.
"i think it is good" deraadt@
|
| |
|
|
| |
ok deraadt matthew millert
|
| |
|
|
|
|
|
|
| |
max-baud-rate hint. Adjust TTYHOG (the nearly full logic) to this new
situation. The larger buffers are required by the very high speed
KDDI devices in Japan (CF com, or USB ucom) so those are the only two
drivers which currently ask for a larger buffer size.
ok yasuoka miod
|
| |
|
|
|
|
|
|
|
| |
4000 and 4300 will need more work, because they don't have as many distinct
software interrupt sources as required by this implementation, so a
different IPI scheme will be necessary.
Tested on dual-processor 4625 (AV530 family) and single processor 4300
(AV400 family).
|
| |
|
|
|
| |
trust the cpuid value returned by the prom itself (verified against
/usr/opt/sdk/include/sys/dg_sys_info.h on a DG-UX filesystem).
|
| |
|
|
|
|
|
|
|
|
|
| |
board-specific defines to prevent any risk of collision. This also adds
clock support for AV530 family, and timecounter support (cio code sync'ed
with mvme88k). And various bugs fixed in the process.
This is enough to get models 4600 and 530 to run multiuser with a Hawk
Ethernet VME card (the onboard Ethernet is not supported yet, coming soon).
There is no way to share a disk with DG/UX yet, the kernel (and fdisk(8))
needs to become aware of its ways.
|
| | |
|
| |
|
|
|
|
| |
Also features support for {awkw,bast}ard 6:1 CMMU:CPU configurations (4I2D).
Tested on model 4605, which runs up to cpu_initclocks(), which is not written
for this system family yet. No regression on model 4300.
|
| |
|
|
|
| |
on vax, since interrupts on syscon are edge-triggered. Fixes the onboard
lance getting stuck after a while.
|
| |
|
|
| |
a process instead of using curproc. ok deraadt
|
| |
|
|
|
|
|
| |
being page-aligned, and high being end of page (i.e.
high & PAGE_MASK == PAGE_MASK) everywhere, for consistency. Future code
will depend on this.
ok deraadt@
|
| |
|
|
|
|
|
|
|
|
| |
supported it doesn't do any harm), so put the KNOTE() in selwakeup() itself and
remove it from any occurences where both are used, except one for kqueue itself
and one in sys_pipe.c (where the selwakeup is under a PIPE_SEL flag).
Based on a diff from tedu.
ok deraadt
|
| |
|
|
| |
miod@ deraadt@ ok.
|
| |
|
|
|
|
|
| |
calls can go directly into selwakeup() safely
long discussion with nicm, murmers of consent from tedu and miod, noone
else seems to care of kqueue is busted as long as it makes their sockets
move data fast... pretty sad.
|
| |
|
|
|
|
|
|
|
| |
For the possibility of sleeping, the first two flags are UVM_PLA_WAITOK
and UVM_PLA_NOWAIT. It is an error not to show intention, so assert that
one of the two is provided. Switch over every caller in the tree to
using the appropriate flag.
ok art@, ariane@
|
| |
|
|
|
|
|
| |
between instances, saving space in the kernel. feedback from many (some
incorporated, some left for future work).
ok deraadt, kettenis, "why not" miod.
|
| |
|
|
|
|
|
|
|
| |
Not sure what's more surprising: how long it took for NetBSD to
catch up to the rest of the BSDs (including UCB), or the amount of
code that NetBSD has claimed for itself without attributing to the
actual authors.
OK deraadt@
|
| |
|
|
|
|
|
| |
the hp300 related ones currently in use. CN_NORMAL becomes CN_LOWPRI,
CN_INTERNAL becomes CN_MIDPRI and CN_REMOTE becomes CN_HIGHPRI.
ok miod@
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
more board design-independent.
The main changes are:
- define logical interrupt sources, which match the on-board devices as
well as the seven VME interrupt sources. Use these whenever possible
when registering interrupts in the drivers, so that the actual interrupt
mask layouts are hidden.
- make the on-board and VME interrupt handlers separate. On-board interrupt
handlers are not really associated to an interrupt vector, only to a
given interrupt source, and only one handler can be registered for a
logical interrupt source. On the other hand, VME interrupts come with a
vector number, and can be shared. This allows VME devices to really use
the whole 256 vectors space, starting at vector zero.
- update the real interrupt masks upon interrupt handler registration and
removal, so that only interrupt sources for which a handler exists may
be enabled.
- update the VME interrupt allocation logic to allow exclusive vector
allocation.
- move the Z8536 clock routines to their own file, since they are not
AV400-specific; while there, calibrate the delay constant upon startup
for more accurate delay().
The vme driver is the only one left with AV400 tentacles left, to be fixed
very soon.
|
| |
|
|
| |
so stash it in a board-independent header.
|
| |
|
|
|
| |
stealing pages in pmap_bootstrap. While there, use up to four times more
memory for these buffers if the machine has enough physical memory.
|
| |
|
|
| |
neighbours start visiting me with large axes.
|
| | |
|
| | |
|
| | |
|