Commit Graph

1852 Commits

Author SHA1 Message Date
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
thorpej 3b01d1b872 Rename the machine-dependent autoconfiguration entry point `cpu_configure()',
and rename config_init() to configure() and call cpu_configure() from there.
1999-09-15 18:10:33 +00:00
chs f3a668ed84 eliminate the PMAP_NEW option by making it required for all ports.
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +00:00
mycroft c3e1f6741d A foolish consistency. 1999-08-30 18:58:01 +00:00
thorpej 2cf3330a1b Garbage-collect reference to <sys/dmap.h>. 1999-08-23 22:29:37 +00:00
simonb 06a92524c2 Include <sys/bswap.h> for function prototypes. i386, pc532 and vax
still include <machine/byte_swap.h> and define macros for some of
the bswap*() functions.
1999-08-21 05:39:51 +00:00
thorpej 28fb7c1eb8 Define cpu_number() as discussed on tech-smp. 1999-08-10 21:08:05 +00:00
thorpej eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
briggs 3988bc1c06 Deal with the fact that ipls (specifically mac68k_clockipl) are now in an array. 1999-08-05 12:35:55 +00:00
briggs 4292c9d32b Define MAC68K_CLOCK_IPL. 1999-08-05 12:34:49 +00:00
thorpej 654051453f Use an array for PSL values, rather than individual shortwords, like
the hp300 port.
1999-08-04 16:01:47 +00:00
augustss 3652732791 Add wsmux device.
(Also add lots of missing chrtoblktbl[] entries.)
1999-07-29 19:14:35 +00:00
augustss a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
cgd f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
briggs a33d38257c Declare struct pmap kernel_pmap_store extern. 1999-07-21 03:18:21 +00:00
christos 41cc9a0eb8 enable PPP_BSDCOMP, PPP_DEFLATE, PPP_FILTER, PFIL_HOOKS, IPFILTER_LOG
on the GENERIC kernels that had them commented out.
XXX: Please note, that not all the kernels have all the options defined!
1999-07-20 07:40:34 +00:00
scottr ba0669d0b6 The Quadra 605 and LC 47x apparently share the same logic board,
and hence need the same video hack.  From Ken'ichi Ishizaka.
1999-07-19 05:20:15 +00:00
thorpej 0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej 34a0f20633 Fix typo in previous. 1999-07-08 21:14:26 +00:00
thorpej 120a156ee4 Fix typos in previous. 1999-07-08 21:10:12 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
itojun 5effafcaa6 kernel configuration for IPv6/IPsec. should be in GENERIC in the future.
(source code will be committed soon)
1999-07-01 07:00:12 +00:00
briggs 819a054df2 Poll for serial interrupts. Return to 3000us delay instead of 4000us in init. 1999-06-29 04:45:59 +00:00
itojun 427639cdce - Call ip6intr if INET6 is defined.
- remove "need-flag" for mac68k esp driver, as it is not used in anywhere
  and conflicts with IPsec ESP header.

This should be the only MD change in IPv6 support, except kernel config file.
Very sorry if you have any compilation problem with it (I believe it is okay).
If your favorite arch is not included in here, please add a
call to ip6intr() from softintr handle.
1999-06-28 08:20:40 +00:00
briggs 79fe772f46 Include a bit more info about what's not happening with IOP. 1999-06-28 04:33:21 +00:00
briggs 598b09009b Include resourcevar.h for p_limit/rlimit definition. 1999-06-28 04:21:15 +00:00
briggs 71a4446b04 Unfortunately, several changes that are intermingled:
- Add initial IOP support.  ADB doesn't work yet for me, but it's here so
  that others will be encouraged to work on it.  ADB_HW_IOP basically
  is configured as a NOP so that serial consoles will continue to work.
- Roll via1_intr and via2_intr into the intr.c scheme--this also required
  changing rtclock_intr to grovel the stack differently so that hardclock
  gets the right arguments and softclock() doesn't get all reentrant.
- Make via1 interrupts parallel to via2 interrupts--handlers get a pass-
  through pointer and we can register handlers.  Register via1 interrupt
  with intr_establish()--normally level 1, level 6 for A/UX scheme.
- Use intr_establish() to set real via2 interrupt handler instead of the
  hacked function pointer.
- Reorganize adb-direct interrupts so that a function call is removed.
- Implement A/UX interrupts for all Quadras right now.  We may need to
  special case some Quadras, but Linux folks are reporting success on
  several models.
- Fix intrnames to be accurate for the normal, PSC, and A/UX interrupt
  configurations.
1999-06-28 01:56:55 +00:00
briggs f9de07203c Add some constants from Linux/mac68k to note SCC, floppy, and SCSI registers.
Add some code, inspired by Linux/mac68k, to shutdown all DMA on the PSC
at startup and to disable and clear all interrupts except the SCC.
1999-06-28 01:41:13 +00:00
briggs d6205b71c6 Undo some of my recent changes that were misguided. 1999-06-27 23:43:37 +00:00
briggs eb7ff0a96f Quadra 900/950 SCC-compatibility serial support is at an offset of 0x20
bytes from the base SCC address.  With this change, serial console works
on my Q950 if the MacOS control panel is used.
1999-06-26 18:29:28 +00:00
thorpej 9e9f068f43 Add the guts of mlockall(MCL_FUTURE). This requires that a process's
"memlock" resource limit to uvm_mmap().  Update all calls accordingly.
1999-06-18 05:13:45 +00:00
thorpej 0288ffb53a pmap_change_wiring() -> pmap_unwire(). 1999-06-17 19:23:20 +00:00
thorpej f5a527bb4e Remove pmap_pageable(); no pmap implements it, and it is not really useful,
because pmap_enter()/pmap_change_wiring() (soon to be pmap_unwire())
communicate the information in greater detail.
1999-06-17 18:21:21 +00:00
thorpej 602d8e81f7 Don't (ab)use uvm_map_pageable() to allocate PT pages. Instead, do
some internal reference counting on PT pages.  We still allocate them
with the page fault routine (a wire-fault, now), but no longer free
PT pages from pmap_pageable().
1999-06-15 22:18:07 +00:00
kleink 857dfc7058 Slightly rearrange the SSIR inline assembly implementation in order to avoid
making assumptions on C symbol name prefixes.
1999-06-15 15:26:34 +00:00
briggs 3cce22665e Clear interrupts on a Radius GS/C card. Thanks go to Yasufumi Suzuki
<yattin@sco.bekkoame.ne.jp> for doing the MacsBug "leg"work for me.
1999-06-14 03:11:34 +00:00
ender 2b55a690f8 Change the annoying printf() of 2 backspaces to a space followed by a
backspace for aesthetics.
1999-06-12 00:21:13 +00:00
scottr 35f356e920 Eliminate more overhead in delay(); there's no point in doing the same
thing in both the calibrator function and the actual delay function.  At
this point, _delay() does all of the work, so we can garbage collect
dummy_delay() and make _delay() an alternate entry point for delay().

This results in a small (but measurable) improvement on the IIci.
1999-06-11 06:51:39 +00:00
briggs a6b22a059a Note that 0x146 is a Micron Exceed. 1999-06-10 03:25:18 +00:00
briggs 3ea7c860b9 Use information from Kensuke Ogawa <kenogawa@festa.or.jp> to disable
interrupts on a Micron Exceed color video card.
1999-06-10 03:24:38 +00:00
scottr 6adfba2698 Tweak previous: use shorter instructions to accomplish the same
#task (minimizes overhead).
1999-06-09 15:34:08 +00:00
scottr f2f8426e86 Write a new low-level assembly help for delay() and the calibrator. This
eliminates stalls during instruction prefetch and makes the delay
consistent regardless of kernel configuration.
1999-06-09 06:59:53 +00:00
briggs f98c8a0394 Remove some register declarations.
Get Q9x0 dual SCSI at least basically working.
Be paranoid about some register reads.
1999-06-09 03:41:34 +00:00
thorpej 2c35c7bd03 Only declare block major numbers for devices which can be the root device. 1999-06-07 20:31:27 +00:00
thorpej d76e7b8c6d Don't pass a nam2blk around at all; just have setroot() and friends reference
dev_name2blk[] directly.  Addresses PR #7622 (ITOH Yasufumi), although
in a different way.
1999-06-07 20:16:08 +00:00
briggs 6e95146ec6 Raise spl4 to spl6 in quick_go--I am now experimenting with interrupts
at levels 5 (sound) and 6 (via1) on the Q700.
Raise splhigh when reading and writing registers.  It's ugly, but it's
possible that we could get an interrupt from a higher-level source,
causing a re-read of a memory location.
This is not good when, e.g., we are reading the interrupt register.
Ideally, we would just raise splhigh() in ncr53c9x_readregs(), but
that's m.i. code, and it may be expensive on other architectures.
1999-06-01 03:40:12 +00:00
briggs 0ff3b0087c Add debug routine as an aid for working out new nubus cards. 1999-06-01 03:26:42 +00:00
briggs 5e28d99a64 Add define for another ethernet card (Nuvolink)
Wrap nubus_scan_slot() prototype in #ifdef DEBUG.
1999-06-01 03:24:25 +00:00
briggs 42d2797a4b Comment out DISABLE_EXT_CACHE as it unnecessarily slows down the IIci
w/ external cache.  Leave it around so the paranoid can still use it.
1999-06-01 02:39:25 +00:00
briggs f3d8507abd PR 7021 from Yoshihisa Sugimoto <sugimoto@sums.shiga-med.ac.jp>:
Clear interrupt properly on the RasterOps 24XLTV.  Same as the 24LX.
1999-05-30 21:43:19 +00:00
thorpej beb8d06638 Generally update the comment above vunmapbuf(). 1999-05-26 22:19:33 +00:00
thorpej a2d06a4721 Generally update the comment above the vmapbuf() implementations. 1999-05-26 22:07:36 +00:00
thorpej 2580d306ab Change the vm_map's "entries_pageable" member to a r/o flags member, which
has PAGEABLE and INTRSAFE flags.  PAGEABLE now really means "pageable",
not "allocate vm_map_entry's from non-static pool", so update all map
creations to reflect that.  INTRSAFE maps are maps that are used in
interrupt context (e.g. kmem_map, mb_map), and thus use the static
map entry pool (XXX as does kernel_map, for now).  This will eventually
change now these maps are locked, as well.
1999-05-26 19:16:28 +00:00
thorpej cba22525ce Fix some broken packet length checks. Really (no, I mean really) works now
after the ether_input() changes -- tested on my Quadra 650.
1999-05-24 21:53:42 +00:00
thorpej e8beb9bbe8 Make this compile again. 1999-05-24 18:40:48 +00:00
thorpej ed4224c64e Fix a couple of problems from the ether_input() change:
- Make it compile again, with BPF.
- Don't subtract the Ethernet header length from the total packet length.
- Copy the alignment fix from sys/dev/ic/i82586.c (though the m68k shouldn't
  really be affected).
1999-05-21 21:48:28 +00:00
lukem e4a87aa1a9 * convert to using MI allocsys(). most ports were using an MD allocsys(),
although a couple still used the old pre-4.4-lite (?) mechanism.
* use format_bytes() to format the various printf()s that print out memory sizes
1999-05-20 08:21:42 +00:00
thorpej f98d358a1f Rework layer 2 protocol input routines. Instead of calling e.g. ether_input()
directly, call the function pointer (*if_input)(ifp, m).  The input routine
expects the packet header to be at the head of the packet, and will adjust
as necessary.  Privatize the layer 2 input and output routines, allowing
*_ifattach() to set them up as appropriate.
1999-05-18 23:52:51 +00:00
scottr 2f5a40c966 From Yasuhiro Endoh: Performa 58x uses ADB soft poweroff. 1999-05-15 19:29:12 +00:00
nisimura 7a50b38cbd - Adjust descriptive comment of cpu_fork() which returns nothing and
returns once.
- Minor fixes in mips/vm_machdep.c.
1999-05-14 02:11:59 +00:00
thorpej c10a926030 Allow the caller to specify a stack for the child process. If NULL,
the child inherits the stack pointer from the parent (traditional
behavior).  Like the signal stack, the stack area is secified as
a low address and a size; machine-dependent code accounts for stack
direction.

This is required for clone(2).
1999-05-13 21:58:32 +00:00
kleink 6290fed1b6 SVR4-related typo in previous. 1999-05-06 14:16:07 +00:00
scottr 0179750b00 Correct two more problems of the same type as in rev 1.21: use the length
of the buffer you're copying from as the loop interator, not the length
of the buffer you're copying to.  Also, rewrite print_single() with
pointer instead of array operators.  Appears to correct some ADB-related
`hangs' during autoconfig.
1999-05-06 06:01:27 +00:00
scottr a4adbf2f86 Move initialization of the iomem extent struct from mac68k_set_io_offset()
to mac68k_init(), so that we're through frobbing the MMU in special ways
by the time we get there.  While it doesn't actually cause a problem with
the current structure of our initialization code, it probably would have
in the future.
1999-05-03 19:10:54 +00:00
scottr b997ba8fa3 g/c some useless calculation on avail_remaining after its last reference. 1999-05-02 17:26:14 +00:00
scottr 2f45ab494c Remove a (harmless) duplicated line. 1999-05-02 17:23:07 +00:00
scottr 009cda3fb2 Fix a problem with bounds_check_with_label(), noted by Greg Oster: we
had been returning (-1) as an error instead of 0.  This is the result of
not keeping up with its i386 ancestor, which it was originally derived
from back in 1993.  Re-sync.
1999-05-01 09:26:32 +00:00
scottr 9e69eadd92 Rewrite read_mac_label() and friends, simplifying the code considerably
in the process.  Less is truly More.
1999-05-01 09:12:47 +00:00
christos d27f70c075 Include opt_compat_sunos.h 1999-04-29 16:22:03 +00:00
kleink e1529b8f93 Pull in the right generic m68k header. (Where was my mind?) 1999-04-29 14:38:39 +00:00
scottr eb910c35ce From Ken'ichi Ishizaka: correct the calculation of the frame buffer
offset by masking off garbage bits in the DAFB v7.  This has been
tested at all resolutions and common color depths on the LC47x.
1999-04-28 05:24:08 +00:00
thorpej b8073b401b Garbage-collect the VM_MBUF_SIZE constant. Instead, use the size
(nmbclusters * mclbytes), so that the right amount of KVA space is
allocated if those variables are patched.
1999-04-26 22:46:44 +00:00
simonb 5d8b1ef3e4 g/c REAL_CLISTS. 1999-04-25 02:56:26 +00:00
ender e544636cde Disable ASC interrupt enabling for now. We don't currently use it, and
it seems to be causing hangs at attach time on LCII's.
1999-04-22 18:00:34 +00:00
chs 05b971dd5f in pmap_pageable(), rather than marking a PT page as not modified
to trick the pagedaemon into freeing it later, just unmap the page
and free it immediately.  fixes PR 7337.
1999-04-22 04:24:52 +00:00
scottr 136972df3a Actually, the last change solved a different but related problem than
the one mentioned in PR 7376.  By clearing the display in iteon()
instead, we can kill both birds with the same stone.
1999-04-21 06:00:07 +00:00
scottr 48ff49fee0 When attaching the ite console, clear the entire display rather than assuming
that the emulator will do it for us.  (The emulator will only clear
full character-sized rows.)  Incidentally fixes PR 7376.
1999-04-21 05:18:17 +00:00
kleink ed74932033 Add COMPAT_SVR4 for m68k. 1999-04-19 21:22:56 +00:00
pk b13e5d1469 Quote "AS IS" as in the majority of Carnegy Mellon notices. 1999-04-12 20:38:17 +00:00
chs f455dd6596 add a `flags' argument to uvm_pagealloc_strat().
define a flag UVM_PGA_USERESERVE to allow non-kernel object
allocations to use pages from the reserve.
use the new flag for allocations in pmap modules.
1999-04-11 04:04:04 +00:00
scottr d6fd16c828 vm_size_t -> vsize_t 1999-04-07 06:45:14 +00:00
scottr fd295b15e1 Turn avail_next, avail_range, and avail_remaining into local variables. Also,
change vm_size_t -> vsize_t.
1999-04-07 06:14:33 +00:00
scottr 466895623f Cleanup: GC unused externs, and some KNF. 1999-04-07 05:59:14 +00:00
pk c40eb1cd97 Fix a pasto in copyright text which has been procreating like rabbits.. 1999-04-06 20:09:18 +00:00
scottr e169535fc2 Include zsc.h so that SCC soft interrupts have a chance. Fixes PR 7313. 1999-04-06 05:55:06 +00:00