summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2022-09-08 11:30:33 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2022-09-08 11:30:33 +0000
commit91dfbe3b377564e151ec12d36e5b79324f4f941b (patch)
tree49185c505b609a3a30e84745d68a408e204d5dd6
parent8bd3b8be3785a1fd5fb090f20fe1fd5f0ed681de (diff)
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.
-rw-r--r--sys/dev/pci/drm/i915/i915_drv.c5
1 files changed, 5 insertions, 0 deletions
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));