christos
30fc143afa
Add COMPAT_BSDPTY to the rest of the config files.
2004-11-10 17:54:02 +00:00
yamt
18f717bb90
constify audio_hw_if, midi_hw_if, and radio_hw_if.
2004-10-29 12:57:15 +00:00
yamt
05f25dcc2a
move buffer queue related stuffs from buf.h to their own header, bufq.h.
2004-10-28 07:07:35 +00:00
thorpej
dc2f2fbe74
Centralize the declaration of booted_device and booted_partition.
2004-10-23 17:07:37 +00:00
yamt
d2fe4b34bb
move some per-cpu data definitions to MI place so that they can be modified
...
without touching all ports. discussed on tech-kern@.
2004-09-22 11:32:02 +00:00
he
cf6b002f48
Fix build problem -- track the change to <sys/buf.h>.
2004-09-19 19:09:24 +00:00
skrll
f7155e40f6
There's no need to pass a proc value when using UIO_SYSSPACE with
...
vn_rdwr(9) and uiomove(9).
OK'd by Jason Thorpe
2004-09-17 14:11:20 +00:00
jdolecek
3ea04717bf
do not include "compat/aout/files.aout", COMPAT_AOUT is soon to be removed
2004-09-14 16:51:57 +00:00
drochner
11ff62378b
add "joy"
2004-09-13 17:26:28 +00:00
manu
6e3c639957
IPv4 PIM support, based on a submission from Pavlin Radoslavov posted on
...
tech-net@
2004-09-04 23:29:44 +00:00
drochner
46289e1fef
Phase out the use of a string as first "attach args" member to control
...
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
thorpej
6c08646cb8
Garbage-collect pagemove(); nothing use it anymore (YAY!!!)
2004-08-28 22:12:40 +00:00
jdolecek
64969161df
use uvm_grow() to update stack segment size on stack page fault instead
...
of MD code
2004-08-28 17:53:00 +00:00
mrg
c108d448ff
add entries for spif/stty/sbpp. final part of PR#26061.
2004-08-01 10:45:23 +00:00
drochner
a5a5473c25
remove now unnecessary "pci_enumerate_bus" definitions
2004-07-29 16:55:25 +00:00
simonb
e25bd305b6
Define LIB{CRT0,C,CRTBEGIN,CRTEND} as nothing, we don't need to link
...
against them.
2004-07-28 01:05:35 +00:00
mrg
5df9a04912
Hauke Fath's port of the openbsd SUNW,spif driver from PR#26061.
...
the driver was originally written by Jason L. Wright.
XXX: i haven't tested this on sparc64 at all...
2004-07-24 12:37:20 +00:00
atatat
f68a9f1ff2
Add "options SYSCTL_INCLUDE_DESCR" to a lot of configs, but commented
...
out in most of them.
2004-07-15 03:53:44 +00:00
mycroft
09e877af0b
Make this build again.
2004-07-11 20:01:04 +00:00
martin
9d71aa9ed6
Adapt to new sparc bus_space_tag_t world order.
2004-07-10 22:30:29 +00:00
pk
ea3030771a
Use bus_space_tag_alloc().
2004-07-10 20:37:07 +00:00
uwe
b65388fd20
Sync with relevant portions of GENERIC 1.160.
...
Uncomment FFS, as MFS needs it.
2004-07-10 12:17:09 +00:00
uwe
afd4d28baa
Sync with relevant portions of GENERIC 1.160.
...
options<space> police.
Uncomment FFS, as MFS needs it.
2004-07-10 12:12:55 +00:00
uwe
2ab14a9acf
options<space> police.
2004-07-10 12:05:35 +00:00
pk
aaf3dc5c61
Enable the `nell' pcmcia bridge.
2004-07-05 10:50:35 +00:00
pk
134c600216
Use bus_space_tag_alloc().
2004-07-05 08:51:19 +00:00
martin
41de8a7a66
Options FULL_SPARC_BUS_SPACE is gone.
2004-07-05 06:31:36 +00:00
pk
ce03cf29a9
cpu_simple_lock: on spin out, check whether we've already panicked. If so,
...
just take the lock on the assumption that in panic mode, we run on a single
CPU anyway.
2004-07-04 09:54:20 +00:00
pk
edd81fa220
Fix typo in CHECK_SP_REDZONE() which has been there since the beginning of time.
2004-07-04 09:11:33 +00:00
pk
7f51f38abc
Avoid unnecessary stores of discarded values.
2004-07-01 10:23:41 +00:00
pk
a61069b899
Revision 1.27 of clock.c applies to the Intersil interrupt, not sun4m timers.
2004-07-01 09:59:00 +00:00
pk
889aa9f444
Introduce bus_space_tag_alloc() for the common parts of bus tag allocation.
2004-06-30 21:16:38 +00:00
bouyer
21e9a36edc
Add options P1003_1B_SEMAPHORE
...
to all GENERIC-like kernel config files where SYSV* options were already
present (commented out if the SYSV* options are commented out).
Fix lib/25897 and lib/25898.
2004-06-28 21:07:47 +00:00
pk
a24d586ab2
Rename bus_translate_address_generic => bus_space_translate_address_generic()
...
and move prototype to <machine/bus.h>.
2004-06-28 10:14:13 +00:00
pk
66a4653f8a
Always use `full bus space'. In order to implement this more efficiently,
...
require that all bus tags have pointers to bus_space_read/write functions,
i.e. no run-time hunting for the first "upstream" implementation.
Since this changes the way bus tags should be constructed it makes sense
to do the same thing for the rest of the bus space methods.
So, now bus space tags are generally constructed by copying the parent's bus
tag and then overriding the methods that the bus driver needs to handle,
instead of starting with an empty bus tag and fiiling in only the fields needed.
2004-06-27 18:24:46 +00:00
pk
fc7183f440
GC unsed sparc_vme_bus_tag.
2004-06-27 16:08:42 +00:00
abs
bd8eb3b5ed
Add (commented out) ALTQ options to all GENERIC-like files
2004-06-26 07:32:05 +00:00
itojun
596aec9a47
have pf and pflog pseudo-device (commented out).
...
reviewed by matt, perry, christos
2004-06-22 14:09:49 +00:00
jmc
84fafa3db5
Ignore errors on some rm -rf's for platforms that aren't quite
...
POSIX compliant
and return errors on r/o source (FreeBSD) for -rf. Fixes PR#25022
2004-06-21 18:20:08 +00:00
martin
4c2f43b8cf
Better support for booting from partitions != a or at the start of the
...
disk, allow commands like "boot disk:d disk:d/netbsd" to work.
Use the real RF_PROTECTED_SECTORS define instead of a local magic number.
While there, minor cosmetics in diagnostics/output format.
2004-06-18 21:04:39 +00:00
martin
31895478bc
Use RF_PROTECTED_SECTORS instead of a (wrong) magic value.
...
The bootblock now is able to load ofwboot from a raid1 root.
2004-06-18 18:42:15 +00:00
christos
c22e4ed8cd
ptm is now mandatory, depends on pty, and can be disabled with -DNO_DEV_PTM
2004-06-18 15:02:29 +00:00
christos
0399e839cf
Add pseudo-device ptm on all the generic flavored kernels.
2004-06-16 15:07:39 +00:00
thorpej
e33c2bb5d5
Add the %MAKEOPTIONSAPPEND token at the end of the file, after the
...
common Makefile.kern.inc has been included.
2004-06-04 04:45:49 +00:00
martin
b1998403bc
Back to SIZEOF_HEADERS.
2004-05-24 07:20:26 +00:00
martin
ebfe3ad1ce
Instead of SIZEOF_HEADERS (which ld gets wrong) use 1024 for now.
2004-05-23 16:10:25 +00:00
pooka
40559f7fcc
10+ entries in the kernel sources can't be wrong ... no, wait, they can:
...
it really is "panicking" instead of "panicing", so revert rev 1.211
thanks to Klaus for holding the spelling bee
2004-05-13 16:34:22 +00:00
pooka
e2323790a2
typo in comment: panicking -> panicing
2004-05-13 15:20:18 +00:00
pk
cf098aff50
No need to pull in <bsd_openprom.h> explicitly.
2004-05-13 09:36:44 +00:00
pk
d5cc51b7d3
Remove obsolete `timerok' code, which dates back to when the timer/counter
...
interrupt handlers were pre-wired.
2004-05-12 15:44:28 +00:00
drochner
19f047f8d0
SIGTRAMP_VALID() should not pollute the user namespace
2004-05-10 21:51:49 +00:00
kleink
7b3b647647
Factor out W{CHAR,INT}_{MAX,MIN} into their own header file.
2004-05-08 21:51:47 +00:00
pk
a02ca1366c
viking_module_error: check for unconfigured cpus.
2004-05-07 14:59:26 +00:00
pk
0ba9b6aa91
`uvmexp.swtch++' is already done in exit1().
2004-05-04 15:48:45 +00:00
martin
9c57555f1b
When calculating the allocated symbol table size, round up the section
...
sizes with ELF_ALIGN().
Fixes PR port-sparc64/25429.
2004-05-02 19:45:55 +00:00
pk
1af1129600
The cpu_exit() detour is no longer necessary.
2004-05-02 11:22:06 +00:00
christos
4ad27a5358
add COMPAT_20
2004-05-02 03:13:34 +00:00
pk
17e88886cc
pmap_kremove4m,pmap_protect4m,pmap_extract4m: the `demap' lock needs interrupt
...
protection.
2004-05-01 08:20:11 +00:00
pk
84af51b7e0
Rename sc_hasiocache' =>
sc_cachecoherent'. Avoid the cache flush in
...
dma_load() if we have coherency.
2004-04-28 12:38:19 +00:00
pk
ff7821ed81
Fast trap handler for Illegal Instruction traps for (user space) FLUSH
...
instructions (these occur only on Cypress CPUs).
2004-04-28 12:36:48 +00:00
pk
fde3b5dfae
Replace home-grown cachestats with event counters.
2004-04-27 16:37:43 +00:00
pk
cd955b850f
Bits 0 (MMU Enable) and 1 (Fault inhibit) are common among the implementations
...
of the SRMMU control register. Reflect that fact in the definitions here.
Also add the swift `store allocate' bit.
2004-04-27 13:05:38 +00:00
pk
202c3ce64e
Add instrumentation for `PMEG' management on sun4/4c.
2004-04-27 11:26:43 +00:00
pk
429ad918eb
Limit buffer cache VM to prevent too many locked `PMEGs' on small sun4c
...
systems.
2004-04-27 11:25:24 +00:00
kleink
0e5d242328
Update for new pci_devinfo(9) signature.
2004-04-24 15:49:00 +00:00
tsutsui
77addc8b55
Increase buffer size for s[dt]-targets PROM property
...
otherwise some machines (including my SS1+) with old PROM fails to get it.
2004-04-23 13:04:59 +00:00
hannken
82161a9cbe
Protect against multiple inclusion.
2004-04-23 09:20:20 +00:00
pk
a2ce1a6818
ctx_free: reset the context's page table pointers in each context table.
2004-04-22 11:57:33 +00:00
pk
c996a0d95b
Fix logic botch in previous commit.
2004-04-22 11:45:48 +00:00
pk
4c005fd35b
Mostly undo rev. 1.287: for modified pages a table walk must be forced on
...
the next write access to get the modified bit set in the PTE and that
won't happen if it hits the cache.
2004-04-22 10:14:58 +00:00
pk
a22adee52d
Default to not inlining __cpu_simple_lock().
...
- the locore version attempts to detect stuck locks
- not inlining saves about 60K on the kernel's text
2004-04-20 15:55:30 +00:00
pk
aa53aca844
Turn __CPU_SIMPLE_LOCK_INLINE into !__CPU_SIMPLE_LOCK_NOINLINE, so we don't
...
screw up user land.
2004-04-20 08:48:03 +00:00
pk
e2cab98f9e
Always provide the __cpu_simple_lock() entry point (for LKMs).
2004-04-20 08:38:41 +00:00
pk
ce78973db2
Provide a fast trap path for AST IPIs.
2004-04-20 08:36:46 +00:00
pk
3097bbf440
pmap_extract4m: We can read a spurious invalid pte if the system is in
...
the middle of the PTE update protocol. So, if at first we get an invalid
PTE, retry with the demap lock held.
2004-04-19 15:20:42 +00:00
pk
2e643fb9ae
__cpu_simple_lock() isn't a pure function.
2004-04-19 12:41:53 +00:00
pk
a484ad4f3f
CMP_PTE_USER_READ4M: drop instruction that's effectively a no-op.
2004-04-19 10:01:41 +00:00
pk
fecb3b619b
Drop spurious variable.
2004-04-19 08:50:21 +00:00
pk
03a07196d9
srmmu_vcache_flush_page/range: cover the case where we're called during
...
bootstrap before the cache parameters are setup.
2004-04-18 21:49:09 +00:00
pk
27f928584a
Code srmmu_vcache_flush_range & srmmu_vcache_flush_page more efficiently.
2004-04-18 20:46:39 +00:00
pk
57bbd955d1
Various ft_srmmu_vcache_*() functions: use `branch on greater (unsigned)'
...
instead of `branch on positive'.
2004-04-18 20:44:39 +00:00
pk
68f30ee7af
Make inlining __cpu_simple_lock() optional. Add a version with a built-in
...
spin out counter that panics with a diagnostic.
2004-04-18 19:20:09 +00:00
pk
38bdc6fab2
Remove the cache_flush() trampoline; it's no longer directly cross-called.
...
Instead, implement the MP parts in terms of cross-callable vcache_flush_range()
function.
2004-04-17 23:45:40 +00:00
pk
66a6704d83
Update fast xcall interrupt event counter.
...
ft_srmmu_vcache_flush_range: adjust length for address alignment
2004-04-17 23:28:44 +00:00
pk
e68993f7e4
Add EV_COUNT.
2004-04-17 22:36:54 +00:00
pk
3c3af40e65
Add xcall event counters.
2004-04-17 22:34:14 +00:00
pk
89f5c8768c
When acknowledging a sun4m soft interrupt, read back the pending interrupts
...
hw register to make sure it gets through on Ross CPUs.
2004-04-17 11:55:06 +00:00
pk
1e5ff8a716
raise_ipi: don't bother fetching the cpu type from memory in order to
...
avoid one instruction.
2004-04-17 11:50:23 +00:00
pk
727a9ca138
The macro CMP_PTE_USER_READ4M now needs to consider more PTE access
...
rights combinations, since the access rights table in pmap has changed.
2004-04-17 11:26:36 +00:00
pk
66178209d2
Use fast cross calls for MP cache flush ops.
2004-04-17 10:13:13 +00:00
pk
f714ca590d
Add CPUINFO_XMSG_* symbols for use in fast xcall handlers.
2004-04-17 10:07:58 +00:00
pk
ebfb6e3b0a
Implement fast trap handlers for TLB and cache flushes.
2004-04-17 10:06:29 +00:00
pk
901271fbc8
Use a fast cross call for TLB flushes.
2004-04-17 10:04:20 +00:00
pk
4eac0385f6
xcallintr: arg3 is gone.
2004-04-17 10:01:55 +00:00
pk
8bc2760490
Add support for fast cross call handlers that execute in the trap window
...
on the destination CPU. The `fast handler' address takes the place of the
unused fourth argument to xcall().
2004-04-17 10:01:11 +00:00
pk
299dfa38bf
De-__P().
2004-04-15 10:07:32 +00:00
pk
dab35b2e8d
xcall: increase spin-out; fix diag output.
2004-04-15 08:11:20 +00:00
pk
cd891bd771
Re-enable the HyperSPARC on-board instruction cache on multi-processor machines.
2004-04-13 14:55:48 +00:00
pk
86fce030ee
Handle `unimplemented flush' traps by flushing the entire I-cache (if
...
there is one).
2004-04-13 14:04:29 +00:00
pk
e76253f84e
Turn FLUSH instructions that wind up here into no-ops.
2004-04-13 14:00:24 +00:00
pk
ebfcdb612b
Drop the special sun4d `tlb flush' lock. The pte update function already
...
serialises access to the PTEs to reliably get ref/mod bits.
Rename pte4m_lock => demap_lock.
2004-04-12 14:26:01 +00:00
pk
4f969ab39c
pv_syncflags4m: no need to flush the cache. If the page is still mapped,
...
its ref/mod status may change at any moment anyway. If a definitive status
is required the UVM code will unmap the page first.
2004-04-12 12:52:42 +00:00
pk
fd1ba25dd1
Drop sparc_protection_init4m() in favour of a (ro) data initialiser.
2004-04-12 10:00:28 +00:00
pk
9450998e71
pmap_copy_page4m(): we only need to flush the local cache since we use
...
private virtual addresses.
2004-04-10 20:51:24 +00:00
pk
9d95da7f96
Remove a number of redundant TLB page flushed, which are now done in
...
setpgt4m_va() and updatepte4m() as necessary.
2004-04-10 20:43:02 +00:00
pk
6452e19758
De-__P().
2004-04-10 20:00:29 +00:00
pk
217297d742
Remove a remnant instance of __P().
2004-04-10 19:58:45 +00:00
pk
6d82d89741
Expose CPUSET_ALL to non-MULTIPROCESSOR source.
2004-04-10 19:55:57 +00:00
pk
667d14673b
Group updatepte4m() and the MP & SP versions of setpgt4m_va() together,
...
which is just a bit more pleasing to the eyes.
2004-04-10 19:40:19 +00:00
pk
83037215bf
Do not maintain the number of valid pages per segment (`sg_npte') anymore
...
for the kernel map on SRMMU machines. This allows pmap_kenter() and
pmap_kremove() to update mappings without needing to lock the pmap
or raising the interrupt level.
2004-04-10 19:22:59 +00:00
pk
2648b0d48c
pmap_protect4m: skip PTE update for invalid pages in the specified range.
2004-04-10 18:48:35 +00:00
pk
f852e1c1e4
setpte4m: remove ineffective debug assertions.
2004-04-10 18:40:04 +00:00
fair
e2b036a2e4
Add comment to indicate that the SunSwift Sbus HME/FAS366 SCSI
...
combination board attaches esp* at sbus*; it's not just "older proms"
2004-04-10 04:02:29 +00:00
pk
f95fd4f56f
compat mode: skip double map at VA 0 if the physical load address is 0.
...
This allows a much wider range of historic kernels to be booted (w/ `-C').
2004-04-08 07:35:34 +00:00
pk
12d5178857
For now, disable Hypersparc instruction cache on MP machines.
2004-04-04 18:54:01 +00:00
pk
8066aa3aa5
* Allow pv_link4_4c() to fail with ENOMEM on pool allocation failures
...
(catching up with pv_link4m()).
* Fix return code checking for pv_link4m() calls.
* Add low water setting to pv pool.
2004-04-04 18:34:35 +00:00
pk
486f4170eb
Remove private declarations of maxdmap and maxsmap.
2004-04-04 18:24:22 +00:00
mrg
32a2d102bd
redo previous slightly; move the "int unode;" decl inside the
...
if (CPU_ISSUN4D) code block, reducing #ifdef/#endif count by one.
2004-04-04 10:09:41 +00:00
gson
f92c1b091a
Unused variable "unode" caused compiler warning when !defined(SUN4D).
2004-04-04 08:54:29 +00:00
pk
af0db768b1
Maintain pmap resident count as pages are mapped and unmapped instead
...
of traversing the page tables each time it's needed.
2004-04-03 23:11:14 +00:00
chs
ec48121fb7
add some SUN4D stuff.
...
zs and zstty no longer need "needs-count" or "needs-flag",
so get rid of those and wild-card the extra zs devices on SUN4D.
2004-04-03 17:43:50 +00:00
chs
89e7b5360f
don't complain about mid == 0 on SUN4D, it's normal there.
2004-04-03 17:42:27 +00:00
chs
8e5882e190
add a bootbus (SUN4D) attachment. from Stephen Sukovich in PR 24199.
2004-04-03 17:42:07 +00:00
chs
81f3e5aec7
fix find_cpus() for SUN4D. from Stephen Sukovich in PR 24198.
2004-04-03 17:41:54 +00:00
pk
70e1de69c4
Max data size -> 512MB; default stack size -> 8MB.
2004-04-03 12:39:51 +00:00
pk
5957cb9b16
On sun4c, clip max data & stack size to avoid the MMU hole.
2004-04-03 12:38:14 +00:00
pk
7bbe926f59
iommu_dmamap_load: deal with pmap_extract() failing.
2004-03-28 19:35:13 +00:00
drochner
c83eb997b8
nothing cares about __HAVE_SIGINFO anymore, so nuke it
2004-03-26 21:39:57 +00:00
drochner
cf8b697c65
remove license clauses 3 and 4 from my cpoyright notices
2004-03-24 17:06:57 +00:00
pk
1fecae985a
Remove my name from the old UCB copyright notice, thereby reducing its
...
reference count to 1.
2004-03-24 15:44:46 +00:00
atatat
19af35fd0d
Tango on sysctl_createv() and flags. The flags have all been renamed,
...
and sysctl_createv() now uses more arguments.
2004-03-24 15:34:46 +00:00
pk
24bb95542f
Add openfirmware() entry point.
2004-03-23 15:36:08 +00:00
pk
bfbcd7cff5
prom_pa_location: re-arrange code a bit; use u_long cast to make this compile on 64 bit systems; to do: openfirmware version of this.
2004-03-23 15:29:56 +00:00
martin
2a62a8f3dd
The function prom_pa_location casts magic spells that probably won't
...
work on 64 bit kernels (and at least do not compile). Since this function
is not used there, #ifndef _LP64 it for now.
2004-03-23 11:40:29 +00:00
pk
b744961066
Leverage the PROM's ability to identify the on-board location of a
...
physical memory address.
2004-03-22 12:37:43 +00:00
nakayama
83f4b465c2
Truncate values to 32-bit, not 40-bit.
2004-03-22 12:28:02 +00:00
martin
fe91b9b277
Create a symlink for <sparc/...> include paths as well, the new openfirm.h
...
needs it.
2004-03-21 23:41:21 +00:00
pk
7446de9195
Add sparc64 cell_t definitions.
...
Change OF_interpret() prototype to the unabridged version.
2004-03-21 15:12:35 +00:00
pk
afe147460e
Add openfirmware() entry point, since it's no longer defined as a macro
...
in openfirm.c.
2004-03-21 14:04:30 +00:00
pk
b5a947488b
* Add OF_claim() for sparc64.
...
* Change OF_interpret() to the unabridged version.
* Sync OF_sym2val() and OF_val2sym() with the psarc64 versions.
2004-03-21 14:02:39 +00:00
pk
4b86fd8eed
opf_getboot{path,file,args}: return static storage so these can be used
...
in the early boot phase.
Define prom_interpret() to be a simple form of the Openfirmware OF_interpret().
Re-arrange OLDMON code in prom_getidprom() to make it compile on sparc64.
2004-03-21 13:57:58 +00:00
pk
d7d8742ed3
Turn members of `struct memarr' into long ints, to help sparc64 integration.
2004-03-21 13:52:00 +00:00
pk
f72e36ac23
obp_v2_finddevice: bounds check on local char buffer.
...
prom_findnode: implement node name matching for device named containing
commas, cf. IEEE 1275, section 4.3.6.
2004-03-18 15:24:19 +00:00
pk
bb3bbfa647
Implement OPIOCFINDDEVICE.
2004-03-18 15:14:33 +00:00
pk
f52adf179f
Remove unused `search_prom()' macro.
2004-03-18 15:13:59 +00:00
hannken
ac4d48d92e
Rename PROM_getpropstring* => prom_getpropstring*
2004-03-18 12:26:51 +00:00
matt
f9730c006d
Fix typo (pckbort -> pckbport)
2004-03-17 18:10:51 +00:00
pk
ea53363e84
Rename PROM_getprop*() => prom_getprop*().
2004-03-17 17:04:58 +00:00
pk
da415e73f9
De-__P();
2004-03-17 11:00:19 +00:00
pk
6446b225e5
prom_getprop(): Make the `element size' argument a size_t (like sparc64).
2004-03-17 10:48:21 +00:00