Commit Graph

2237 Commits

Author SHA1 Message Date
mrg 3783ca5d30 define _KERNEL_OPT as well as _KERNEL. we will use this in the future to
get kernel "opt_foo.h" headers, rather than _KERNEL && !_LKM.
2001-05-29 02:20:20 +00:00
chs e44e9dec8a replace vm_page_t with struct vm_page *. 2001-05-26 21:27:02 +00:00
chs 118ddca24a replace {simple_,}lock{_data,}_t with struct {simple,}lock {,*}. 2001-05-26 16:32:40 +00:00
scw 94225b1490 port-mac68l/12931 by Dave Huang:
Add an itepoll() function. This one slipped through my recent sweep
of line-disciplines...
2001-05-14 09:27:06 +00:00
kleink a7d0606917 Cosmetical oversight. 2001-05-06 20:25:28 +00:00
thorpej cf67ac7122 Per discussion w/ chuck and chuck, restructure the md page stuff
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
wiz 133599a99d Remove unused variable. Reported by Thilo Manske in port-mac68k/12794. 2001-04-30 17:12:03 +00:00
thorpej 2b27ac7a99 Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure.  Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM.  These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

This deprecates struct pmap_physseg.  As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now).  Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
bouyer 937a7a3ed9 Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
  ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
  to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
  peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
  recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
  scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
  (no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
  set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
  the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
  will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
2001-04-25 17:53:04 +00:00
thorpej 1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
thorpej 55044638aa Remove pmap_kenter_pgs(). It was never really adopted by
anything, and the interface itself wasn't as flexible as
callers would have probably liked.
2001-04-22 23:42:11 +00:00
thorpej 69abdbf60c Undo a misguided previous change to the pmap_update() API. 2001-04-22 23:19:26 +00:00
thorpej 4738622712 Give pmap_update() an argument (a pmap_t) so that it knows which
pmap it should be updating.
2001-04-22 00:33:59 +00:00
thorpej 7f10ba88b1 #define away pmap_update() in <machine/pmap.h> so that no function
call overhead is incurred as we start sprinkling pmap_update() calls
throughout the source tree (no pmaps currently defer operations, but
we are adding the infrastructure to allow them to do so).
2001-04-21 23:51:14 +00:00
thorpej 15f731ee94 pmap_update() should not be equated with "flush entire TLB", it is
used to process deferred pmap operations.  Since these pmaps don't
defer anything, pmap_update() is a noop.
2001-04-21 17:25:01 +00:00
thorpej 7fe777de1c toupper() exists in libkern now. 2001-04-18 15:39:34 +00:00
kleink f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink 739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej bf2dcec4f5 Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
thorpej 0f05a2b35c splimp -> splhigh for frobbing the netisr. 2001-04-12 18:26:26 +00:00
jhawk d95ba2eb80 Remove gratuitous setting of SYSDIR;
it is set in sys/kern/Make.tags.inc
2001-04-03 17:12:23 +00:00
chs ac3bc537bd eliminate the KERN_* error codes in favor of the traditional E* codes.
the mapping is:

KERN_SUCCESS			0
KERN_INVALID_ADDRESS		EFAULT
KERN_PROTECTION_FAILURE		EACCES
KERN_NO_SPACE			ENOMEM
KERN_INVALID_ARGUMENT		EINVAL
KERN_FAILURE			various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE		ENOMEM
KERN_NOT_RECEIVER		<unused>
KERN_NO_ACCESS			<unused>
KERN_PAGES_LOCKED		<unused>
2001-03-15 06:10:32 +00:00
briggs d8cd14d437 Rip the guts out of pmap_remove() and create pmap_do_remove(), called with
a flag that determines whether or not wired mapping should be removed.
pmap_collect() calls pmap_do_remove() without this flag, and pmap_remove()
calls with it.
Pointed out on port-mac68k with suggested fix from chs.
2001-02-12 22:00:08 +00:00
thorpej 043e519d55 Adjust the way that media is initialized on DP8390-compatible
chips.  The dp8390_softc now has media_init and media_fini
function pointers that do the work.
2001-02-12 18:49:03 +00:00
briggs ded0acf164 Clear interrupts on the RasterOps PaintBoard Prism GT 1.0. From
Alastair Bridgewater <nyef@softhome.net>.
2001-01-22 20:27:02 +00:00
briggs b8d22c0d39 Handle interrupts on the Radius DirectColor/GX (id 0x27c). From
Alastair Bridgewater <nyef@softhome.net>.
2001-01-22 18:23:14 +00:00
scottr 054277902e Correct a thinko: iteopen()/iteclose() shouldn't just pass off to
the wsdisplay driver.  Otherwise, closing ttye0 (ite compat) ends
up closing ttyE0, the actual console, when ttyflags runs.  Fixes
PR 12022.
2001-01-22 07:31:44 +00:00
tv e58532a4bf No-op commit to force update to a non-"-kk" revision. 2001-01-18 17:47:58 +00:00
briggs 118221b2e6 Handle the TRPAD case a little better.
Also, if the so-called DMA operation is a write and ends without target-
complete set, count the data in the FIFO as residual and add that to the
amount in the counters.  Hauke Fath reports that this passes early testing
on his Quantum Viking.
2001-01-18 03:43:18 +00:00
thorpej 577f2ffb1c Remove local declaration of softclock(). 2001-01-17 19:03:14 +00:00
ender d2d372a707 Fix softclock prototype. 2001-01-17 08:23:49 +00:00
fvdl c7f1462f3e Add machdep file for procfs. Currently only used for linux-style
/proc/cpuinfo (only active when procfs is mounted with -o linux).
For ports other than the i386 this currently produces an empty
string.
2001-01-17 00:07:18 +00:00
thorpej d74e432ed3 Make softclock a generic soft interrupt of the API is available,
adding the requisite void * argument to softclock().
2001-01-15 20:19:50 +00:00
thorpej a3ec356d52 splimp() -> splvm() 2001-01-14 03:22:04 +00:00
thorpej d85a75f583 Make sure everybody has an splvm() and equate it with splimp() (splimp()
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
2001-01-14 02:00:37 +00:00
briggs f7cf6d4afb Do not try to second-guess the ncr53c9x driver by setting *dmasize to 0
if it is 64k.  TCL and TCM will be set properly if we just leave it alone.
Not only that, the ncr53c9x driver issues TRPAD or TRANS based on this
value.  We do not want TRPAD in this case!
2000-12-29 21:31:44 +00:00
briggs 811d597c78 Rework the esp driver a little bit to improve performance. This requires
an ugly bit where we record the value of a2 while handling a "nofault" bus
error in locore.s in order to know how far the transaction got before a
disconnect (see esp.c comments for more details on this).
Also get rid of a loop (and delay()!) in the interrupt routine--hinted at
and researched by Chas Williams <chas@cmf.nrl.navy.mil>.
2000-12-29 17:23:31 +00:00
jdolecek e9e91a0fb5 split off thread specific stuff from struct sigacts to struct sigctx, leaving
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx

This addresses kern/10981 by Matthew Orgass.
2000-12-22 22:58:52 +00:00
scw 4350a7f2b7 Unification of the m68k syscall() function. 2000-12-19 21:09:54 +00:00
bouyer c71f40d166 Add pseudo-device vlan 2000-12-19 10:42:02 +00:00
jdolecek cacec11253 delete obsolete comment 2000-12-17 15:52:39 +00:00
jdolecek ca57e681bd g/c obsolete vtrace(2) stuff 2000-12-13 18:13:05 +00:00
briggs cd0841b357 Clear interrupts on the Apple "Boogie" card. Information grovelling
and testing by Lucas Lay.
2000-12-09 05:14:31 +00:00
briggs 50b56fe1a2 Do not define the same symbol with two different values. PR#11664. 2000-12-08 14:28:44 +00:00
toddpw 6b0841e32b Fix PR port-mac68k/11343 2000-12-07 10:57:17 +00:00
scottr 7fdcf44432 Don't reference a zs-specific variable unless NZSC is not zero.
Fixes PR 11566.
2000-12-05 21:38:38 +00:00
briggs e7a6bcd6eb Add the DrHw Apple 24AC "Boogie" video card.
Thanks to Lucas Lay <segfault@mac.com> for digging it up.
2000-12-05 05:05:52 +00:00
briggs 3503f0999b Add defines for:
Apple WGS SCSI / cache card
	FWB JackHammer SCSI card
2000-12-05 05:02:36 +00:00
scottr fc6d3c5f48 Unmap the valkyrie register space when we're finished with it in
the match function.  It's not like we can save that state for later,
and we don't use it anyway.
2000-12-04 06:25:19 +00:00
scottr b21b6272fa Fix PR 11000: The esp driver needs two longwords in DAFB register space to
implement pseudo-DMA transfers with the SCSI controller.  This caused our
match to fail when we couldn't map the entire DAFB register/control space
for our own use.  Instead, we map only (about) what we will need in two
separate regions.

As a consequence we no longer do Turbo SCSI configuration here; indeed, it
may have caused us trouble later on if we actually changed the values
stored in those registers in the esp driver.
2000-12-04 06:23:36 +00:00
tsutsui a8fdbdec1c Remove unused pcbb() macro. 2000-12-01 17:57:43 +00:00
jdolecek 73f3cd8c7e LKMify 2000-11-29 21:51:49 +00:00
jdolecek 17a9fd0da5 split m68k SunOS and SVR4-specific sigcode.s code to sunos_sigcode.s
and svr4_sigcode.s respectively
adjust individual m68k port's locore.s to include new sigcode files if
appropriate
2000-11-26 11:47:23 +00:00
tsutsui 161004f8c3 s/struct const sysent/const struct sysent/
(BTW, luna68k was missed in emul/execsw changes?)
2000-11-21 23:19:42 +00:00
tsutsui 2c7e91a09e Define proper macros for FP frame offsets rather than magic numbers. 2000-11-21 13:54:13 +00:00
jdolecek baae0324b9 restructure struct emul and execsw, in preparation to make emulations LKMable:
* move all exec-type specific information from struct emul to execsw[] and
  provide single struct emul per emulation
* elf:
  - kern/exec_elf32.c:probe_funcs[] is gone, execsw[] how has one entry
    per emulation and contains pointer to respective probe function
  - interp is allocated via MALLOC() rather than on stack
  - elf_args structure is allocated via MALLOC() rather than malloc()
* ecoff: the per-emulation hooks moved from alpha and mips specific code
  to OSF1 and Ultrix compat code as appropriate, execsw[] has one entry per
  emulation supporting ecoff with appropriate probe function
* the makecmds/probe functions don't set emulation, pointer to emulation is
  part of appropriate execsw[] entry
* constify couple of structures
2000-11-21 00:37:49 +00:00
chs c62d17a551 rationalize the use of b_flags for geteblk() buffers.
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
scottr 4db27b3da4 Enhance readability through consistent function parameter names and KNF.
There are no functional changes.
2000-11-16 07:04:12 +00:00
scottr 96cb29b773 As was the original intent a long, long time ago -- but in this galaxy, and
in fact on this planet -- generate a SIGILL for user-mode A-line traps.
The core of this change is taken verbatim from PR 10511, submitted by
Christian Bauer.
2000-11-15 07:15:36 +00:00
scottr 1609858811 The Cuda-based ADB hardware has the ability to queue some commands and
return control to the main CPU before completing the ADB transaction.
Double the adb_op_sync() timeout as a result.  Fixes PR 11310.
2000-11-15 06:35:51 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
thorpej 9f60ecd809 We use 4K pages on the mac68k. Make PAGE_SIZE and friends into
compile-time constants.
2000-11-14 19:07:34 +00:00
scottr a7a5cd8399 Replace the call to macfb_init() when attaching a non-console fb device
with a call to macfb_clear().

[The purpose of macfb_init() is almost exclusively to initialize the
raster console blitter.  We really, really do not want to do this unless
we are actually initializing the console device, else we'll give rcons
the attributes of the last-seen fb device.  These will not necessarily
correspond to the attributes of the actual console device!]
2000-10-22 05:05:39 +00:00
abs 2824f4906d Ensure all INSTALL* kernels have two ptys, and a note explaining why:
pseudo-device  pty             2       # pseudo-terminals (Sysinst needs two)
(Some installers may not be using sysinst, in which case this just reduces
the number of ptys from 16 that are not used to 2 that are not used)
For i386 conf files, no change other than comments.
2000-10-02 18:43:34 +00:00
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
scottr 2c7ec6839c In ems_init(): make sure there's valid data in the buffer after sending
a TALK command to a device.  Noticed by Ken'ichi Ishizaka.
2000-10-01 05:10:57 +00:00
scottr 489ed1a908 The Duo ADB controller doesn't notify us that it needs to be polled
through the (emulated) VIA.  Work around this problem by polling the
Power Manager chip directly.  From Daishi Kato, PR 9852.
2000-09-27 03:57:51 +00:00
scottr 29923311f1 Set up ADB hardware type before making decisions based on same.
This is part of PR 9852 from Daishi Kato.
2000-09-27 03:27:23 +00:00
scottr 7c2fc39588 Now that we do collision detection and assign all ADB devices to distinct
addresses, it makes sense to print the actual address of the device rather
than the original address.  The latter is useful to distinguish the type
of device only, so we maintain that data internally (as we always have).

This closes PR 10557 from Dave Huang.
2000-09-27 03:22:05 +00:00
abs 3ef92f0bdb Use "options<SPACE><TAB>" not "options<TAB>" - noted by simonb.
Move VNODE_OP_NOINLINE and NFS_V2_ONLY into '# Filesystem options' section.
Consistently label '# Filesystem options' and '#File systems' sections.
2000-09-25 13:54:50 +00:00
abs ccf1c822a6 Ensure all INSTALL config files have (at least) COPTS="-Os", cincluding bebox
based on it working already for macppc.
Also add commented out:
#options        VNODE_OP_NOINLINE       # Don't inline vnode op calls
#options        NFS_V2_ONLY             # Exclude NFS3 and NQNFS code
as suggestions for additional savings
2000-09-25 11:46:37 +00:00
jdolecek b1f94e26ab don't specify number of ptys if >= 16 (current default initial number)
pty comments: normalize and g/c what is no longer relevant
2000-09-24 15:59:26 +00:00
scottr 7eec1b2d04 Attach exactly one keyboard to the wscons console. 2000-09-22 04:56:54 +00:00
scottr e4b50d9bfc Ken'ichi Ishizaka discovered that some devices, e.g. the A3 Mouse, don't
respond in the allotted time if they're told to TALK immediately after
completing a LISTEN command.  Experimentation with adb_op_sync() yielded
consistent results when the timeout was increased from the documented
6900 usec to 8000 usec, so we'll make that change here.

(Accurate and complete documentation of the hardware sure would help...)
2000-09-19 05:17:55 +00:00
thorpej 72a24b4eae Add an align argument to uvm_map() and some callers of that
routine.  Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
scottr ff2130346c Resolve bus_space_write_region_2() type mismatches. 2000-09-13 05:21:16 +00:00
scottr 7eb72c4f15 ae_write_mbuf() broke with the last change; revert. 2000-09-13 05:16:47 +00:00
thorpej 4db6fc7542 Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity.  Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
thorpej 58e7a6954b Add spllock(). See spl(9) for details. 2000-08-22 19:46:26 +00:00
thorpej a86d1f4891 Add a lock around the scheduler, and use it as necessary, including
in the non-MULTIPROCESSOR case (LOCKDEBUG requires it).  Scheduler
lock is held upon entry to mi_switch() and cpu_switch(), and
cpu_switch() releases the lock before returning.

Largely from Bill Sommerfeld, with some minor bug fixes and
machine-dependent code hacking from me.
2000-08-20 21:50:06 +00:00
itojun 85dda25e94 move "options PULLDOWN_TEST" into sys/sys/mbuf.h (in #ifdef _KERNEL),
as it is no wthe default setting for everyone.

the reason we still use the name "PULLDOWN_TEST" while it is now default:
kame code sharing.
2000-08-13 01:31:15 +00:00
briggs 8d6c85d001 Remove hack for unswapped read/write_multi in swapped space.
Driver now uses read/write_multi_stream_2.
2000-08-01 13:08:39 +00:00
briggs 3ce3697584 Add bus_space_*_stream_N functions. 2000-07-31 22:40:25 +00:00
briggs bd823b939e Fix code to read a string from the nubus board--it was not terminating
the string properly when the string on the board is longer than the
pre-allocated space.
2000-07-31 22:39:17 +00:00
briggs 2cc07c0541 Add a DIAGNOSTIC panic if (count-using) bus_space macros are called with
a count of zero.  Some drivers do this accidentally and some bus_space
implementations will fail if count is passed as zero (they are set up in
a do-{}-while structure).
2000-07-31 14:59:15 +00:00
briggs 3717acff97 We may wish to install from an SMC-based ethernet, too. 2000-07-31 02:06:48 +00:00
briggs f5882c7ffa Make sure that bus_space read/write functions that take a count will not be
called if count is zero.  The smc91cxx driver, for example, may try to call
bus_space_write_multi_2() with a count of 0.
2000-07-30 23:17:23 +00:00
briggs 2f76646af1 Some uncommitted poking around. No functional change. 2000-07-30 21:48:54 +00:00
briggs 1e909ae3ca Add SMC-based ethernet and nsphy (AsanteFAST) and ukphy (just in case). 2000-07-30 21:46:39 +00:00
briggs e74ae8ee59 M.d. glue for nubus SMC 91cxx-based cards--including Focus Interlan and
AsanteFAST.
2000-07-30 21:43:40 +00:00
briggs fb9995989b Make bus_space_write_region_2 usage match prototype. 2000-07-30 21:41:59 +00:00
briggs d13747524c Fixup for bogus assumptions about bus_space_handle_t. 2000-07-30 21:40:49 +00:00
briggs c131e0d1b7 Remove unsupported Focus hardware--this is now probed in if_sm_nubus. 2000-07-30 21:40:09 +00:00
briggs 2bb296de77 Update hack to point to bus_space_handle base address. 2000-07-30 21:39:16 +00:00
briggs 9c85d4dc6a Add byte-swap and stride options to bus_space. Allocate as normal, then
call mac68k_bus_space_handle_swapped() or mac68k_bus_space_handle_set_stride().
Stride is untested.  Swapped code works for SMC ethernet.
2000-07-30 21:38:02 +00:00
briggs a3f6fd2274 Add nubus attachment for smc91cxx driver. 2000-07-30 21:36:04 +00:00
briggs 5d162e9bcf Add Sigma Designs L-View and AsanteFAST product codes. 2000-07-26 04:36:16 +00:00
briggs 98cdbc4cc9 Remove advertising clause with my name. 2000-07-26 04:35:46 +00:00
scottr c019fa32ca Revert a bit of the last change to make this compile again. 2000-07-05 07:33:52 +00:00
sommerfeld 502fc00210 Comment out EON ISO-over-ip tunneling pseudo-driver, and document as
broken/fragile.  Unlikely to be of much use, and confuses new users
when their system crashes when they, or their dhclient stumble over
it.  See kern/10500, kern/8994 for the gory details.
2000-07-05 04:07:22 +00:00
scottr d08e3b12a4 Stabilize ADB support for some non-Apple ADB peripherals. This is the
second (and final) part of the fix for PR 10086.  (There are no longer
any infinite-wait busy loops in the ADB driver!)
2000-07-03 08:59:26 +00:00
scottr da62d2ef12 Avoid attaching on the Mac TV, as this system seems to not be
completely backward compatible to the II-series sound hardware.
2000-07-02 21:10:14 +00:00
scottr 95497e28ce Add video hardware info for the Performa 550 and Macintosh TV. 2000-07-02 20:59:58 +00:00
cgd a5c13f9ad4 Kwality control:
* put #includes of opt headers and headers to get protos used by
  net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
  in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
  local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
  netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
mrg e6b451c8a6 fix wrong comment. 2000-07-01 03:35:07 +00:00
itojun d76ae83df8 add PULLDOWN_TEST for all the platforms.
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
mrg 28d898391b remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:10:45 +00:00
mrg e185413725 remove redudant <vm/pmap.h> includes. <vm/pmap.h> -> <uvm/uvm_pmap.h> 2000-06-27 04:18:48 +00:00
kleink e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
wrstuden 491d7e6764 Fix logic bug which would keep PPS from working. Noticed by:
Charles Carvalho <carvalho@cisco.com>
2000-06-25 20:55:33 +00:00
mrg c543a66253 remove some redundant <vm/vm_xxx.h> includes 2000-06-25 13:26:19 +00:00
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
scottr fbafc16812 Revert debug-related bogon that snuck in (no change in functionality). 2000-06-18 22:58:45 +00:00
scottr cee7249423 Since interrupts are now enabled during ADB autoconfig, it's possible to get
a keyboard event before wskbd is attached. Make sure we've done that before
passing an event to kbd_intr(), which in turn hands off to wskbd_input().
This is another part of the fix for PR 10086.
2000-06-17 18:00:47 +00:00
scottr 6f644439a9 Only the first device that we're sure is a keyboard should be attached
as the wskbd console device.  (Part of the fix for PR 10086.)
2000-06-17 17:46:40 +00:00
veego 223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
fredb 1c3835d907 Enable "rnd" pseudo-device. It's no longer experimental, and works just
fine on mac68k.
2000-06-11 18:09:34 +00:00
scottr 50cde82828 Since interrupts are now enabled during ADB autoconfig, it's possible
to get a mouse event before wsmouse is attached. Make sure we've done
that before passing an event to wsmouse_input().
2000-06-11 17:26:47 +00:00
scottr 162689f352 We don't need ADB debugging enabled any longer. 2000-06-10 02:33:59 +00:00
scottr a91ead9a5d From Hauke Fath: clean up disklabel support, particularly for
native NetBSD labels.
2000-06-09 15:27:35 +00:00
scottr d220ba7dc4 Make this compile with GRF_COMPAT. Problem pointed out by Hauke Fath. 2000-06-08 06:01:27 +00:00
soren a9aa2abf94 defopt SYSCALL_DEBUG. 2000-06-06 18:52:30 +00:00
jhawk c063b64a2b Do not clear msgbufenabled in dumpsys(). Dump messages will now go to
the message buffer. This can be invaluable in debugging if the dump
fails (assuming a persistant message buffer)
2000-06-05 23:44:55 +00:00
nisimura 4371d91433 Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
2000-06-05 07:59:50 +00:00
thorpej 8871d8563a Add a comment on single-processor systems about p_cpu being initialized
by fork1().
2000-05-31 05:06:43 +00:00
thorpej e03e9e8086 Rather than starting init and creating kthreads by forking and then
doing a cpu_set_kpc(), just pass the entry point and argument all
the way down the fork path starting with fork1().  In order to
avoid special-casing the normal fork in every cpu_fork(), MI code
passes down child_return() and the child process pointer explicitly.

This fixes a race condition on multiprocessor systems; a CPU could
grab the newly created processes (which has been placed on a run queue)
before cpu_set_kpc() would be performed.
2000-05-28 05:48:59 +00:00
jdolecek c5d51d433e fix prototype for fd_mod_free() - should fix port-mac68k/10063 2000-05-27 10:25:15 +00:00
sommerfeld 40339b39f9 Reduce use of curproc in several places:
- Change ktrace interface to pass in the current process, rather than
p->p_tracep, since the various ktr* function need curproc anyway.

 - Add curproc as a parameter to mi_switch() since all callers had it
handy anyway.

 - Add a second proc argument for inferior() since callers all had
curproc handy.

Also, miscellaneous cleanups in ktrace:

 - ktrace now always uses file-based, rather than vnode-based I/O
(simplifies, increases type safety); eliminate KTRFLAG_FD & KTRFAC_FD.
Do non-blocking I/O, and yield a finite number of times when receiving
EWOULDBLOCK before giving up.

 - move code duplicated between sys_fktrace and sys_ktrace into ktrace_common.

 - simplify interface to ktrwrite()
2000-05-27 00:40:29 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
thorpej 8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +00:00
thorpej 1140468205 Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).
2000-05-24 16:48:33 +00:00
thorpej 071aed40ac A foolish consistency; most parts of the kernel use bp->b_data, so
change these from bp->b_un.b_addr to bp->b_data, as well.  This also
allows us more flexibility to experiment with other data buffer types
hung off of struct buf.
2000-05-19 18:54:22 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
minoura 6943d5dd19 defopt FPSP. 2000-05-14 14:13:53 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
itojun 3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
jdolecek 2a0b424186 LKM fixes:
* fix a typo in callout_stop() call
* prototype fd_mod_init(), fd_mod_free() to avoid warnings
* include iwm_mod.h

Fix sent in port-mac68k/9787 by Dave Huang.
2000-04-05 11:37:13 +00:00
scottr 3ca0215f69 Correct a pasto in pm_pmgrop_pm1(); while there were no negative side
effects, the place this code ended up couldn't have had any positive
effect, either.
2000-04-05 07:29:18 +00:00
scottr 15a3a17a43 Correct a few instances where we returned from a function that
had set splhigh() but returned without restoring the previous spl.
The PowerBook keyboard works better, now, but still starts to flake
out pretty badly at 70+ wpm.
2000-04-05 07:18:07 +00:00
scottr 4d23f7686d Attach all displays, keyboards, and mice, not just the first
ones found.
2000-03-31 08:27:43 +00:00
scottr 10c763efa3 The declaration for esp has moved to conf/files. (Hi Charles!) 2000-03-27 21:47:46 +00:00
kleink 230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
tsutsui 9100212ef0 Add a "sc_rev" member to ncr5380_softc and handle CXD1180 quirk
in MI ncr5380sbc.
2000-03-25 15:27:54 +00:00
thorpej b667a5a357 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:30:07 +00:00
scottr 7dbb8560d6 Revert to the old practice of always setting up MRG, even if we don't
need it for ADB.  Besides the misleading message at autoconf time,
MRG is sometimes useful for things other than ADB.
2000-03-20 08:07:52 +00:00
scottr 4f29e4d330 Add and use macros to build ADB FLUSH, LISTEN, and TALK commands. 2000-03-19 07:37:58 +00:00
scottr edfc8b89ad The MRG and direct ADB drivers were inconsistent in how they worked with
a serial console; the direct driver didn't care, but the MRG driver
wouldn't probe ADB when using a serial console.  Remove the check from
the MRG version of the code to resolve this difference.
2000-03-19 06:07:05 +00:00
scottr 513f613391 Add the RasterOps 24MxTV; this card operates in the same manner as two
other RasterOps boards we already handle.  Information provided by
Greg Kerr.
2000-03-18 20:53:24 +00:00
mycroft 6780878550 Fix pasto in previous. 2000-03-18 16:14:57 +00:00
mycroft 0af581a1a1 Add a ncr5380_attach() routine which does part of the initialization, attaches
the scsibus, and does the addref/delref dance.
2000-03-18 16:13:22 +00:00
scottr c62e39490c Check to make sure we get a valid handler ID in response to a TALK R3. 2000-03-18 08:07:50 +00:00
tron e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
scottr 0a23aef85e Resurrect a chunk of code from the ite driver that we lost along the way.
This code is necessary for SE/30 internal video, at a minimum.
2000-03-17 04:46:32 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
oster 1bad2e1909 Add the RAIDframe device major to the machine-dependent config files
so that the right entries get added to dev_name2blk[].  Needed for / on RAID.
(Whoops!  I missed checking these in when adding the RAID_AUTOCONFIG stuff.)
2000-03-14 15:56:51 +00:00
scottr 87bf486935 Back out previous; it's now dead code. 2000-03-09 23:15:23 +00:00
scottr d5f475149c The last change has proven unreliable. Attack the problem differently;
assume that the address we have is the correct PA if we can't
figure it out by groveling.  This time it really (yes, really)
works on the PowerBook 14x/16x/170.
2000-03-09 22:27:09 +00:00
scottr 6755970bcf Low-level drivers, like the Power Manager driver, can get us into a major
funk when they misbehave and give us unexpected results.  Specifically:

 - Don't assume that the first free slot is at the top of the table if
   we can't find one.
 - Don't increment ADBNumDevices when backfilling "holes" left by devices
   that didn't respond to a TALK R3 during the initial device scan.
 - Don't assume that an address reassignment worked; make sure something
   responds on the new address before plowing forward.
 - If after device reassignment there are no free slots, make sure to
   indicate this fact.
 - Failing all else, handle the situation where we run out of slots in
   the device table -- which now should "never" happen -- gracefully.

While the Power Manager driver still sometimes misbehaves, it shouldn't
cause the system to crash/hang due to us walking off the end of the
device table.
2000-03-07 06:35:22 +00:00
scottr 027952236a Two changes to facilitate (better) PowerBook 1xx support:
- Use a mask to account for address space "wrapping"
 - Check supervisor data space if we can't find a PTE in user data space
2000-03-04 08:16:16 +00:00
scottr a5d6bd9c7a Add get_pte_s() to search the supervisor space. 2000-03-04 08:10:51 +00:00
simonb 4eb55e447c Do the "<space><tab>" thing with the RAID_AUTOCONFIG option. 2000-02-29 06:32:20 +00:00
oster d9c47013b2 Defopt 'RAID_AUTOCONFIG'. Adding 'options RAID_AUTOCONFIG' turns on
the component auto-detection and auto-configuration of RAID sets.
Also, add "#options RAID_AUTOCONFIG" to the GENERIC config files.
2000-02-26 17:35:33 +00:00
scottr d67bf4504d Turn off some noise during autoconfig on the IIfx/Q9x0, making it
conditional on the TRACE_CONFIG debugging flag.
2000-02-24 05:02:33 +00:00
erh 8f03b9a04a Define the DONETISR macro and use netisr_dispatch.h. This is to cut down on code duplication and to standardize the available NETISRs across all ports. 2000-02-21 20:38:46 +00:00
scottr 5bc9da0d51 Correct some temporary confusion between the IOPs and the OSS: move
IOP init back to mac68k_init().  We'll deal with the OSS later.
2000-02-21 05:50:14 +00:00
scottr 45ac4c3122 Use constants defined in viareg.h to set value of VIA2. 2000-02-21 05:36:11 +00:00
scottr 17a313075f Correct some temporary confusion between the IOPs and the OSS: move
IOP init back to mac68k_init().  We'll deal with the OSS later.
2000-02-21 04:08:21 +00:00
scottr 5c7674d4dd Explicitly include headers needed by iopreg.h 2000-02-21 02:04:48 +00:00
scottr eb17197dee Initialize VIA/IOP/PSC from intr_init(). While here, re-order headers
to match KNF.
2000-02-21 01:51:37 +00:00
scottr 806c8c15e0 Initialize VIA/IOP/PSC from intr_init(). 2000-02-21 01:48:49 +00:00
scottr ab647533a1 Bracket disabled IIfx IOP code with #ifdef __notyet__, rather than
commenting it out or using #if 0.
2000-02-21 01:20:55 +00:00
ender f30d8c9d30 Include mac68k/dev/akbdmap.h, not macppc/dev/akbdmap.h. Fixes PR 9435
filed by Dave Huang <khym@bga.com>.
2000-02-17 02:07:07 +00:00
scottr 042be92f6f Update for wscons. 2000-02-14 08:58:41 +00:00
scottr 2071e61796 Update for wscons. 2000-02-14 08:48:08 +00:00
scottr 8a00740789 Merge wscons work onto the main development branch. 2000-02-14 07:01:44 +00:00
thorpej dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
thorpej fe551f0e64 Fix a bug in disksort_*() which caused non-optimal ordering when multiple
active partitions were on a single spindle.  Add a b_rawblkno member to
struct buf which contains the non-partition-relative block number to sort
by.
2000-02-07 20:16:47 +00:00
cgd 7d16ac338c add __BROKEN_CONFIG_UNIT_USAGE #define, becuase these ports do very
wrong things with device configuration data "cf_unit" information.
2000-02-05 00:13:22 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
tsutsui 249975c3c9 Revert (accidentally removed) MAXSLP macro. 2000-01-27 09:47:12 +00:00
ender 3e79c827d4 Fix PR 9302. Fix provided by Hauke Fath (hauke@Espresso.Rhein-Neckar.DE). 2000-01-27 02:26:17 +00:00
tsutsui b0fbaa33fb Remove obsoleted macros. 2000-01-26 09:44:10 +00:00
drochner 8eb798e603 define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
2000-01-25 22:13:17 +00:00
tron 04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +00:00
hubertf 7e5ff67457 Add commented out "ident"-command 2000-01-23 23:46:04 +00:00
thorpej 52242fdf9f Update for sys/buf.h/disksort_*() changes. 2000-01-21 23:28:59 +00:00
sommerfeld aa195e816f Fix PR9240: comment above cpu_fork() out of synch with reality on most ports.
(comment change only, but was wrong for more than just i386).
2000-01-20 22:18:54 +00:00
wrstuden 87e1b0f9b7 Add overlay to kernel configs. 2000-01-20 19:12:28 +00:00
thorpej a0397a2573 Move callout initialization to a single location; no need to duplicate
that code all over the place.
2000-01-19 20:05:30 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
tsutsui 644b514c39 Change STRIPFLAGS=-g for cross-toolchains. 2000-01-19 14:44:58 +00:00
msaitoh 0b9af6bdce check whether tv_usec >= 1000000 2000-01-19 02:52:16 +00:00
thorpej 8201b36ca0 Use b_cylinder as defined in sys/buf.h 2000-01-18 19:43:02 +00:00
scottr 97a60329d2 Apparently, the Mac TV is a re-packaged Performa 550. Add code to
recognize this so that Mac TV users can finally ditch the MRG_ADB option.
1999-12-25 08:16:34 +00:00
kleink 11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
scottr 1c5a093819 Make this compile without bpf. Problem noted by Bob Nestor, fix from
Frederick Bruckman.
1999-12-20 01:06:40 +00:00
scottr 3310f57beb Replace references to PGOFSET with m68k_trunc_page() and m68k_page_offset(),
as appropriate.
1999-12-12 08:18:48 +00:00
scottr a15eb6dc13 An interrupt handler may change adbInCount underneath us, so qualify the declaration
with volatile.  The bug didn't show its face until more agressive
optimization showed up, apparently a result of the last egcs upgrade.
(The interrupt handling changes from June have certainly also played
a part.)  Thanks to Ken'ichi Ishizaka for discovering the problem.
1999-12-10 00:03:47 +00:00
ragge 26e1b45757 clrnd()/clbase() discarding. 1999-12-05 11:56:30 +00:00
ragge 0513268399 CL* discarding. 1999-12-04 21:13:19 +00:00
scottr 3029c58799 Use a bitwise-and to test CC_IPURGE, not a logical-and. This could have led
to flushing the entire cache unnecessarily.
1999-11-28 11:10:47 +00:00
scottr 86a8f1d201 Sync cachectl1() implementation with other m68k ports. 1999-11-28 10:36:56 +00:00
scottr 99d3468790 Don't use the plural form of the word "target" if there is only one! 1999-11-28 10:10:51 +00:00
scottr dc2663bf69 If there is only one ADB device, it will do us no good to avoid it
when guessing which device to poll next.  Resolves PR 7407, but the
bug is a lot older than that.
1999-11-28 10:07:34 +00:00
scottr 2454426afe Take a cue from the i386 port: Enable DHCP by default, rather than
BOOTP.
1999-11-24 22:01:19 +00:00
itojun e9a0023b37 bring in content of GENERIC.v6 into GENERIC.
remove GENERIC.v6 file (as it is part of GENERIC now).

"faith" interface is commented out by default as it is not really for
general use.
IPsec items are commented out as well, though we can enable "options IPSEC"
without export-related issue ("options IPSEC" will enable authentication
portion only).  We may need to think about it again.

if you have problem compiling with INET6 on archs I do not have access to,
please contact me.

XXX what to do with arch/arm32/SHARK{,.v6}?
1999-11-21 14:00:37 +00:00
fvdl 8bec119fcc Add commented out option SOFTDEP to all GENERIC kernels. 1999-11-15 19:10:44 +00:00
fvdl d116707af0 Add
prefix ../gnu/sys
cinclude "conf/files.softdep"
prefix

to all std.* files, so that soft dependencies can be activated using
"options SOFTDEP".
1999-11-15 19:00:25 +00:00
thorpej 1946167939 Update for pmap_enter() API change. No functional difference. 1999-11-13 00:30:26 +00:00
kleink 1c2019b5a8 Rip protection against multiple inclusion from wrapper headers. 1999-11-09 21:34:03 +00:00
scottr 4ecba735df Garbage collect adb_initted. 1999-11-07 08:22:50 +00:00
scottr 0b8b3c403e In the interrupt handlers, check adb_polling instead of
adb_initted to decide whether to handle 'recovered' interrupts
immediately.
1999-11-07 08:18:24 +00:00
scottr 26208b5e57 Garbage-collect adb_init(). It's been dead for a long time. 1999-11-07 08:08:10 +00:00
scottr c11dd8b6dd We want adb_polling set regardless of whether we're using the MRG driver. 1999-11-07 08:07:20 +00:00
scottr 8da942f249 Oops... last rev created an unused variable. While here, clean up
adb_reinit()'s variables a bit, too.
1999-11-07 06:15:09 +00:00
scottr 23411c4c1b Convert one more buffer copy that I missed in rev 1.28. 1999-11-07 05:50:26 +00:00
scottr a7628ea793 Always using polling for poweroff (from macppc). 1999-11-07 00:16:39 +00:00
scottr 27adad708f ite_polling -> adb_polling 1999-11-07 00:12:55 +00:00
scottr 57dc0b9f46 We need adb_initted in a couple of places; declare it here. 1999-11-07 00:12:54 +00:00
scottr ad43c94436 ite_polling -> adb_polling 1999-11-07 00:12:53 +00:00
scottr c827b513ac Convert buffer copies to memcpy(). 1999-11-06 23:50:29 +00:00
scottr 12a535f5ef Add more delay in adb_reinit() (from macppc). 1999-11-06 23:44:32 +00:00
scottr 560a7ef713 Change the behavior of spladb() so that it raises the IPL only
high enough to block ADB interrupts.
1999-11-06 23:05:40 +00:00
scottr c738f52fb3 Update an outdated comment. 1999-11-06 22:44:52 +00:00
scottr b46c7fc44d Don't invoke the upper half handler unless we're still
initializing the ADB bus.  This fixes PR 7870.
1999-11-06 22:25:20 +00:00
scottr 7aa7583c8e Enable interrupts during delay calibration. We pretty much have
to allow this exception so that accurate tuning of delay() can be
done (i.e. avoiding VIA-related wait states and cache effects as
much as possible).

XXX During this narrow window, it is still conceivable that we could
get interrupts from devices other than the VIA timer.  Normally this
shouldn't be a problem because interrupt handlers should generally
not be registered until we get to autoconfig.  It is, however, a
potential pitfall to be aware of.
1999-11-05 19:14:56 +00:00
scottr 55c161d3da Since nothing depends on interrupts during autoconfig proper
any longer, we can finally avoid enabling interrupts until the
end of cpu_configure().  This resolves a long-standing issue that
has caused us trouble several times in the past.
1999-11-05 19:06:39 +00:00
scottr 41ae6be989 Defer ADB configuration until interrupts are (normally) enabled. 1999-11-05 18:27:11 +00:00
scottr 902801374a An aesthetic change to autoconfig output to complement Colin Wood's
change to macrom.c in June.
1999-11-05 18:08:02 +00:00
fredb 92d294b3dc Add and enable Coda file system and pseudo-device vcoda. Closes PR 8625. 1999-11-05 09:59:25 +00:00
fredb 8e579b4df3 Enable mi Coda driver (PR 8625). 1999-11-05 09:54:07 +00:00
scottr a15f217211 [Redo] Allow rates higher than 57600, per PR 8070. Change originally
from Bill Studenmund.
1999-11-02 06:51:45 +00:00
scottr 9894ab10b4 [Redo] Catch up with recent changes to scsipi flags. Closes PR 8675. 1999-11-02 06:42:26 +00:00
scottr 8a407bd3c3 Reserve a character device slot for wsdisplay. 1999-11-01 05:29:21 +00:00
scottr 5c0a9c0483 Sync trace trap handling with other m68k ports, originated by
ITOH Yasufumi.  Coincidentally closes PR 7738.
1999-10-31 08:18:59 +00:00
scottr d0583ec22c Rearrange a little bit for consistency with spl(9); add splserial()
check to intr_computeipl().
1999-10-28 20:25:41 +00:00
kleink c1e3cb4761 Wrap an otherwise unused variable inside #ifdef DIAGNOSTIC; from Ben Mesander
in PR port-mac68k/8513.
1999-10-25 14:31:50 +00:00
thorpej d3c33c1744 Program the 53c96's interrupt routing info into the VIA before doing
anything that might cause an interrupt (e.g. the SCSI bus reset in
ncr53c9x_attach()).  If we don't do this, the initial interrupt is
lost, thus causing the state machine to never enter IDLE state, thus
causing SCSI commands to never be executed.

Fixes kern/8544, reported by Erik Bertelsen <erik@mediator.uni-c.dk>.
1999-10-19 17:00:41 +00:00
scottr e70fd63845 Be less noisy about collision errors. From Dave Huang, closes PR 8605. 1999-10-14 20:58:18 +00:00
thorpej e6c88a7686 Update for SCSIPI changes. 1999-09-30 22:59:52 +00:00
scottr f63afdf2ff Normalize autoconfig output. 1999-09-29 06:14:02 +00:00
scottr 8e9fd55168 Add support for the Macintosh LC Ethernet Adapter, from Ken'ichi Ishizaka.
This was erroneously recognized as an 8390-based card, where in fact it is
using the 83932 (SONIC) controller.
1999-09-29 06:04:50 +00:00
thorpej 11cae42531 Centralize the declaration and clearing of `cold'. 1999-09-17 19:59:35 +00:00