summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/drm (follow)
Commit message (Collapse)AuthorAgeFilesLines
* drm: don't block fb changes for async plane updatesjsg2019-06-112-10/+20
| | | | | | From Helen Koike fbb7e114e6e690c46f170dedd6fd2fb22f241519 in linux 4.19.y/4.19.50 89a4aac0ab0e6f5eea10d7bf4869dd15c3de2cd4 in mainline linux
* drm/i915: Maintain consistent documentation subsection orderingjsg2019-06-112-4/+4
| | | | | | From Jonathan Corbet 6600ec2600d63868efa8c6641375451677469b24 in linux 4.19.y/4.19.50 551bd3368a7b3cfef01edaade8970948d178d40a in mainline linux
* drm/i915/fbc: disable framebuffer compression on GeminiLakejsg2019-06-111-0/+4
| | | | | | From Daniel Drake 360e00e290a355219425b5ea0ca62d9df3261fa1 in linux 4.19.y/4.19.50 396dd8143bdd94bd1c358a228a631c8c895a1126 in mainline linux
* drm/amdgpu: remove ATPX_DGPU_REQ_POWER_FOR_DISPLAYS check when hotplug-injsg2019-06-111-2/+1
| | | | | | From Aaron Liu f3dcc88d531fd21af0c4261896eb23b455499366 in linux 4.19.y/4.19.50 bdb1ccb080dafc1b4224873a5b759ff85a7d1c10 in mainline linux
* drm/radeon: prefer lower reference dividersjsg2019-06-111-2/+2
| | | | | | From Christian Koenig 84c82ab8f133f1c1e27f6b1bafe3f7d8835acc4c in linux 4.19.y/4.19.50 2e26ccb119bde03584be53406bbd22e711b0d6e6 in mainline linux
* drm/amdgpu/psp: move psp version specific function pointers to early_initjsg2019-06-111-9/+10
| | | | | | From Alex Deucher 748a97ec6c1588e3a49e09fe9ca56dcdb7f976b5 in linux 4.19.y/4.19.50 9d6fea5744d6798353f37ac42a8a653a2607ca69 in mainline linux
* drm: add non-desktop quirks to Sensics and OSVR headsets.jsg2019-06-111-0/+6
| | | | | | From Ryan Pavlik 98a8cb0282ab22d0533de34412f2118bf21147e4 in linux 4.19.y/4.19.50 29054230f3e11ea818eccfa7bb4e4b3e89544164 in mainline linux
* drm: add non-desktop quirk for Valve HMDsjsg2019-06-111-0/+19
| | | | | | From Andres Rodriguez 490290b0415f069eb156db50d165ca6a407d47bc in linux 4.19.y/4.19.50 30d62d4453e49f85dd17b2ba60bbb68b6593dba0 in mainline linux
* Use km_alloc() instead of mallocarray() when allocating ttm dma segmentsjsg2019-06-111-7/+10
| | | | to avoid running out of kmem space. Suggested by and ok kettenis@
* drm/lease: Make sure implicit planes are leasedjsg2019-06-102-0/+12
| | | | | | From Daniel Vetter 390a0fd31b02f2f7086af2f3bdb8ae576b9a4b84 in linux 4.19.y/4.19.49 204f640da6914844b3270b41b29c84f6e3b74083 in mainline linux
* Let drm(4) allocate memory without constraints if the hardware supportskettenis2019-06-093-17/+27
| | | | | | | | | 64-bit DMA. Should reduce the pressure on DMA-reachable memory, which is important since there are still cases where the pagedaemon ends up being triggered continuously if we run out of DMA-reachable memory but have plenty of memory left. ok jsg@
* Move a function used as a callback out of a header so there will only bejsg2019-06-042-61/+63
| | | | one function with a single address.
* drm: Wake up next in drm_read() chain if we are forced to putback the eventjsg2019-06-011-0/+1
| | | | | | From Chris Wilson 00734a9e7329acc48e575f697ee4118998c1dac0 in linux 4.19.y/4.19.47 60b801999c48b6c1dd04e653a38e2e613664264e in mainline linux
* drm/amd/display: Set stream->mode_changed when connectors changejsg2019-05-311-2/+1
| | | | | | From Nicholas Kazlauskas 62e79f4c6bc05c32be43e2532fe12c082429af27 in linux 4.19.y/4.19.47 b9952f93cd2cf5fca82b06a8179c0f5f7b769e83 in mainline linux
* drm/amd/display: Fix Divide by 0 in memory calculationsjsg2019-05-311-5/+15
| | | | | | From Murton Liu fc5293ab6c48710eed5df3b40e808e3a3c560e2d in linux 4.19.y/4.19.47 59979bf8be1784ebfc44215031c6c88ca22ae65d in mainline linux
* drm/amd/display: fix releasing planes when exiting odmjsg2019-05-311-2/+4
| | | | | | From Dmytro Laktyushkin 70611b1b81c4ec8ce99d3c00107e89697ec1f495 in linux 4.19.y/4.19.47 bc2193992b00488f5734613ac95b78ef2d2803ab in mainline linux
* drm/amdgpu: fix old fence check in amdgpu_fence_emitjsg2019-05-311-7/+17
| | | | | | From Christian Koenig d8a36f8418034bacef0b5b73c0822f41646d77ba in linux 4.19.y/4.19.47 3d2aca8c8620346abdba96c6300d2c0b90a1d0cc in mainline linux
* remove duplicate page tablejsg2019-05-312-37/+0
| | | | a holdover from when the allocation wasn't done in ttm
* Match radeon_device.c rev 1.2 and return early in amdgpu_device_suspend()jsg2019-05-241-0/+2
| | | | | if "shutdown" is set and the mountroot hook has not run. Otherwise unhibernate causes a uvm fault due to an uninitialised lock.
* drop STUB() calls in paths frequently called when running xorgjsg2019-05-232-2/+0
|
* match radeondrm and switch DRM_INFO message with device id/asic name tojsg2019-05-231-1/+1
| | | | a printf so it shows without DRMDEBUG
* add amdgpu from linux 4.19.44 for recent AMD Radeon partsjsg2019-05-21958-1/+1543019
| | | | | | | committing now so this can be worked on in tree Thanks to the OpenBSD Foundation for sponsoring this work and kettenis@ for helping.
* enable in_irq() based checkjsg2019-05-131-2/+0
|
* add in_irq() in_interrupt() in_task()jsg2019-05-131-0/+14
| | | | | | | in_irq() uses ci_idepth on archs that have it in_interrupt() is the same as in_irq() for now, linux has in_irq() for hard interrupt context and in_interrupt() is also for soft interrupt and nmi context.
* add idr_is_empty()jsg2019-05-131-1/+6
|
* remove unused STUB definitionjsg2019-05-121-6/+0
|
* implement dma_fence_arrayjsg2019-05-112-15/+123
|
* move irq_work bits into irq_work headerjsg2019-05-112-21/+50
|
* Fix idr_get_next() such that idr_for_each_entry() actually works.kettenis2019-05-101-10/+9
| | | | ok jsg@
* set up IFP using the gen3 path on pineviewjsg2019-05-091-4/+3
| | | | | | | Avoids crashes on boot with pineview on chipset flush due to IFP not being initialised. Diagnosed by, tested by and ok ratchov@ ok kettenis@
* Add wait_event_killable(). In linux TASK_KILLABLE only gets fataljsg2019-05-081-1/+7
| | | | | signals, as we don't have an equivalent use PCATCH and check for all signals before and after msleep. Discussed with kettenis@.
* Fix overflow tests such that we can allocate arrays with zero items.kettenis2019-05-082-3/+3
| | | | | | | Linux allows this sillyness and it is needed to make X work on the integrated graphics on the AMD Ryzen 3 PRO 2200GE APU. ok jsg@
* add cmpxchg() with same implementation as atomic_cmpxchg()jsg2019-05-081-1/+2
|
* We're not quite ready yet to actually detach inteldrm(4).kettenis2019-05-081-1/+3
| | | | ok jsg@
* Silence "Uunable to acquire AGP" message since we don't support AGP on allkettenis2019-05-041-0/+2
| | | | AGP-capable chipsets and probably never will.
* drm/i915/bios: assume eDP is present on port A when there is no VBTjsg2019-05-041-0/+1
| | | | | | | | | | From Thomas Preston 6e0473633af059a559ce7b4cbaa51e389c94085e in mainline linux Makes inteldrm(4) work on James Hastings's 'HP Stream Laptop 14-cb1XX' a Gemini Lake system where finding the VBT fails. ok kettenis@
* Improve the interaction between efifb(4), inteldrm(4) and radeondrm(4)kettenis2019-05-047-33/+74
| | | | | | | | | | | | | | | | when we have a serial console by introducing the notion of a "primary" graphics device. The primary graphics device is the one set up and used by firmware (BIOS, UEFI). The goal is to make sure that wsdisplay0 and drm0 reliably attach to the primary graphics device such that X works out of the box even if you have multiple cards or if you are using a serial console. This also fixes the situation where inteldrm(4) or radeondrm(4) would take over the console on UEFI systems even if the kernel was booted with a serial console. ok jsg@
* drm: Fix drm_release() and device unplugjsg2019-05-041-4/+2
| | | | | | From Noralf Tronnes c5eb9a424ebd2d9f9e3cccdf2bfbb415c2921261 in linux 4.19.y/4.19.39 3f04e0a6cfebf48152ac64502346cdc258811f79 in mainline linux
* Revert "drm/i915/fbdev: Actually configure untiled displays"jsg2019-05-031-7/+5
| | | | | | From Dave Airlie 2bc7ce32eb21b094b3ae3e489017fabfe72b4dda in linux 4.19.y/4.19.38 9fa246256e09dc30820524401cdbeeaadee94025 in mainline linux
* Allow non-root users to become master when they are the first to open a drmkettenis2019-05-021-8/+4
| | | | | | | device. This matches what Linux does and is a first step towards running X without setuid or root priviliges. ok jsg@
* Avoid using an expression which resolves to an int in a bool contextjsg2019-05-011-2/+2
| | | | | when a nested macro is called with an expression argument. Prompted by -Wint-in-bool-context with gcc 8. ok kettenis@
* Convert a linux specific test for master in currently disabled code.jsg2019-04-301-1/+1
|
* Add an equivalent test for master in drm_fb_helper_is_bound()jsg2019-04-301-0/+3
| | | | | | | Prevents black screens on hotplugging a new display with Xorg running which required a vt switch for screens to be useable. Reported by various people on misc@. Tested by and ok sthen@
* Make sure only "primary" clients can become master.kettenis2019-04-281-2/+3
| | | | ok jsg@
* drm/ttm: fix out-of-bounds read in ttm_put_pages() v2jsg2019-04-271-2/+3
| | | | | | From Christian Koenig 96800ba9e565ab752774cd88328f96aed28a1436 in linux 4.19.y/4.19.37 a66477b0efe511d98dde3e4aaeb189790e6f0a39 in mainline linux
* Since we now have an attachhook, the actual interrupt handler is installedkettenis2019-04-251-1/+4
| | | | | | | | | | late, after we enable interrupts. If the interrupt pin used for inteldrm(4) is shared with another device, we may end up being called before the actual interrup handler is installed resulting in a null-pointer dereference. Fix this by adding an explicit check that the interrupt handler function pointer has been set. ok matthieu@, jsg@
* Remove file name and line number output from witness(4)visa2019-04-233-51/+33
| | | | | | | | | | | | | Reduce code clutter by removing the file name and line number output from witness(4). Typically it is easy enough to locate offending locks using the stack traces that are shown in lock order conflict reports. Tricky cases can be tracked using sysctl kern.witness.locktrace=1 . This patch additionally removes the witness(4) wrapper for mutexes. Now each mutex implementation has to invoke the WITNESS_*() macros in order to utilize the checker. Discussed with and OK dlg@, OK mpi@
* enable discard_backing_storage() testjsg2019-04-231-4/+0
| | | | ok kettenis@
* Linux code expects to find struct file in fs.h so include sys/file.hjsg2019-04-232-2/+2
| | | | | there. As sys/file.h does not have an include guard don't include it in drm_linux.c which indirectly includes fs.h via drmP.h.
* Timeline lock is used from interrupt context so use IPL_TTY to preventkettenis2019-04-211-1/+1
| | | | "locking against myself" panics.