Thursday, August 01, 2019

Re: AMDGPU in current issue

On Fri, Aug 02, 2019 at 03:11:54AM -0500, Charlie Burnett wrote:
> Hey-
> I'd been messing around with the AMDGPU on current (which I'm aware is very
> experimental) and had very few issues with it using a Vega 56 GPU. I
> recently swapped to another Vega GPU (Radeon VII) and have issues with the
> display not showing anything. Still boots fine, in that I can still enter
> commands (i.e. reboot) so it has to be a display issue. I tried searching
> for the diff where the firmware was added which I'm certain I saw (for Vega
> 20) but can't seem to find it in the commit history. Anyone have a fix for
> it, and if not, who should I talk to if I wanted to help get it working? I
> saw most of the AMDGPU commits have been by @jonathangray if he would be
> the best option.
> Thanks!

vega20 firmware was added when ports/sysutils/firmware/amdgpu was
updated to 20190312.

vega20 is marked as experimental in the version of drm we have, but we
don't currently check the flag on probe like linux does.

The following diff will prevent amdgpu from matching on devices
in the amdgpu_pciidlist table with the AMD_EXP_HW_SUPPORT flag
(currently these are all vega20 ids).

Index: sys/dev/pci/drm/include/drm/drm_drv.h
===================================================================
RCS file: /cvs/src/sys/dev/pci/drm/include/drm/drm_drv.h,v
retrieving revision 1.2
diff -u -p -r1.2 drm_drv.h
--- sys/dev/pci/drm/include/drm/drm_drv.h 25 Jul 2019 05:48:16 -0000 1.2
+++ sys/dev/pci/drm/include/drm/drm_drv.h 2 Aug 2019 03:29:58 -0000
@@ -291,5 +291,7 @@ static inline bool drm_drv_uses_atomic_m
int drm_dev_register(struct drm_device *, unsigned long);
void drm_dev_unregister(struct drm_device *);
int drm_getpciinfo(struct drm_device *, void *, struct drm_file *);
+const struct drm_pcidev *drm_find_description(int, int,
+ const struct drm_pcidev *);

No comments:

Post a Comment