| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
ok oga@
|
|
|
|
|
|
| |
work.
ok deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
assumes that the display device and the agp bridge are the same device.
In almost all cases this is incorrect.
In order to correctly enable the agp device with the correct mode, we
need to set the AGP_COMMAND register on both the display and the bridge
with the right bits. Since agp is currently attaching at vga(4), due to
the problems with the intel integrated graphics (a problem that I still
need to solve, to be honest), for now just provide both pci_attach_args
to the agp init, and get what we need from there to do the enable.
This fixes the "agp bug" which i have been known to rant about, a lot.
So agp radeons now work with dri without needing to be forced to pci
mode.
This wasn't detected before, since the only non-drm consumer of agp is
the intel X driver, the i810 agp driver has its own enable function.
tested by many. ok kettenis@.
|
|
|
|
| |
ok marco@.
|
|
|
|
| |
ok oga@
|
|
|
|
|
|
|
|
|
|
| |
fails.
In order to allow this, implement an API so that drm and agp can share
mappings for the BARs. Now it works as it should.
tested by many.
ok kettenis, miod said he'd look at it when it's in tree.
|
|
|
|
|
|
|
|
|
|
|
|
| |
agp and drm need to use the same memory mapping, the best way to deal
with that is to allow them to share (that's coming later), for this to
work cleanly we move the attach point of agp.
Ideally most agp drivers would attach at pchb, with only agp_i810
(and any that work similarly) attaching at vga, but this will do for
now.
ok kettenis@, miod@.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the kernel part necessary for DRI support in X. Disabled for now
because it still has a few bugs, but now I can work on it in tree. Also
requires the requisite bits in X, which are currently under discussion
on how to deal with them with privsep. ported from a combination of the
free and netbsd implementations.
Known bugs:
1) only the first occurence of X in any session will have dri, after
that something prevents it working.
2) if the machine does not have a dri capable card, the kernel panics.
Something's up in one of the probe functions. I haven't been able to
find it though.
3) radeon cards need to be forced to use PCI mode otherwise they get
into an infinite loop.
This is known to at least kinda work with SiS, radeons in pci mode and
intel cards.
ok deraadt, kinda ok art, a few other people had a quick look.
|
|
|
|
|
|
|
|
|
|
| |
actually get detected and attached. Also adds a kernel api for
manipulating agp.
Enable this on i386 and amd64.
"I think you should commit it" deraadt@, ok matthieu. Looked over by
several others.
|
|
|
|
| |
ok brad@ fgsch@ also tested by oga@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Add bounds checking to vga_pci_mmap, fixing a potential security issue.
Limit the amount of memory to what the vbe info structure says the card
card has. This should be nicely refined to limit to the amount of memory
needed by the active resolution and depth but this will do for the time
being.
2. Fix several places in vesafb.c where the return of kvm86_bios_addpage()
isnt being checked. Also ensure that if vesafb_get_mode_info() fails that it
cleans up after itself by releasing the page it added.
3. Correct the range checks in vesafb_putcmap and vesafb_getcmap, harmonize
code with similar code found else where.
ok miod@
|
|
|
|
| |
ok deraadt, "slap it in" miod@
|
|
|
|
| |
ok deraadt@
|
|
|
|
|
| |
Ansify some remaining function declarations in vga_pci.c.
ok miod@, dim@.
|
| |
|
|
|
|
| |
ok miod@, drahn@, dim@.
|
|
|
|
|
|
| |
of panics and bugfixes. Access curproc directly, do not expect a process
pointer as an argument. Should fix many "process context required" bugs.
Incentive and okay millert@, okay marc@. Various testing, thanks.
|
| |
|
| |
|
|
|
|
|
| |
the tree was stable. No point in code supporting a company which screws
its employees being in the OpenBSD tree.
|
|
|
|
| |
the really long define. ok deraadt@
|
|
|
|
| |
io/memory space using PCI io/mem descriptors.
|
| |
|
| |
|
|
|
|
|
|
|
| |
only i810 driver was tested though.
based on the netbsd's lkm, initially ported
by hunter@dg.net.ua and later made into shape by mickey.
testing by art@ and millert@ .
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
files could probably be updated even a bit further (they are from mid-summer).
In addition, I've added support for console scrollback, somewhat inspired by
Linux's vgacon driver. Basically, instead of allocating our own buffer and
doing lots of copies, we take advantage of Video RAM and just modify the VGA
display origin register as appropriate. This approach has a few advantages:
simple to implement, no wasted KVM, it's fast, and after a boot you can now
scroll back all the way to the BIOS messages (assuming your msgbuf is of a
typical length :). Disadvantages are that the VRAM buffer is relatively
small (only 32k) and we do not support raster devices through this method.
(thanks to mickey@ for pointing this out).
The code for this is fairly unobtrusive, so should we come up with a better
approach to console scrollback at a later time (i.e., even more platform
independent) it should be easy to revert this.
We're one step further in porting nice features of PCVT over to wscons.
|
| |
|
|
|
|
| |
well. $OpenBSD$ tagging
|
|
|
|
| |
Some files were move behind CVS back.
|
|
|
|
| |
compare pci tags w/ bcmp
|
| |
|
| |
|
|
|