From 96abb4d349583656e6bcd76585a2de9845e9ef32 Mon Sep 17 00:00:00 2001 From: jsg Date: Thu, 8 Sep 2022 11:30:32 +0000 Subject: [PATCH] initialise inteldrm device params from module params In inteldrm_attach() we need to call i915_params_copy(). Matching the changes made to i915_driver_create() in linux 8a25c4be583d8a9e38fbadcc49d4de32b1aa8906 (5.10) drm/i915/params: switch to device specific parameters This makes DisplayPort MST work again as the value of enable_dp_mst changes from false to true. Set enable_guc as 0 as I suspect that needs more work. Set request_timeout_ms to 0 as otherwise I see "Fence expiration time out" running Xorg on Broadwell. Problem reported and debugged by Paul Kelly. --- sys/dev/pci/drm/i915/i915_drv.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/dev/pci/drm/i915/i915_drv.c b/sys/dev/pci/drm/i915/i915_drv.c index e8c07f45da2..6d4bb89a3fd 100644 --- a/sys/dev/pci/drm/i915/i915_drv.c +++ b/sys/dev/pci/drm/i915/i915_drv.c @@ -2410,6 +2410,11 @@ inteldrm_attach(struct device *parent, struct device *self, void *aux) dev_priv->id = id; info = (struct intel_device_info *)id->driver_data; + /* Device parameters start as a copy of module parameters. */ + i915_params_copy(&dev_priv->params, &i915_modparams); + dev_priv->params.enable_guc = 0; + dev_priv->params.request_timeout_ms = 0; + /* Setup the write-once "constant" device info */ device_info = mkwrite_device_info(dev_priv); memcpy(device_info, info, sizeof(*device_info)); -- 2.20.1