Hi guys,
we are currently working an Freesync and direct scan out from system
memory on AMD APUs in A+A laptops.
On problem we stumbled over is that our display hardware needs to scan
out from uncached system memory and we currently don't have a way to
communicate that through DMA-buf.
For our specific use case at hand we are going to implement something
driver specific, but the question is should we have something more
generic for this?
After all the system memory access pattern is a …
[View More]PCIe extension and as
such something generic.
Regards,
Christian.
[View Less]
https://bugzilla.kernel.org/show_bug.cgi?id=201957
Bug ID: 201957
Summary: amdgpu: ring gfx timeout
Product: Drivers
Version: 2.5
Kernel Version: 4.19.8, 4.20-rc5
Hardware: Intel
OS: Linux
Tree: Mainline
Status: NEW
Severity: blocking
Priority: P1
Component: Video(DRI - non Intel)
Assignee: drivers_video-dri(a)kernel-bugs.osdl.org
Reporter: felix.…
[View More]adrianto(a)gmail.com
Regression: No
Error message:
[Dec 5 22:08] amdgpu 0000:23:00.0: GPU fault detected: 146 0x0000480c for
process yuzu pid 2920 thread yuzu:cs0 pid 2935
[ +0.000005] amdgpu 0000:23:00.0: VM_CONTEXT1_PROTECTION_FAULT_ADDR
0x00000000
[ +0.000002] amdgpu 0000:23:00.0: VM_CONTEXT1_PROTECTION_FAULT_STATUS
0x0604800C
[ +0.000003] amdgpu 0000:23:00.0: VM fault (0x0c, vmid 3, pasid 32770) at page
0, read from 'TC4' (0x54433400) (72)
[ +10.053011] [drm:amdgpu_job_timedout [amdgpu]] *ERROR* ring gfx timeout,
signaled seq=37241, emitted seq=37244
[ +0.000007] [drm] GPU recovery disabled.
How to reproduce the issue:
1. Playing with yuzu-emulator
2. Load Super Mario Odyssey
3. Start new game
4. When Mario is about to jump for the first time after being woken up by
Cappy, this bug must occur.
During the issue, the following occured:
1. Graphic locked up.
2. System can be access through SSH.
System specification:
Debian Sid
Radeon RX 580
I have tried the following combination:
1. Kernel 4.17, 4.18, 4.19, 4.20, drm-next-4.21.wip
2. Mesa 18.2, 18.3, 19.0-development branch
But none of the above combination fixes the issue. Let me know if you need more
information and more testing from me.
--
You are receiving this mail because:
You are watching the assignee of the bug.
[View Less]
https://bugzilla.kernel.org/show_bug.cgi?id=172421
Bug ID: 172421
Summary: radeon: allow to set the TMDS frequency by a special
kernel parameter
Product: Drivers
Version: 2.5
Kernel Version: 4.8.0-rc7+
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: enhancement
Priority: P1
Component: Video(DRI - non Intel)
Assignee: …
[View More]drivers_video-dri(a)kernel-bugs.osdl.org
Reporter: estellnb(a)elstel.org
Regression: No
Despite different claims by ATI in 2016 Radeon R5 230 graphics cards featuring
HDMI, DVI and VGA had originally been sold as 4K-ready up to the year 2015. The
only prove I have for this is a comercial invoice from Nexus Mobile and a
packaging card. As far as I know Radeon R5 230 cards currently sold can still
be run stable and reliable under UltraHD provided that you apply the right
kernel patch (see for the attachement). Unfortunately neither my former
merchant nor ATI have responded about my questions concerning this change in
trade and marketing policy.
My request would now be to integrate the provided patch into the mainline
kernel. It does not change the behaviour of the radeon driver unless you
specify a nonzero value for the radeon.hdmimhz parameter. If you do I have
tested the R5 230 cards I have to run stable and reliably for days. At least
the 2GB variant of this card has largely sufficient resources for proficient
desktop computing under UltraHD including image manipulation in 3840x2160.
While never officially discussed for the radeon driver nouveau is already
implementing a similar parameter called nouveau.hdmimhz since kernel 4.5.x.
Though it thereby becomes possible to specify a hdmimhz that is far above the
cards technical possibilties the nouveau developers I have talked with say that
it would rarely be possible to damage any card by overcloking the TMDS. In deed
I have successfully been overclocking my GeForce 9600M GT to feature 4K/2160p.
Even specifying values considerable higher than 225MHz did not damage my
GeForce 9600M GT though the screen stayed black upon the nouveau driver
initialization. While the Radeon R5 230 works well at 297MHz (as long as you
specify that via radeon.hdmimhz) I have similarly to the GeForce 9600M GT tried
to overclock a Radeon R7 240. It did produce stable images at a higher hdmimhz
like 330 though the HDMI input of my monitor features no more than 30Hz at
3840x2160 (tested with or without a DP-adapter).
While it remains questionable if the provided patch can improve things for
newer Radeon cards I would believe it to be beneficial for some elder cards. At
least it is known to be beneficial for the R5 230 initially marketed as
4K-ready. The according radeon patch provided with this report has so far
already been accepted by the Mageia 6 distribution. Though the attached patch
is for application at the current 4.8.0-rcX+ kernels most of my machines that
rely on it still run with 4.6.0.
--
You are receiving this mail because:
You are watching the assignee of the bug.
[View Less]
From: Rob Clark <robdclark(a)chromium.org>
Conversion to gpu_scheduler, and bonus removal of
drm_gem_object_put_locked()
v2: Fix priority mixup (msm UAPI has lower numeric priority value as
higher priority, inverse of drm/scheduler) and add some comments
in the UAPI header to clarify.
Now that we move active refcnt get into msm_gem_submit, add a
patch to mark all bos busy before pinning, to avoid evicting bos
used in same batch.
Fix bo locking for cmdstream …
[View More]dumping ($debugfs/n/{rd,hangrd})
v3: Add a patch to drop submit bo_list and instead use -EALREADY
to detect errors with same obj appearing multiple times in the
submit ioctl bos table. Otherwise, with struct_mutex locking
dropped, we'd need to move insertion into and removal from
bo_list under the obj lock.
v4: One last small tweak, drop unused wait_queue_head_t in
msm_fence_context
Rob Clark (13):
drm/msm: Docs and misc cleanup
drm/msm: Small submitqueue creation cleanup
drm/msm: drop drm_gem_object_put_locked()
drm: Drop drm_gem_object_put_locked()
drm/msm/submit: Simplify out-fence-fd handling
drm/msm: Consolidate submit bo state
drm/msm: Track "seqno" fences by idr
drm/msm: Return ERR_PTR() from submit_create()
drm/msm: Conversion to drm scheduler
drm/msm: Drop submit bo_list
drm/msm: Drop struct_mutex in submit path
drm/msm: Utilize gpu scheduler priorities
drm/msm/gem: Mark active before pinning
drivers/gpu/drm/drm_gem.c | 22 --
drivers/gpu/drm/msm/Kconfig | 1 +
drivers/gpu/drm/msm/adreno/a5xx_debugfs.c | 4 +-
drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 6 +-
drivers/gpu/drm/msm/adreno/a5xx_power.c | 2 +-
drivers/gpu/drm/msm/adreno/a5xx_preempt.c | 7 +-
drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 12 +-
drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 2 +-
drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c | 4 +-
drivers/gpu/drm/msm/adreno/adreno_gpu.c | 6 +-
drivers/gpu/drm/msm/msm_drv.c | 30 +-
drivers/gpu/drm/msm/msm_fence.c | 42 ---
drivers/gpu/drm/msm/msm_fence.h | 3 -
drivers/gpu/drm/msm/msm_gem.c | 94 +-----
drivers/gpu/drm/msm/msm_gem.h | 47 +--
drivers/gpu/drm/msm/msm_gem_submit.c | 344 ++++++++++++--------
drivers/gpu/drm/msm/msm_gpu.c | 46 +--
drivers/gpu/drm/msm/msm_gpu.h | 78 ++++-
drivers/gpu/drm/msm/msm_rd.c | 6 +-
drivers/gpu/drm/msm/msm_ringbuffer.c | 70 +++-
drivers/gpu/drm/msm/msm_ringbuffer.h | 12 +
drivers/gpu/drm/msm/msm_submitqueue.c | 53 ++-
include/drm/drm_gem.h | 2 -
include/uapi/drm/msm_drm.h | 14 +-
24 files changed, 516 insertions(+), 391 deletions(-)
--
2.31.1
[View Less]
https://bugzilla.kernel.org/show_bug.cgi?id=205089
Bug ID: 205089
Summary: amdgpu : drm:amdgpu_cs_ioctl : Failed to initialize
parser -125
Product: Drivers
Version: 2.5
Kernel Version: 5.3.2
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: Video(DRI - non Intel)
Assignee: drivers_video-dri(a)…
[View More]kernel-bugs.osdl.org
Reporter: maxijac(a)free.fr
Regression: No
Hello,
I am experiencing freezes with kernel 5.3.2 and amdgpu on a Vega 64 card.
This happens during games (I experience it on CS:GO) but it is a bit random and
takes time to eventually trigger.
Once it triggers my dmesg is filled with errors:
[ 9156.537524] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.747176] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.747224] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.883220] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
[ 9156.883285] [drm:amdgpu_cs_ioctl [amdgpu]] *ERROR* Failed to initialize
parser -125!
When it happens, the image hangs and PC is unresponsive. Sometimes I manage to
switch to a TTY, but then the screen is corrupted.
HW:
- AMD Ryzen 2700X CPU
- AMD RX vega 64
SW:
- Kernel 5.3.2
- Mesa 19.2.0
--
You are receiving this mail because:
You are watching the assignee of the bug.
[View Less]
(was: DRM driver for fbdev devices)
This is version 2 of the fbdev conversion helpers. It's more or less a
rewrite of the original patchset.
The fbdev subsystem is considered legacy and will probably be removed at
some point. This would mean the loss of a signifanct number of drivers.
Some of the affected hardware is not in use any longer, but some hardware
is still around and provides good(-enough) framebuffers.
The fbconv helpers allow for running the current DRM stack on top of fbdev
…
[View More]drivers. It's a set of functions that convert between fbdev interfaces and
DRM interfaces. Based on SHMEM and simple KMS helpers, it only offers the
basic functionality of a framebuffer, but should be compatible with most
existing fbdev drivers.
A DRM driver using fbconv helpers consists of
* DRM stub code that calls into fbconv helpers, and
* the original fbdev driver code.
The fbdev driver code has to be modified to register itself with the
stub driver instead of the fbdev core framework. A tutorial on how to use
the helpers is part of this patchset. The resulting driver hybrid can be
refactored into a first-class DRM driver. The fbconv helpers contain a
number of comments, labeled 'DRM porting note', which explain the required
steps.
I tested the current patchset with the following drivers: atyfb, aty128fb,
matroxfb, pm2fb, pm3fb, rivafb, s3fb, savagefb, sisfb, tdfxfb and tridentfb.
With each, I was able to successfully start with fbcon enabled, run weston and
X11. The drivers are available at [1]. For reference, the patchset includes
the Matrox stub driver.
v2:
* rename to fbconv helpers
* rewrite as helper library
* switch over to simple KMS helpers
* switch over to SHMEM
* add documentation
[1] https://gitlab.freedesktop.org/tzimmermann/linux/commits/fbconv-plus-drivers
Thomas Zimmermann (15):
fbdev: Export fb_check_foreignness()
fbdev: Export FBPIXMAPSIZE
drm/simple-kms-helper: Add mode_fixup() to simple display pipe
drm: Add fbconv helper module
drm/fbconv: Add DRM <-> fbdev pixel-format conversion
drm/fbconv: Add mode conversion DRM <-> fbdev
drm/fbconv: Add modesetting infrastructure
drm/fbconv: Add plane-state check and update
drm/fbconv: Mode-setting pipeline enable / disable
drm/fbconv: Reimplement several fbdev interfaces
drm/fbconv: Add helpers for init and cleanup of fb_info structures
drm/fbconv: Add helper documentation
staging: Add mgakms driver
staging/mgakms: Import matroxfb driver source code
staging/mgakms: Update matroxfb driver code for DRM
Documentation/gpu/drm-kms-helpers.rst | 12 +
Documentation/gpu/todo.rst | 15 +
drivers/gpu/drm/Kconfig | 11 +
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/drm_fbconv_helper.c | 2126 +++++++++++++++++
drivers/gpu/drm/drm_simple_kms_helper.c | 15 +
drivers/staging/Kconfig | 2 +
drivers/staging/Makefile | 1 +
drivers/staging/mgakms/Kconfig | 18 +
drivers/staging/mgakms/Makefile | 17 +
drivers/staging/mgakms/g450_pll.c | 539 +++++
drivers/staging/mgakms/g450_pll.h | 13 +
drivers/staging/mgakms/i2c-matroxfb.c | 238 ++
drivers/staging/mgakms/matroxfb_DAC1064.c | 1082 +++++++++
drivers/staging/mgakms/matroxfb_DAC1064.h | 174 ++
drivers/staging/mgakms/matroxfb_Ti3026.c | 746 ++++++
drivers/staging/mgakms/matroxfb_Ti3026.h | 10 +
drivers/staging/mgakms/matroxfb_accel.c | 519 +++++
drivers/staging/mgakms/matroxfb_accel.h | 9 +
drivers/staging/mgakms/matroxfb_base.c | 2592 +++++++++++++++++++++
drivers/staging/mgakms/matroxfb_base.h | 700 ++++++
drivers/staging/mgakms/matroxfb_crtc2.h | 35 +
drivers/staging/mgakms/matroxfb_g450.c | 640 +++++
drivers/staging/mgakms/matroxfb_g450.h | 10 +
drivers/staging/mgakms/matroxfb_maven.h | 21 +
drivers/staging/mgakms/matroxfb_misc.c | 815 +++++++
drivers/staging/mgakms/matroxfb_misc.h | 22 +
drivers/staging/mgakms/mga_device.c | 68 +
drivers/staging/mgakms/mga_device.h | 30 +
drivers/staging/mgakms/mga_drv.c | 129 +
drivers/staging/mgakms/mga_drv.h | 14 +
drivers/video/fbdev/core/fbmem.c | 5 +-
include/drm/drm_fbconv_helper.h | 150 ++
include/drm/drm_simple_kms_helper.h | 43 +
include/linux/fb.h | 3 +
35 files changed, 10822 insertions(+), 3 deletions(-)
create mode 100644 drivers/gpu/drm/drm_fbconv_helper.c
create mode 100644 drivers/staging/mgakms/Kconfig
create mode 100644 drivers/staging/mgakms/Makefile
create mode 100644 drivers/staging/mgakms/g450_pll.c
create mode 100644 drivers/staging/mgakms/g450_pll.h
create mode 100644 drivers/staging/mgakms/i2c-matroxfb.c
create mode 100644 drivers/staging/mgakms/matroxfb_DAC1064.c
create mode 100644 drivers/staging/mgakms/matroxfb_DAC1064.h
create mode 100644 drivers/staging/mgakms/matroxfb_Ti3026.c
create mode 100644 drivers/staging/mgakms/matroxfb_Ti3026.h
create mode 100644 drivers/staging/mgakms/matroxfb_accel.c
create mode 100644 drivers/staging/mgakms/matroxfb_accel.h
create mode 100644 drivers/staging/mgakms/matroxfb_base.c
create mode 100644 drivers/staging/mgakms/matroxfb_base.h
create mode 100644 drivers/staging/mgakms/matroxfb_crtc2.h
create mode 100644 drivers/staging/mgakms/matroxfb_g450.c
create mode 100644 drivers/staging/mgakms/matroxfb_g450.h
create mode 100644 drivers/staging/mgakms/matroxfb_maven.h
create mode 100644 drivers/staging/mgakms/matroxfb_misc.c
create mode 100644 drivers/staging/mgakms/matroxfb_misc.h
create mode 100644 drivers/staging/mgakms/mga_device.c
create mode 100644 drivers/staging/mgakms/mga_device.h
create mode 100644 drivers/staging/mgakms/mga_drv.c
create mode 100644 drivers/staging/mgakms/mga_drv.h
create mode 100644 include/drm/drm_fbconv_helper.h
--
2.23.0
[View Less]