summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/drm/radeon/si.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* update drm to linux 5.7jsg2020-06-081-46/+75
| | | | | | | | | | adds kernel support for amdgpu: vega20, raven2, renoir, navi10, navi14 inteldrm: icelake, tigerlake Thanks to the OpenBSD Foundation for sponsoring this work, kettenis@ for helping, patrick@ for helping adapt rockchip drm and many developers for testing.
* drm/radeon: fix bad DMA from INTERRUPT_CNTL2jsg2020-01-281-2/+2
| | | | | | From Sam Bobroff 6fab6dbff4a5843b8f44f87a2454450961c1f0bc in linux 4.19.y/4.19.99 62d91dd2851e8ae2ca552f1b090a3575a4edf759 in mainline linux
* Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 tojsg2019-04-141-1200/+866
| | | | | | | | | | | | | | | | | | | linux 4.19.34. Adds support for more Intel hardware: Broxton/Apollo Lake (was is_preliminary in 4.4) Amber Lake (another Kaby Lake refresh) Gemini Lake Coffee Lake Whiskey Lake Cannon Lake (though no hardware with Intel graphics ever shipped) Ice Lake (alpha support, hardware not released) This does not add support for new radeon hardware on the AMD side as newer radeons have a different kernel driver (amdgpu). Thanks to the OpenBSD Foundation for sponsoring this work, kettenis@ for helping and a bunch of other developers for testing.
* Add back a local change to prevent interrupt handlers claiming anjsg2018-05-231-0/+2
| | | | | | | | interrupt when it is shared by other devices. Fixes a regression reported by nigel@ where USB stopped working after the radeondrm update on a machine where ohci shared an interrupt with radeondrm.
* update ttm and radeondrm(4) to Linux 4.4.129jsg2018-04-251-836/+4292
| | | | | | | Compared to the previous Linux 3.8 based port this adds support for KAVERI/KABINI/MULLINS APUs and OLAND/BONAIRE/HAINAN/HAWAII GPUs. Thanks to the OpenBSD Foundation for sponsoring this work.
* oops, snapshot tests not ready yetderaadt2018-04-201-4292/+836
|
* syncderaadt2018-04-201-836/+4292
|
* Fix copy/paste error, CID 1453558.mpi2017-08-121-2/+2
| | | | ok kettenis@
* switch back from howmany() to DIV_ROUND_UP()jsg2015-04-061-2/+2
|
* add back some more static use to reduce the diff to linuxjsg2015-04-061-10/+3
|
* add and use macros for wake_up/wake_up_all/wake_up_all_lockedjsg2015-04-061-7/+7
|
* switch back to IRQ_NONE/IRQ_HANDLEDjsg2015-02-121-5/+5
|
* Add and use macros for linux memory barriers. Fix the call injsg2015-02-121-2/+2
| | | | i915_gem_object_flush_fence() to be mb() not wmb() while here.
* Switch most printf style functions calls back to linux function namesjsg2015-02-111-4/+2
| | | | and move DRM_INFO/pr_info/dev_info messages under DRMDEBUG.
* switch most rwlock calls back to their linux equivalentsjsg2015-02-101-3/+3
|
* add a size argument to free. will be used soon, but for now default to 0.tedu2014-07-121-6/+6
| | | | after discussions with beck deraadt kettenis.
* drm/radeon/si: make sure mc ucode is loaded before checking the sizejsg2014-06-211-2/+4
| | | | | | From Alex Deucher eed35bff1fe05f3a32989ace86107a1402f18537 in ubuntu 3.8 8c79bae6a30f606b7a4e17c994bc5f72f8fdaf11 in mainline linux
* drm/radeon: expose render backend mask to the userspacejsg2014-02-101-1/+3
| | | | | | From Marek Olsak 413f46c51b173d8a46135d33fa3adef05f2b1a7e in ubuntu 3.8 439a1cfffe2c1a06e5a6394ccd5d18a8e89b15d3 in mainline linux
* drm/radeon: fix render backend setup for SI and CIKjsg2014-02-101-6/+6
| | | | | | From Marek Olsak 88aa6194df73e8dff9f2a1ee47d2775df3d99411 in ubuntu 3.8 9fadb352ed73edd7801a280b552d33a6040c8721 in mainline linux
* drm/radeon/si: Add support for CP DMA to CS checker for compute v2jsg2014-02-101-46/+62
| | | | | | From Tom Stellard 0f5c67667c1914c3f133bc2d43199b6d01bfde28 in ubuntu 3.8 e5b9e7503eb1f4884efa3b321d3cc47806779202 in mainline linux
* radeon: Fix system hang issue when using KMS with older cardsjsg2014-02-091-5/+7
| | | | | | From Adis Hamzadis c9b986fd9f606cd00492c3c9e95926c654f4e04f in ubuntu 3.8 e49f3959a96dc279860af7e86e6dbcfda50580a5 in mainline linux
* use linux style memory allocations in radeonjsg2014-02-091-3/+2
|
* drm/radeon: fixup bad vram size on SIjsg2014-01-241-3/+10
| | | | | | From Alex Deucher 7e3f2ed899128187ecc9ab7573e966d8a5afc664 in ubuntu 3.8 0ca223b029a261e82fb2f50c52eb85d510f4260e in mainline linux
* drm/radeon: Fix VRAM size calculation for VRAM >= 4GBjsg2014-01-241-3/+3
| | | | | | From Niels Ole Salscheider 091a581a030f3c8c6515fb21a3f23271a86c4107 in ubuntu 3.8 fc986034540102cd090237bf3f70262e1ae80d9c in mainline linux
* drm/radeon: fix typo in cu_per_sh on verdejsg2014-01-241-2/+2
| | | | | | From Alex Deucher f249bb666572281c47f85da90b8a27856fc5f9ec in ubuntu 3.8 468ef1a58c9268ac9709350bf95eaf1c22a69f29 in mainline linux
* deprecate taskq_systq() and replace it with extern struct taskqdlg2013-10-301-2/+2
| | | | | | | | *const systq defined in task.h this reduces the cost of using the system taskq and looks less ugly. requested by and ok kettenis@
* Move most of the uses of workqs in drm to the new task/taskq api.jsg2013-10-291-3/+2
| | | | | | | | | Prevents unintended multiple additions to workqs that was causing hangs on radeon, and lets us remove tasks more closely matching the behaviour of the original linux code. ok kettenis@ cause of the ttm/radeon hangs debugged by claudio@ and kettenis@
* drm/radeon: update line buffer allocation for dce6jsg2013-09-011-5/+20
| | | | | | | | | | | | | | | We need to allocate line buffer to each display when setting up the watermarks. Failure to do so can lead to a blank screen. This fixes blank screen problems on dce6 asics. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=64850 from a proposed Linux patch by Alex Deucher of AMD. Fixes problems with multiple displays on pitcairn reported by Alexis de BRUYN.
* While we forceably detach radeondrm on fatal error in initjsg2013-08-181-2/+3
| | | | | | | | | | non fatal errors with >= r600 could result in an unuseable system. Avoid this by always programming the MC on startup. Patch from Alex Deucher in Linux based on a change from kettenis to program the MC on failure to load firmware for cayman/aruba. ok kettenis@
* Add a port of the TTM and Radeon DRM code from Linux 3.8.13.jsg2013-08-121-0/+4412
Includes kernel modesetting, framebuffer console and support for newer hardware. Firmware needs to be present for acceleration and in some cases modesetting to work. It can be installed via fw_update or manually via pkg_add. With lots of help from kettenis@ some macppc bits from mpi@ and some ttm refcount/queue bits from FreeBSD. Thanks to M:Tier and the OpenBSD Foundation for sponsoring this work.