Commit Graph

47 Commits

Author SHA1 Message Date
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
briggs d13747524c Fixup for bogus assumptions about bus_space_handle_t. 2000-07-30 21:40:49 +00:00
scottr 8a00740789 Merge wscons work onto the main development branch. 2000-02-14 07:01:44 +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
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
scottr 46b2a0ebce Add RBV monitor sense code (formerly commented out in rbv_vidstatus())
to the match function, and print out more detailed information when
attaching RBV video.
1999-01-06 07:08:19 +00:00
scottr 33395d926e Remove an extraneous printf when attaching a Valkyrie. 1998-08-21 13:46:31 +00:00
scottr b27d106197 Match grf_obio devices correctly for the 58x/63x. 1998-08-20 13:58:04 +00:00
scottr 18b4602fd5 Add a comment regarding the broken behavior of the DAFB v7. 1998-08-13 13:45:33 +00:00
scottr b2dc905572 The Performa/LC 58x have a Valkyrie, not the DAFB. 1998-08-12 06:50:37 +00:00
scottr 63526c1ff1 New and improved console framebuffer initialization and autoconfig. This
resolves a great many issues, including Performa 58x interrupt handling
and offset displays on some models.

Programs that depend on the old (pre-NetBSD 1.1) grf interface may break.
That's actually a separate issue uncovered by this code, not caused by it.
1998-08-12 02:36:36 +00:00
scottr f170a53f0b Add a GRF_COMPAT option so that old-style grf ioctl() code can be
removed from the kernel.
1998-07-01 14:49:07 +00:00
scottr 52da0e26c6 Kill unused variable that resulted from the last change. 1998-06-02 03:21:42 +00:00
scottr da2f2cb79f Store the PA of the framebuffer in the softc. This eliminates the need
for the sc_phys callback; we can just store the PA in the grfbus attach
args, rather than a function pointer, which simplifies the code nicely.
1998-06-02 02:14:20 +00:00
scottr 9dfbdab6ec Move on-board I/O and NuBus drivers to their own directories
via repository copy, and make the necessary adjustments to reflect
the moved files.
1998-05-02 16:45:27 +00:00
scottr 82bda6ec9d The monitor sense code we have is not reliable on DAFB-based machines with
certain 17" monitors.  Change from Michael R. Zucca, PR 4988.

XXX - This can cause problems on system with the DAFB chip which currently
use only a NuBus-based video adapter.  In particular, grf devices may not be
attached properly in this case.  This unfortunate situation is less annoying
than not having a reasonable console, however.  A reasonable, reliable
monitor sense algorithm for the DAFB would resolve the problem.
1998-03-22 23:40:52 +00:00
scottr 15c668e600 Disable Valkyrie interrupts on the Quadra 630. Part of a change
from Michael R. Zucca, PR 4988.
1998-03-22 23:13:52 +00:00
scottr 4c69a8b2ea Update for bus.h changes. 1998-01-13 19:15:32 +00:00
thorpej 36760d9d94 Update for changes to config. 1998-01-12 18:59:04 +00:00
scottr 60dd653baa KNF: Fix some whitespace inconsistencies. 1997-11-08 23:22:38 +00:00
briggs 527e5cbc44 Force the probe to find the internal video for the 63x/575 models. 1997-11-08 04:12:52 +00:00
briggs 9c8e4f24b0 Disable video interrupts on the AV machines. Thanks to Michael R. Zucca
(mrz5149@cs.rit.edu) for the addresses and hints as to how the interrupts
might be disabled, and thanks to Henry Hotz (h.b.hotz@jpl.nasa.gov) for
testing on the 840AV.
Unmap the DAFB regs on the other Quadras after attachment.  They're not
used.
1997-10-08 19:54:04 +00:00
scottr f4ef74ae32 Fix grf{i,m}v_phys() prototypes. 1997-08-03 06:42:29 +00:00
scottr dfa83e4861 Overhaul grf drivers to correct recent problems with X and dt
(address error faults), as well as other reported problems:

 - Simplify grfmv_phys() to work like grfiv_phys(), and eliminate the
   second argument to both, as we don't use it anyway.
 - Handle fbbase and fboff consistently throughout.  Closes PR 3862.
 - Eliminate grfaddr() by pulling it into grfmmap(), which is the
   only place it was used, previously.
 - grfmap() now gets the physical address of the framebuffer from
   the appropriate driver, rather than try to compute it by itself.
   Be careful with aligning the base to a page address and increase
   the length of the mapped region appropriately.  Closes PR 2867.
