Age | Commit message (Collapse) | Author |
|
|
|
mga_do_agp_dma_bootstrap fails causes problems if
mga_do_pci_dma_bootstrap succeeds. This commit makes it possible to do
a "minimal" clean up instead. I'm still trying to figure out what is
causing the failures in mga_do_agp_dma_bootstrap...
Signed-off-by: Ian Romanick <idr@us.ibm.com>
|
|
when mga_do_init_dma fails. Still trying to determine why
mga_do_init_dma is failing.
Signed-off-by: Ian Romanick <idr@us.ibm.com>
|
|
|
|
me)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R200_EMIT_PP_TXCTLALL_0-5 (replaces R200_EMIT_PP_TXFILTER_0-5, 2 more
regs) and R200_EMIT_ATF_TFACTOR (replaces R200_EMIT_TFACTOR_0 (8 consts
instead of 6)
|
|
|
|
|
|
- Comment out the "is this mapping/bufs in allocated AGP" bits in BSD
because they break mga (which uses AGP allocation that doesn't track
entries). It's not a security issue when we still have the related
ioctls marked root-only.
- Apply some power-of-two alignment restrictions to hopefully avoid some
panicing in bad cases of drm_pci_alloc() on FreeBSD.
- Add verbosity to some error handling that I found useful while debugging.
|
|
|
|
suspend, and the DDX driver re-inits the board successfully anyway.
|
|
*_drm.h have user space interfaces
|
|
into shared-core/Makefile.am. Bump to 1.0.3.
|
|
|
|
|
|
me to match other drivers and avoid ifdeffing. The linux via_drv.c will
be moved from shared-core to linux-core soon by repocopy.
Submitted by: Jake Burkholder <jake@FreeBSD.org> Tested by: unichrome
|
|
|
|
contexts registered with the callers filp was wrong.
|
|
caller on fb / agp memory alloc and free. Otherwise malicious clients
can register allocations on other clients or free memory used by other
clients which will lead to severe memory manager inconsistensies.
|
|
|
|
|
|
|
|
understandable: preinit -> load postinit -> (removed) presetup ->
firstopen postsetup -> (removed) open_helper -> open prerelease ->
preclose free_filp_priv -> postclose pretakedown -> lastclose
postcleanup -> unload release -> reclaim_buffers_locked version ->
(removed)
postinit and version were replaced with generic code in the Linux DRM
(drivers now set their version numbers and description in the driver
structure, like on BSD). postsetup wasn't used at all. Fixes the savage
hooks for initializing and tearing down mappings at the right times.
Testing involved at least starting X, running glxgears, killing
glxgears, exiting X, and repeating.
Tested on: FreeBSD (g200, g400, r200, r128) Linux (r200, savage4)
|
|
the driver already knew their correct value. For example the physical
address of the framebuffer and registers.
|
|
needing root.
|
|
|
|
driver's preinit routine, and by using DRM_COPY_TO_USER_IOCTL when
copying out to an ioctl's data pointer. Pulled from the latest version
of my drm-hook-rename.diff and only compile-tested after that.
|
|
|
|
a cmdbuf, which could lead to hangs.
Submitted by: Aapo Tahkola
|
|
copy'n'pasted).
Submitted by: jkim
|
|
|
|
with BSD fix from jkim and the r300_reg.h license from Nicolai Haehnle.
Big thanks to everyone involved!
|
|
|
|
|
|
compatiblity with userspace..
|
|
|
|
is ok to be shared, it will be passive on BSD.
|
|
|
|
This is Egberts code, ported to Pauls framework by me..
|
|
code duplication, and it also hands you the map pointer so you don't
need to re-find it.
- Remove the permanent maps flag. Instead, for register and framebuffer
maps, we always check whether there's already a map of that type and
offset around. Move the Radeon map initialization into presetup (first
open) so it happens again after every takedown.
- Remove the split cleanup of maps between driver takedown (last close) and
cleanup (module unload). Instead, always tear down maps on takedown,
and drivers can recreate them on first open.
- Make MGA always use addmap, instead of allocating consistent memory in
the PCI case and then faking up a map for it, which accomplished nearly
the same thing, in a different order. Note that the maps are exposed to
the user again: we may want to expose a flag to avoid this, but it's
not a security concern, and saves us a lot of code.
- Remove rmmaps in the MGA driver. Since the function is only called during
takedown anyway, we can let them die a natural death.
- Make removal of maps happen in one function, which is called by both
drm_takedown and drm_rmmap_ioctl.
Reviewed by: idr (previous revision) Tested on: mga (old/new/pci dma),
radeon, savage
|
|
|
|
the code for it, rather than introducing something that isn't going to
work 100% of the time.
|
|
didn't have it.
|