summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/drm/radeon (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add barriers in the IO helper functions just like what was done for amdgpu(4).kettenis2020-11-211-6/+22
| | | | ok patrick@, jsg@
* Silence "using MMIO for ATOM IIO" error message, since that is normal onkettenis2020-10-291-0/+2
| | | | | | POWER9 machines. ok jsg@
* Use the function from <linux/io.h> for all "Memory Space" IO. This reduceskettenis2020-10-285-24/+21
| | | | | | | the diffs to Linux and makes sure we use memory barriers in the same way as Linux does. ok jsg@ (who added the doorbell changes)
* Make mapping the "I/O Space" BAR optional. POWER9 systems don't supportkettenis2020-10-251-9/+6
| | | | | | | "I/O Space" on their PCIe host bridges and for most (all) Radeon variants there is an alternative method to access the relevant registers. ok jsg@
* change drm_vma function arguments to take struct drm_file *jsg2020-10-211-1/+2
| | | | | reduces the diff to linux 5.7.y ok kettenis@
* don't print pci ids when radeondrm attachesjsg2020-10-151-1/+2
|
* Add the wsioctl() bits to radeondrm(4) so that abl(4) can be controlledmglocker2020-09-151-0/+9
| | | | | | through the wsconsctl(8) 'display.brightness' variable. ok kettenis@
* bring back local #undef DEBUG changes lost in drm 5.7 updatejsg2020-08-271-0/+4
| | | | fixes errors building with option DEBUG reported by phessler@
* drm/radeon: fix array out-of-bounds read and write issuesjsg2020-08-221-1/+1
| | | | | | From Colin Ian King 519fabb88d7fdcea200a438d85b338244f4e905a in linux 5.7.y/5.7.16 7ee78aff9de13d5dccba133f4a0de5367194b243 in mainline linux
* drm/radeon: disable AGP by defaultjsg2020-08-221-5/+0
| | | | | | From Christian Koenig b0ecffd8339d894d21d9e5b48996ea67f84522c6 in linux 5.7.y/5.7.16 ba806f98f868ce107aa9c453fef751de9980e4af in mainline linux
* drm/radeon: Fix reference count leaks caused by pm_runtime_get_syncjsg2020-08-223-3/+9
| | | | | | From Aditya Pakki f097e7aecaaa4e9b2135eb10c86abdb7871cd2ec in linux 5.7.y/5.7.16 9fb10671011143d15b6b40d6d5fa9c52c57e9d63 in mainline linux
* skip trying to read disabled bios on RV610jsg2020-08-121-0/+10
| | | | | | | | | | | | | | | | Reading the disabled bios on two Dell machines with RV610 passes initial checks but later fails atombios specific checks. This occurs when running amd64 but not i386. Returning early when reading the disabled bios will result in calling radeon_read_platform_bios() and using the bios at 0xc0000 which works for both systems this was reported for semarie@ on Dell OptiPlex 755 RV610 0x1002:0x94C3 0x1028:0x0402 0x00 Andy Bradford on Dell DXP051 RV610 0x1002:0x94C1 0x1028:0x0D02 0x00
* drm/radeon: fix double freejsg2020-07-161-4/+3
| | | | | | From Tom Rix 67e9648f20524ff6824ebeb26afea45f7d9c300d in linux 5.7.y/5.7.9 41855a898650803e24b284173354cc3e44d07725 in mainline linux
* drm/radeon: fix fb_div check in ni_init_smc_spll_table()jsg2020-07-021-1/+1
| | | | | | From Denis Efremov 02e8880ca700a561947b0a136ddf749df6b8f9fa in linux 5.7.y/5.7.7 35f760b44b1b9cb16a306bdcc7220fbbf78c4789 in mainline linux
* remove now unused varjsg2020-06-291-1/+0
| | | | found the hard way by deraadt@ on sparc64
* set fb_set_par and have register_framebuffer() do initial modesetjsg2020-06-282-4/+5
|
* update drm to linux 5.7jsg2020-06-08123-2771/+1374
| | | | | | | | | | 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.
* change wsdisplay attribute type from long to uint32_tjsg2020-05-251-3/+3
| | | | | | | | miod explained it was initially a long as it was thought drivers may need to allocate storage but in practice they don't need more than 32 bits for an attribute. suggested and reviewed by miod@
* rename wsdisplay alloc_attr() to pack_attr()jsg2020-05-251-1/+1
| | | | | | | | Suggested by John Carmack. miod agrees a rename would make sense and explained it was initially thought drivers may need to allocate storage but in practice they don't need more than 32 bits for an attribute. ok mpi@
* Fix loop condition in sparc64-specific radeondrm_setcolor()jca2020-04-141-2/+2
| | | | Spotted with clang -Wno-error=uninitialized. ok jsg@
* radeon: insert 10ms sleep in dce5_crtc_load_lutjsg2020-02-271-0/+2
| | | | | | From Daniel Vetter f1b8859e8db0c47184ad383720a086ee7f892a59 in linux 4.19.y/4.19.106 ec3d65082d7dabad6fa8f66a8ef166f2d522d6b2 in mainline linux
* drm/radeon: fix bad DMA from INTERRUPT_CNTL2jsg2020-01-283-6/+6
| | | | | | From Sam Bobroff 6fab6dbff4a5843b8f44f87a2454450961c1f0bc in linux 4.19.y/4.19.99 62d91dd2851e8ae2ca552f1b090a3575a4edf759 in mainline linux
* WSDISPLAYIO_GTYPE is u_int not intjsg2019-12-251-1/+1
|
* drm/radeon: fix r1xx/r2xx register checker for POT texturesjsg2019-12-222-4/+4
| | | | | | From Alex Deucher 33c1d3bc1d5e1062844a31acc85eb50f9447f006 in linux 4.19.y/4.19.91 008037d4d972c9c47b273e40e52ae34f9d9e33e7 in mainline linux
* drm/radeon: fix si_enable_smc_cac() failed issuejsg2019-11-131-0/+1
| | | | | | From Alex Deucher e3fdd0c1a3d0d15d3367216e60304ca28475f66b in linux 4.19.y/4.19.84 2c409ba81be25516afe05ae27a4a15da01740b01 in mainline linux
* Revert "drm/radeon: Fix EEH during kexec"jsg2019-10-301-8/+0
| | | | | | From Alex Deucher 0933b0db7fb239be01270b25bf73884870d8c1e6 in linux 4.19.y/4.19.81 8d13c187c42e110625d60094668a8f778c092879 in mainline linux
* drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passedjsg2019-10-132-25/+31
| | | | | | From Hans de Goede 1b155b4fe8b4b581d70221642be63c9fc6da4f6e in linux 4.19.y/4.19.79 9dbc88d013b79c62bd845cb9e7c0256e660967c5 in mainline linux
* gpu: drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property()jsg2019-10-081-1/+1
| | | | | | From Jia-Ju Bai 0936c46139cb9c4f9f2b1737a4e84d26af852fd8 in linux 4.19.y/4.19.78 f3eb9b8f67bc28783eddc142ad805ebdc53d6339 in mainline linux
* drm/radeon: Fix EEH during kexecjsg2019-10-081-0/+8
| | | | | | From KyleMahlkuch 6e03bca91f8e99a2039659812efb113cae566459 in linux 4.19.y/4.19.78 6f7fe9a93e6c09bf988c5059403f5f88e17e21e6 in mainline linux
* define CONFIG_X86* in autoconf.h as needed and reduce diff to linuxjsg2019-08-192-3/+3
| | | | ok kettenis@
* Implement a few Linux compat ACPI interfaces and enable the ACPI supportkettenis2019-08-181-8/+0
| | | | | | code in radeon(4) and amdgpu(4). ok jsg@
* 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
* remove duplicate page tablejsg2019-05-311-18/+0
| | | | a holdover from when the allocation wasn't done in ttm
* 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.
* Improve the interaction between efifb(4), inteldrm(4) and radeondrm(4)kettenis2019-05-042-11/+19
| | | | | | | | | | | | | | | | 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@
* Adapt radeondrm_detach_kms() to struct drm_device being split fromjsg2019-04-201-1/+1
| | | | | | | drm softc. Avoids uvm_fault() when firmware is missing and radeondrm is forcibly detached. Reported by Mihai Popescu on misc@
* Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 tojsg2019-04-14130-8425/+5021
| | | | | | | | | | | | | | | | | | | 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.
* Correct access to doorbell. In radeondrm this is only present and usedjsg2019-04-031-2/+2
| | | | | | | with gfx7/sea islands hardware. Fixes ring 2 test failure on carrizo-l/mullins. Problem found by kettenis@ in a different part of the drm 4.19 tree.
* Use efifb_stolen() to prevent radeondrm from using aperture memoryjsg2019-01-101-1/+16
| | | | | overlapping the framebuffer. Prompted by ring tests failing. Diagnosed, fix suggested by and ok kettenis@
* Add back part of the changes to takeover the firmware framebuffer onjsg2018-11-141-0/+23
| | | | sparc64 lost in the update to linux 4.4. Compile tested only.
* Setup radeondrm burner task. Missed when updating to linux 4.4.jsg2018-11-141-0/+5
| | | | Fixes wsconsctl display.screen_off panic reported by Dmitry Murti.
* Add SPDX-License-Identifier tags from linux git master to drm filesjsg2018-11-016-0/+6
| | | | which previously had no license text.
* drm/drivers: add support for using the arch wc mapping API.jsg2018-09-131-0/+7
| | | | | | From Dave Airlie c59fdc4cfbda52ce081c59540762185d765c3369 in linux 4.4.y/4.4.155 7cf321d118a825c1541b43ca45294126fd474efa in mainline linux
* Add an interface that allows drivers to claim a framebuffer and checkkettenis2018-08-271-0/+5
| | | | | | | | | whether another driver has already claimed a framebuffer. Use this in radeondrm(4) and simplefb(4) to prevent the latter from attaching if radeondrm(4) is attached to the hardware that provides the framebuffer set up by the firmware. ok mlarkin@
* Use __HAVE_ACPI to decide whether ACPI support should be considered.kettenis2018-08-251-1/+4
| | | | ok deraadt@, krw@, jca@
* Allocate framebuffer PCI BAR if left uninitialized by firmware.kettenis2018-08-241-0/+20
| | | | ok mlarkin@
* drm/radeon: fix mode_valid's return typejsg2018-08-201-5/+5
| | | | | | From Luc Van Oostenryck 1f5e33948005cd1b720fd58717bb971109432875 in linux 4.4.y/4.4.146 7a47f20eb1fb8fa8d7a8fe3a4fd8c721f04c2174 in mainline linux
* Implement DRI3/prime support. This allows graphics buffers to be passedkettenis2018-06-252-1/+7
| | | | | | | | between processes using file descriptors. This provides an alternative to eporting them with guesable 32-bit IDs. This implementation does not (yet) allow sharing of graphics buffers between GPUs. ok mpi@, visa@
* Add back a local change to prevent interrupt handlers claiming anjsg2018-05-234-0/+8
| | | | | | | | 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.
* use rasops scrollback with radeondrm as welljsg2018-05-031-0/+1
|