1997-08-03 06:25:56 +00:00
scottr e083a60af2 KNF 1997-07-26 18:13:30 +00:00
veego dd62be796a s/mac68k_trunc_page/m68k_trunc_page/ 1997-06-10 19:01:35 +00:00
briggs fc43576e8d Take care when accessing DAFB--some quadra-class machines use other video
controllers.
1997-04-21 00:57:59 +00:00
briggs 71bf5ccd79 Remove tag. 1997-04-01 13:31:03 +00:00
briggs a3d5b32614 - Support DAFB machines mo' better. Actually detect if a monitor is
present and initialize a few things.  No color support, yet.
  - Properly disable interrupts for DAFB.
  - Rearrange for better nubus display card interrupt support.  Only register
    an interrupt if we know how to clear it.
  - Complain if we don't know about a given display card and can not install
    an interrupt handler.
  - Change MYSTERY stuff to cb264--still need to get the DrSW so we can
    actually call the routine to clear an interrupt from this card.
1997-04-01 05:41:59 +00:00
scottr b1e5912330 We need bus.h now, due to recent nubus_attach_args change. 1997-02-20 00:23:25 +00:00
scottr 9b4055eb72 Convert all foo_match() functions to use a `struct cfdata *' for their
second argument.  The NuBus autoconfig code had to be reorganized as a
result of this, and looks much more like a directly-attached bus now.
These changes eliminate __BROKEN_INDIRECT_CONFIG.
1996-12-16 16:17:02 +00:00
christos 40ecbf8e72 backout previous kprintf change 1996-10-13 03:21:13 +00:00
christos 06555645c2 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:24:36 +00:00
scottr 89f4fddbfe Add a way to tell grf_establish() that internal video doesn't actually
occupy a slot.  This is necessary so that GRFIOCMAP can find the correct
physical address of the framebuffer.  Fixes P550, some LC models, and
perhaps the PB520.
1996-08-04 06:03:47 +00:00
scottr d048582c60 New grf attachment code, mostly by Jason Thorpe with some cleanup by me.
This will allow dt and X to work with a generic kernel, rather than
compiling different kernels that attach grf0 to a NuBus adapter or
internal video.
1996-05-19 22:27:04 +00:00
briggs 37163421a3 Prototype for -Wall -Wstrict-prototypes -Wmissing-prototypes -Wno-uninitialized
Also change the device probing scheme to use something a bit more rational.
A current side-effect is that nubus cards are double-mapped.  I expect
to fix that shortly.
Also change splclock() to block everything but serial hardware interrupts.
1996-05-05 06:15:56 +00:00
briggs 8f58d57321 Don't fake these values. 1995-08-11 17:48:19 +00:00
briggs 70065c2ed5 Nuke int_video_start in favor of consistent use of mac68k_vidlog.
Don't find the internal video more than once.
Probe for internal video before nubus instead of after.
1995-08-04 02:55:06 +00:00
briggs fb5e0a34bb Be consistent and use mac68k_vidlog instead of int_video_start. 1995-08-04 02:47:31 +00:00
briggs ff5fa674dd Fix the internal video probe again. 1995-07-30 21:35:00 +00:00
briggs a2f49ac930 Don't show up in "slot" 0xe.\n 1995-07-28 01:34:58 +00:00
briggs 3758e23b79 Add another routine for the grf display-specific drivers to return a physical
address.
1995-07-06 17:13:45 +00:00
briggs 38031d912a First cut at a kludge for IIvx internal video. 1995-07-04 18:55:11 +00:00
briggs 932a8fc9af Set and use new fboff element from grfmode structure. 1995-07-02 00:30:25 +00:00
briggs f462aa095a Be a bit more careful on the probe... Make sure that the current slot's
addresses contain the int_video_start--or assume that internal video is
is "slot" 0xE.
1995-06-21 02:48:00 +00:00
briggs 59b4da2b39 Add new nubus handling that's much more robust.
Update via, if_ae, and grf accordingly.
Revamp grf.
1995-04-29 20:23:36 +00:00