| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
prodded by matthieu@
|
| |
|
|
| |
from Denis Lapshin, ok deraadt@
|
| |
|
|
|
|
| |
diff it against he Linux kernel sources. Fix a few cases where definitions
were renamed over in Linux-land. The current Linux source doesn't define
HWS_PGA_GEN6, so get rid of its usage.
|
| |
|
|
|
|
|
| |
i915_gem_idle(). If we don't do that we end up with stale entries on the
inactive list which will panic the kernel the next time we use the list.
Fixes restarting X on Sandy Bridge.
|
| |
|
|
|
|
| |
diff it against the Linux kernel sources. Fix a few bugs revealed by doing
such a diff. Tested by myself and a few others on 915, 945, 965 and
6-series.
|
| |
|
|
| |
figured out by and ok guenther
|
| |
|
|
|
|
|
|
|
|
|
|
| |
no oks (it is really a pain to review properly)
extensively tested, I'm confident it'll be stable
'now is the time' from several icb inhabitants
Diff provides:
- ability to specify different allocators for different regions/maps
- a simpler implementation of the current allocator
- currently in compatibility mode: it will generate similar addresses
as the old allocator
|
| |
|
|
|
|
| |
same as R7xx. So, set the 'Radeon HD 6320' card to RV770.
OK matthieu@
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
idling the rings fails and esults in an infinte sleep. So skip initialization
of the rings altogetheron sandybridge. Issuing 3D commands won't work in that
state, but at least VT switches (and therefore suspend) will no longer hang.
This is a temporary measure until the ring code has been fixed.
ok oga@
|
| |
|
|
|
|
|
|
| |
the modeset registers in that state hangs the machine halfway through resume.
So skip this step on sandybrige and rely on the (upcoming) xf86-video-intel
driver to properly restore the mode.
ok oga@
|
| |
|
|
|
|
|
|
|
|
| |
Far from perfect. Extra (almost essential) features like the extra
ringbuffers are not yet supported (I have half a diff), but this and the
appropriate ddx patches allow modesetting and basic shadow acceleration.
Initial work by jcs@, a few cleanups and bugfixes by me.
Tested by many on all appropriate chipsets. ok kettenis@
|
| |
|
|
|
|
|
| |
This, together with an updated xorg driver makes my drm/XVideo work.
Originally from Nigel Taylor.
ok oga@ mcbride@
|
| |
|
|
|
|
|
| |
ironlake interrupt handler is changed. some nasty bug lurks in here,
and any binary change randomly exposes this and screws up the chip.
back this out for now; until it is found.
ok oga
|
| |
|
|
|
|
|
| |
Some gm45 and 965 are having issues and this fixes it for halex at least.
Art's machine (945gm) is also playing up but he didn't update for a year
(and the problem doesn't look like what i would expect).
|
| |
|
|
|
|
|
| |
accesses. we don't need to disable the interrupt on the chip. if the
interrupt isn't for us, then we should not write to lots of registers,
either.
ok oga, tested by lots of people in snapshots
|
| |
|
|
|
|
|
|
| |
The vm hackers don't use it, don't maintain it and have to look at it all the
time. About time this 800 lines of code hit /dev/null.
``never liked it'' tedu@. ariane@ was very happy when i told her i wrote
this diff.
|
| |
|
|
|
|
|
|
| |
that's ever used it, and it's long since been changed to use
DVACT_{QUIESCE,SUSPEND,RESUME} instead.
ok deraadt@, dlg@; miod@ also agreed with this idea when I brought it
up a few weeks ago
|
| |
|
|
|
|
|
|
| |
While this means we are on the way to vt switch a few things want
vblanks interrupts between disabling the cp and the vt switch
(modeset_ctl ioctls for example)
tested by jsg@, found and ok kettenis@.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Allocating with M_WAITOK, checking for NULL, and calling panic() is
pointless (malloc() will panic if it can't allocate) so remove the check
and the call.
2) Allocating with M_WAITOK, checking for NULL, and then gracefully
handling failure to allocate is pointless. Instead also pass M_CANFAIL
so malloc() doesn't panic so we can actually handle it gracefully.
1) was done using Coccinelle.
Input from oga.
ok miod.
|
| |
|
|
| |
outside the tree.
|
| |
|
|
| |
'go for it' oga@
|
| |
|
|
|
|
|
| |
While it would be best if we never needed to reset the gpu people hate
losing their X sessions. Sometimes on gm45 it seems that the render
engine reset doesn't work properly, so force a full chip reset in those
cases not just the cases that require it.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new world order of pmemrange makes this data completely redundant
(being dealt with by the pmemrange constraints instead). Remove all code
that messes with the freelist.
While touching every caller of uvm_page_physload() anyway, add the flags
argument to all callers (all but one is 0 and that one already used
PHYSLOAD_DEVICE) and remove the macro magic to allow callers to continue
without it.
Should shrink the code a bit, as well.
matthew@ pointed out some mistakes i'd made.
``freelist death, I like. Ok.' ariane@
`I agree with the general direction, go ahead and i'll fix any fallout
shortly'' miod@ (68k 88k and vax i could not check would build)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a faked up version of the gem command submission method for r600
required for OpenGL support on these chipsets.
Currently support is not perfect. since these chips have a rather funky
ringbuffer based interrupt method which this code does not yet support so
interrupt based polling methods must be turned off in mesa.
I've not found a good way which to do that per-driver, so until I work
that out I the following .drirc (or /etc/drirc) chunk (provided by
Brynet after I was too slack to provide it myself) will be needed:
<driconf>
<device screen="0" driver="r600">
<application name="all">
<option name="fthrottle_mode" value="0"/>
<option name="vblank_mode" value="0"/>
</application>
</device>
</driconf>
Tested by many on tech@. While it provided more problems, this diff made
espie@ stop nagging me when he finally found out it existed.
|
| |
|
|
|
|
|
| |
Disable it explictly for i945g and i945gm because according to linux
(which is written by intel people) msi is buggy as hell on that chipset.
ok kettenis@
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
vmmap is designed to perform address space randomized allocations,
without letting fragmentation of the address space go through the roof.
Some highlights:
- kernel address space randomization
- proper implementation of guardpages
- roughly 10% system time reduction during kernel build
Tested by alot of people on tech@ and developers.
Theo's machines are still happy.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
are unmasked (so we aren't vt switched).
Delay mutex aquisition until after we've make sure we have to worry
about interrupts.
The ironlake version of this behaves funny for guenther@ with
interaction on docking then restarting X. so has been left out of this
commit until I work out what the hell is going on.
Joint work with deraadt@ been in snaps for weeks
|
| |
|
|
|
|
|
| |
radeon).
We don't use any of them yet, but the CS ioctl is needed for GL on r600
and the definitions are needed for libdrm_radeon
|
| | |
|
| | |
|
| |
|
|
|
| |
DDX, libdrm and mesa. So far the kernel doesn't support them (and will
return an error if inquired) but userland knows how to cope.
|
| |
|
|
|
| |
There's probably something better to be done, but we should at least
boot if this happens now.
|
| | |
|
| | |
|
| |
|
|
| |
ok matthew@ tedu@, also eyeballed by at least krw@ oga@ kettenis@ jsg@
|
| |
|
|
|
|
| |
in pxe.h.
ok deraadt@ sthen@
|
| |
|
|
|
|
|
|
| |
well as < the array length.
ok kettenis@, mikeb@ (who suggested the same fix) and marco@.
"get that fixed" deraadt@.
|
| |
|
|
|
|
|
| |
(https://bugs.freedesktop.org//attachment.cgi?id=41531)
Fixes the heavy rendering errors and crashes that
made the intel driver unusable on my 865G since 4.8 (kernel/6517)
OK matthieu, oga.
|
| |
|
|
|
|
|
| |
a physical address [more precisely, something suitable to pass to pmap_enter()'sphysical address argument].
This allows MI drivers to implement mmap() routines without having to know
about the pmap_phys_address() implementation and #ifdef obfuscation.
|
| | |
|
| |
|
|
| |
heap gap from max data size. nothing else changes yet. ok deraadt
|
| |
|
|
| |
ok oga@
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
happens when waiting for the gpu), the reset function will at the very
least clean out all of our unwanted buffers, which is all we wanted to
do here ourselves. so we can continue with disabling the hardware and
cleaning up then return success.
Fixes a QUIESCE crash for krw when he had a wedged gpu (``it works, ok
krw@''). matthew@ hit a similar thing and this should fix it.
|
| |
|
|
|
|
|
|
|
|
|
| |
when we check for gpu hangs.
This makes catching some situations a bit more reliable so that large
gpu programs don't trigger hangcheck, and also the ring_wait can unhang
the chip for us without needin to do a reset.
Merge of two patches from Chris Wilson ``upstream''. Running this here
for a few days.
|
| |
|
|
|
|
|
|
|
|
| |
in ARB_STATE.
Without this bit, C{2,3,4} power states can't complete render writes
this has been known to cause painful hangs on some 945s where the bios
doesn't set this bit for us.
Code from Dave Airlie ``upstream''.
|
| |
|
|
| |
The sodding bits moved again *sigh*.
|
| | |
|
| |
|
|
|
|
| |
efficient in the case where we are idle.
Idea taken from a commit to the linux kernel by chris wilson.
|