freebsd / drm-kmod-firmware

KMS firmware components for graphics/kms-firmware port
Other
22 stars 17 forks source link

Update Skylake GuC for drm-v4.16 and drm-v5.0 #8

Closed jbeich closed 4 years ago

jbeich commented 4 years ago

Tested compat.linuxkpi.i915_enable_guc=3 (default is 0) on drm-v5.0 with HD530 (aka 0x1912): VT switch, OpenGL, VAAPI (including hybrid VP9 decode), Vulkan, Wayland still work fine. Note, Skylake GuC v6.1 is still requried for drm-v4.11 (on FreeBSD 11.*) due to lack of https://github.com/freebsddesktop/kms-drm/commit/38cfed80e916.

dmesg:

@@ -26,26 +26,19 @@ Failed to add WC MTRR for [0xb0000000-0xbfffffff]: -22
 [drm]   - kern.vt.fb.modes.HDMI-A-3
 [drm]   - kern.vt.fb.default_mode
 pm_runtime_get_if_in_use not implemented -- see your local kernel hacker
-drmn1: failed to link firmware kernel module with mapped name: i915_skl_guc_ver9_33_bin
-i915/skl_guc_ver9_33.bin: could not load firmware image, error 2
 drmn1: successfully loaded firmware image with name: i915/skl_dmc_ver1_27.bin
 [drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27)
-i915/skl_guc_ver9_33.bin: could not load firmware image, error 2
-drmn1: failed to load firmware with name: i915/skl_guc_ver9_33.bin
-[drm] GuC: Failed to fetch firmware i915/skl_guc_ver9_33.bin (error -2)
-[drm] GuC: Firmware can be downloaded from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
+drmn1: successfully loaded firmware image with name: i915/skl_guc_ver9_33.bin
 drmn1: successfully loaded firmware image with name: i915/skl_huc_ver01_07.bin
 sched_setscheduler_nocheck not implemented -- see your local kernel hacker
 [drm] HuC: Loaded firmware i915/skl_huc_ver01_07.bin (version 1.7)
-drmn1: GuC initialization failed -8
-[drm ERROR :i915_gem_init_hw] Enabling uc failed (-8)
-check_move_unevictable_pages not implemented -- see your local kernel hacker
-WARN_ON(fbc->crtc->active)
-WARNING !list_empty(&dev->mode_config.connector_list) failed at /usr/ports/graphics/drm-devel-kmod/work/kms-drm-9353021/drivers/gpu/drm/drm_mode_config.c:455
-[drm ERROR :drm_mode_config_cleanup] connector DP-1 leaked!
-WARN_ON(({ const __typeof(((struct intel_plane_state *)0)->base) *__p = (state); (struct intel_plane_state *)((uintptr_t)__p - __builtin_offsetof(struct intel_plane_state, base)); })->vma)WARN_ON(i915_vma_unbind(vma))Memory manager not clean during takedown.
-Memory manager not clean during takedown.
-WARN_ON(dev_priv->mm.object_count)
-Freed UMA keg (i915_vma) was not empty (6 items).  Lost 1 pages of memory.
-Freed UMA keg (drm_i915_gem_object) was not empty (4 items).  Lost 1 pages of memory.
-drmn1: 0xfffffe013d952388Vdrmn1: Please file a bug at https://bugs.freedesktop.org/enter_bug.cgi?product=DRI against DRM/Intel providing the dmesg log by booting with drm.debug=0xfdevice_attach: drmn1 attach returned 8
+[drm] GuC: Loaded firmware i915/skl_guc_ver9_33.bin (version 9.33)
+drmn1: GuC firmware version 9.33
+drmn1: GuC submission enabled
+drmn1: HuC enabled
+register_oom_notifier not implemented -- see your local kernel hacker
+[drm] Initialized i915 1.6.0 20181204 for drmn1 on minor 0
+register_acpi_notifier not implemented -- see your local kernel hacker
+async_schedule is dodgy -- see your local kernel hacker
+pm_runtime_set_autosuspend_delay not implemented -- see your local kernel hacker
+__pm_runtime_use_autosuspend not implemented -- see your local kernel hacker

port:

Index: graphics/gpu-firmware-kmod/Makefile
===================================================================
--- graphics/gpu-firmware-kmod/Makefile (revision 521577)
+++ graphics/gpu-firmware-kmod/Makefile (working copy)
@@ -2,7 +2,7 @@
 # $FreeBSD$

 PORTNAME=  gpu-firmware-kmod
-PORTVERSION=   g20191015
+PORTVERSION=   g20200101
 CATEGORIES=    graphics

 MAINTAINER=    jmd@FreeBSD.org
@@ -22,7 +22,7 @@ USES=     kmod uidfix
 USE_GITHUB=    yes
 GH_ACCOUNT=    FreeBSDDesktop
 GH_PROJECT=    kms-firmware
-GH_TAGNAME=    81315fa
+GH_TAGNAME=    d8d34c9

 .include <bsd.port.pre.mk>

Index: graphics/gpu-firmware-kmod/distinfo
===================================================================
--- graphics/gpu-firmware-kmod/distinfo (revision 521577)
+++ graphics/gpu-firmware-kmod/distinfo (working copy)
@@ -1,3 +1,3 @@
 TIMESTAMP = 1571155603
-SHA256 (FreeBSDDesktop-kms-firmware-g20191015-81315fa_GH0.tar.gz) = 8fb6605bc3b4554c0aaa51f6c8a7e8218266637f278caa7e49e7ee013b861975
-SIZE (FreeBSDDesktop-kms-firmware-g20191015-81315fa_GH0.tar.gz) = 21588880
+SHA256 (FreeBSDDesktop-kms-firmware-g20200101-d8d34c9_GH0.tar.gz) = bc5c998b9d29edd4b8b152f76ec87f4512efc6687d1113e55159b8f51cd0f5c3
+SIZE (FreeBSDDesktop-kms-firmware-g20200101-d8d34c9_GH0.tar.gz) = 21588942
Index: graphics/gpu-firmware-kmod/pkg-plist
===================================================================
--- graphics/gpu-firmware-kmod/pkg-plist    (revision 521577)
+++ graphics/gpu-firmware-kmod/pkg-plist    (working copy)
@@ -326,6 +326,7 @@
 /%%KMODDIR%%/i915_skl_dmc_ver1_26_bin.ko
 /%%KMODDIR%%/i915_skl_dmc_ver1_27_bin.ko
 /%%KMODDIR%%/i915_skl_guc_ver6_1_bin.ko
+/%%KMODDIR%%/i915_skl_guc_ver9_33_bin.ko
 /%%KMODDIR%%/i915_skl_huc_ver01_07_bin.ko
 /%%KMODDIR%%/radeon_ARUBA_me_bin.ko
 /%%KMODDIR%%/radeon_ARUBA_pfp_bin.ko
iotamudelta commented 4 years ago

@johalun any concerns with this update w.r.t. Linux 4.11 KMS?

LG from my side.

evadot commented 4 years ago

LGTM