#
1.24 |
|
16-Jan-2024 |
jsg |
update drm to linux 6.6.12
Thanks to the OpenBSD Foundation for sponsoring this work.
|
Revision tags: OPENBSD_7_3_BASE OPENBSD_7_4_BASE
|
#
1.23 |
|
01-Jan-2023 |
jsg |
update drm to linux 6.1.2
new hardware support includes
AMD Raphael, Ryzen 7000 desktop, gfx1036/GC 10.3.6 Mendocino, Ryzen & Athlon 7020 Series mobile APU, gfx1037/GC 10.3.7 Navi 31, gfx1100 dGPU, GC 11.0.0, Radeon RX 7900 XT/XTX gfx1101 dGPU gfx1102 dGPU gfx1103 APU
Thanks to the OpenBSD Foundation for sponsoring this work.
|
Revision tags: OPENBSD_7_1_BASE OPENBSD_7_2_BASE
|
#
1.22 |
|
14-Jan-2022 |
jsg |
update drm to linux 5.15.14
new hardware support includes
Intel ehl/Elkhart Lake (embedded) jsl/Jasper Lake (atom) rkl/Rocket Lake (desktop)
AMD van gogh APU (gfx1033) yellow carp / rembrandt APU (gfx1035?) Ryzen 6000 APU navy flounder / navi 22 (gfx1031) RX 6700, RX 6700 XT, RX 6700M, RX 6800M, RX 6850M XT dimgrey cavefish / navi 23 (gfx1032) Pro W6600, Pro W6600M, RX 6600, RX 6600 XT, RX 6600M, RX 6600S, RX 6650M, RX 6650M XT, RX 6700S, RX 6800S beige goby / navi 24 (gfx1034) RX 6500 XT, RX 6400, RX 6500M, RX 6300M
Thanks to the OpenBSD Foundation for sponsoring this work niklas@ for helping with ttm and amdgpu and patrick@ for adapting rockchip drm.
|
Revision tags: OPENBSD_7_0_BASE
|
#
1.21 |
|
07-Jul-2021 |
jsg |
update drm to linux 5.10.47
hardware support changes include inteldrm: better support for tiger lake amdgpu: support for navi12, navi21 "sienna_cichlid", arcturus amdgpu: support for cezanne "green sardine" ryzen 5000 apu
Thanks to the OpenBSD Foundation for sponsoring this work, patrick@ for helping adapt rockchip drm, kettenis@ and mpi@ for uvm discussions and various testers.
|
Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE
|
#
1.20 |
|
08-Jun-2020 |
jsg |
update drm to linux 5.7
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.
|
Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
|
#
1.19 |
|
14-Apr-2019 |
jsg |
Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 to 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.
|
Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
#
1.23 |
|
01-Jan-2023 |
jsg |
update drm to linux 6.1.2
new hardware support includes
AMD Raphael, Ryzen 7000 desktop, gfx1036/GC 10.3.6 Mendocino, Ryzen & Athlon 7020 Series mobile APU, gfx1037/GC 10.3.7 Navi 31, gfx1100 dGPU, GC 11.0.0, Radeon RX 7900 XT/XTX gfx1101 dGPU gfx1102 dGPU gfx1103 APU
Thanks to the OpenBSD Foundation for sponsoring this work.
|
Revision tags: OPENBSD_7_1_BASE OPENBSD_7_2_BASE
|
#
1.22 |
|
14-Jan-2022 |
jsg |
update drm to linux 5.15.14
new hardware support includes
Intel ehl/Elkhart Lake (embedded) jsl/Jasper Lake (atom) rkl/Rocket Lake (desktop)
AMD van gogh APU (gfx1033) yellow carp / rembrandt APU (gfx1035?) Ryzen 6000 APU navy flounder / navi 22 (gfx1031) RX 6700, RX 6700 XT, RX 6700M, RX 6800M, RX 6850M XT dimgrey cavefish / navi 23 (gfx1032) Pro W6600, Pro W6600M, RX 6600, RX 6600 XT, RX 6600M, RX 6600S, RX 6650M, RX 6650M XT, RX 6700S, RX 6800S beige goby / navi 24 (gfx1034) RX 6500 XT, RX 6400, RX 6500M, RX 6300M
Thanks to the OpenBSD Foundation for sponsoring this work niklas@ for helping with ttm and amdgpu and patrick@ for adapting rockchip drm.
|
Revision tags: OPENBSD_7_0_BASE
|
#
1.21 |
|
07-Jul-2021 |
jsg |
update drm to linux 5.10.47
hardware support changes include inteldrm: better support for tiger lake amdgpu: support for navi12, navi21 "sienna_cichlid", arcturus amdgpu: support for cezanne "green sardine" ryzen 5000 apu
Thanks to the OpenBSD Foundation for sponsoring this work, patrick@ for helping adapt rockchip drm, kettenis@ and mpi@ for uvm discussions and various testers.
|
Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE
|
#
1.20 |
|
08-Jun-2020 |
jsg |
update drm to linux 5.7
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.
|
Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
|
#
1.19 |
|
14-Apr-2019 |
jsg |
Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 to 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.
|
Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
#
1.22 |
|
14-Jan-2022 |
jsg |
update drm to linux 5.15.14
new hardware support includes
Intel ehl/Elkhart Lake (embedded) jsl/Jasper Lake (atom) rkl/Rocket Lake (desktop)
AMD van gogh APU (gfx1033) yellow carp / rembrandt APU (gfx1035?) Ryzen 6000 APU navy flounder / navi 22 (gfx1031) RX 6700, RX 6700 XT, RX 6700M, RX 6800M, RX 6850M XT dimgrey cavefish / navi 23 (gfx1032) Pro W6600, Pro W6600M, RX 6600, RX 6600 XT, RX 6600M, RX 6600S, RX 6650M, RX 6650M XT, RX 6700S, RX 6800S beige goby / navi 24 (gfx1034) RX 6500 XT, RX 6400, RX 6500M, RX 6300M
Thanks to the OpenBSD Foundation for sponsoring this work niklas@ for helping with ttm and amdgpu and patrick@ for adapting rockchip drm.
|
Revision tags: OPENBSD_7_0_BASE
|
#
1.21 |
|
07-Jul-2021 |
jsg |
update drm to linux 5.10.47
hardware support changes include inteldrm: better support for tiger lake amdgpu: support for navi12, navi21 "sienna_cichlid", arcturus amdgpu: support for cezanne "green sardine" ryzen 5000 apu
Thanks to the OpenBSD Foundation for sponsoring this work, patrick@ for helping adapt rockchip drm, kettenis@ and mpi@ for uvm discussions and various testers.
|
Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE
|
#
1.20 |
|
08-Jun-2020 |
jsg |
update drm to linux 5.7
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.
|
Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
|
#
1.19 |
|
14-Apr-2019 |
jsg |
Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 to 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.
|
Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
#
1.21 |
|
07-Jul-2021 |
jsg |
update drm to linux 5.10.47
hardware support changes include inteldrm: better support for tiger lake amdgpu: support for navi12, navi21 "sienna_cichlid", arcturus amdgpu: support for cezanne "green sardine" ryzen 5000 apu
Thanks to the OpenBSD Foundation for sponsoring this work, patrick@ for helping adapt rockchip drm, kettenis@ and mpi@ for uvm discussions and various testers.
|
Revision tags: OPENBSD_6_8_BASE OPENBSD_6_9_BASE
|
#
1.20 |
|
08-Jun-2020 |
jsg |
update drm to linux 5.7
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.
|
Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
|
#
1.19 |
|
14-Apr-2019 |
jsg |
Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 to 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.
|
Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
#
1.20 |
|
08-Jun-2020 |
jsg |
update drm to linux 5.7
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.
|
Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE
|
#
1.19 |
|
14-Apr-2019 |
jsg |
Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 to 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.
|
Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
#
1.19 |
|
14-Apr-2019 |
jsg |
Update shared drm code, inteldrm(4) and radeondrm(4) from linux 4.4 to 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.
|
Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
#
1.18 |
|
25-Apr-2018 |
jsg |
update ttm and radeondrm(4) to Linux 4.4.129
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.
|
#
1.17 |
|
20-Apr-2018 |
deraadt |
oops, snapshot tests not ready yet
|
#
1.16 |
|
20-Apr-2018 |
deraadt |
sync
|
Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|
Revision tags: OPENBSD_6_2_BASE
|
#
1.15 |
|
01-Jul-2017 |
kettenis |
Update inteldrm(4) to code based on Linux 4.4.70. This brings us support for Skylake and Cherryview and better support for Broadwell and Valleyview. Also adds MST support. Some tweaks to the TTM code and radeondrm(4) to keep it working with the updated generic DRM code needed for inteldrm(4).
Tested by many.
|
Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
|
#
1.14 |
|
23-Sep-2015 |
kettenis |
Update inteldrm to the code from Linux 3.14.52 (which corresponds to commit 48f8f36a6c8018c2b36ea207aaf68ef5326c5075 on the linux-3.14.y branch of the linux-stable tree). This brings preliminary support for the GPU on Intel's Broadwell CPUs. Don't expect these to work perfectly yet. There are some remaining issues with older hardware as well, but no significant regressions have been uncovered.
This also updates some of drm core code. The radeondrm code remains based on Linux 3.8 with some minimal canges to adjust to changes in the core drm APIs.
Joint effort with jsg@, who did the initial update of the relevant drm core bits. Committing this early to make sure it gets more testing and make it possible for others to help getting the remaining wrinkles straightened out.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.13 |
|
11-Jul-2015 |
jsg |
Make use of recent drm_linux.h additions to further reduce the diff to linux.
ok kettenis@
|
#
1.12 |
|
18-Apr-2015 |
jsg |
another round of reducing the diff to linux
|
#
1.11 |
|
06-Apr-2015 |
jsg |
add back some more static use to reduce the diff to linux
|
Revision tags: OPENBSD_5_7_BASE
|
#
1.10 |
|
10-Feb-2015 |
jsg |
switch most rwlock calls back to their linux equivalents
|
#
1.9 |
|
10-Feb-2015 |
jsg |
Remove DRM_LOCK macros, rename dev_lock to struct_mutex and directly call linux style lock functions where these macros were used.
|
#
1.8 |
|
27-Jan-2015 |
dlg |
remove the second void * argument on tasks.
when workqs were introduced, we provided a second argument so you could pass a thing and some context to work on it in. there were very few things that took advantage of the second argument, so when i introduced pools i suggested removing it. since tasks were meant to replace workqs, it was requested that we keep the second argument to make porting from workqs to tasks easier.
now that workqs are gone, i had a look at the use of the second argument again and found only one good use of it (vdsp(4) on sparc64 if you're interested) and a tiny handful of questionable uses. the vast majority of tasks only used a single argument. i have since modified all tasks that used two args to only use one, so now we can remove the second argument.
so this is a mechanical change. all tasks only passed NULL as their second argument, so we can just remove it.
ok krw@
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE
|
#
1.7 |
|
15-Feb-2014 |
jsg |
radeon/pm: Guard access to rdev->pm.power_state array
From Michel Daenzer 0a44540222a9693995ac4d188f9dbaeb394d00bf in ubuntu 3.8 370169516e736edad3b3c5aa49858058f8b55195 in mainline linux
|
#
1.6 |
|
09-Feb-2014 |
jsg |
use linux style memory allocations in radeon
|
#
1.5 |
|
11-Nov-2013 |
dlg |
replace things like "start + interval > ticks" with "ticks - start > interval" because the latter copes with ticks wrapping.
pointed out by guenther@
|
#
1.4 |
|
30-Oct-2013 |
dlg |
deprecate taskq_systq() and replace it with extern struct taskq *const systq defined in task.h
this reduces the cost of using the system taskq and looks less ugly.
requested by and ok kettenis@
|
#
1.3 |
|
29-Oct-2013 |
jsg |
Move most of the uses of workqs in drm to the new task/taskq api. 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@
|
#
1.2 |
|
26-Aug-2013 |
jsg |
remove an uneeded printf
|
#
1.1 |
|
12-Aug-2013 |
jsg |
Add a port of the TTM and Radeon DRM code from Linux 3.8.13. 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.
|