1
0
mirror of https://aur.archlinux.org/linux-vfio.git synced 2024-12-26 04:24:09 +00:00
This commit is contained in:
xiota 2023-12-29 06:07:24 -08:00
parent 50944e0576
commit bc2fb3798c
5 changed files with 422 additions and 226 deletions

View File

@ -1,6 +1,6 @@
pkgbase = linux-vfio
pkgdesc = Linux
pkgver = 6.3.9
pkgver = 6.6.7
pkgrel = 1
url = https://www.kernel.org
arch = x86_64
@ -19,16 +19,16 @@ pkgbase = linux-vfio
makedepends = python-sphinx
makedepends = texlive-latexextra
options = !strip
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.3.9.tar.xz
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.3.9.tar.sign
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.7.tar.xz
source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.6.7.tar.sign
source = config
source = 1001-add-acs-overrides.patch
source = 1002-i915-vga-arbiter.patch
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
sha256sums = 41ecf21399b17ab85163750ba22347d09b54fa099b80b63d0e2ef0066129b13e
sha256sums = 0ce68ec6019019140043263520955ecd04839e55a1baab2fa9155b42bb6fd841
sha256sums = SKIP
sha256sums = 21b9a9e542f853cdc695648d6ab6219bd2e881a4954277f241e104723c373d42
sha256sums = 18fcff9fa723cef2feb654dae966a149f0ef0fea9dda1780d3de0ff07d4f8ab7
sha256sums = bdd2a5a56e01e91723907afb40d28bed77b7d5107aba92c85adb3ce6967e713a
sha256sums = 9a698eaf1a0bd740981e909b6ad9bd41300488a2a771843bf30b9bdc94aa3c3b

View File

@ -1,7 +1,6 @@
From b41eb63d48790c92ac171fd92ad6355cb724e7ad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=A9clairevoyant?=
<848000+eclairevoyant@users.noreply.github.com>
Date: Tue, 14 Mar 2023 17:06:39 -0400
From 8079e9e3accd28bc20b7c2ebbf87c478f4288475 Mon Sep 17 00:00:00 2001
From: xiota <>
Date: Fri, 29-Dec-2023 12:34:56 +0000
Subject: [PATCH 1/2] add-acs-overrides
---
@ -10,10 +9,10 @@ Subject: [PATCH 1/2] add-acs-overrides
2 files changed, 110 insertions(+)
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 6cfa6e3996cf..fdbe34c0fbf3 100644
index 41644336e..a3319b714 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -4178,6 +4178,14 @@
@@ -4287,6 +4287,14 @@
nomsi [MSI] If the PCI_MSI kernel config parameter is
enabled, this kernel boot option can be used to
disable the use of MSI interrupts system-wide.
@ -29,10 +28,10 @@ index 6cfa6e3996cf..fdbe34c0fbf3 100644
Safety option to keep boot IRQs enabled. This
should never be necessary.
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 494fa46f5767..41150eb8bd4c 100644
index ae95d0950..aaf28aa0b 100644
--- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c
@@ -194,6 +194,106 @@ static int __init pci_apply_final_quirks(void)
@@ -287,6 +287,106 @@ static int __init pci_apply_final_quirks(void)
}
fs_initcall_sync(pci_apply_final_quirks);
@ -139,7 +138,7 @@ index 494fa46f5767..41150eb8bd4c 100644
/*
* Decoding should be disabled for a PCI device during BAR sizing to avoid
* conflict. But doing so may cause problems on host bridge and perhaps other
@@ -5002,6 +5102,8 @@ static const struct pci_dev_acs_enabled {
@@ -5116,6 +5216,8 @@ static const struct pci_dev_acs_enabled {
{ PCI_VENDOR_ID_ZHAOXIN, PCI_ANY_ID, pci_quirk_zhaoxin_pcie_ports_acs },
/* Wangxun nics */
{ PCI_VENDOR_ID_WANGXUN, PCI_ANY_ID, pci_quirk_wangxun_nic_acs },
@ -149,5 +148,5 @@ index 494fa46f5767..41150eb8bd4c 100644
};
--
2.39.2
2.43.0

View File

@ -1,23 +1,22 @@
From 61009bd54ec93d15f9c26325cf5e5c68ac98becc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=A9clairevoyant?=
<848000+eclairevoyant@users.noreply.github.com>
Date: Tue, 14 Mar 2023 17:07:40 -0400
From 33d2dbe323583bb2f344c857a100f1116fad70d9 Mon Sep 17 00:00:00 2001
From: xiota <>
Date: Fri, 29-Dec-2023 12:34:56 +0000
Subject: [PATCH 2/2] i915-vga-arbiter
---
drivers/gpu/drm/i915/display/intel_display.c | 15 ++++++++--
drivers/gpu/drm/i915/display/intel_display.h | 1 +
drivers/gpu/drm/i915/display/intel_vga.c | 31 ++++++++++++++++++++
drivers/gpu/drm/i915/display/intel_vga.h | 4 +++
drivers/gpu/drm/i915/i915_params.c | 3 ++
drivers/gpu/drm/i915/i915_params.h | 1 +
6 files changed, 52 insertions(+), 3 deletions(-)
.../drm/i915/display/intel_display_driver.c | 16 ++++++++--
.../drm/i915/display/intel_display_driver.h | 1 +
drivers/gpu/drm/i915/display/intel_vga.c | 31 +++++++++++++++++++
drivers/gpu/drm/i915/display/intel_vga.h | 4 +++
drivers/gpu/drm/i915/i915_params.c | 3 ++
drivers/gpu/drm/i915/i915_params.h | 1 +
6 files changed, 53 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index dedbdb175f8b..e7e95308f6e6 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -8646,9 +8646,11 @@ int intel_modeset_init_noirq(struct drm_i915_private *i915)
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.c b/drivers/gpu/drm/i915/display/intel_display_driver.c
index 8f144d4d3..915a5ec47 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.c
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.c
@@ -205,9 +205,11 @@ int intel_display_driver_probe_noirq(struct drm_i915_private *i915)
intel_bios_init(i915);
@ -31,8 +30,8 @@ index dedbdb175f8b..e7e95308f6e6 100644
+ }
/* FIXME: completely on the wrong abstraction layer */
intel_power_domains_init_hw(i915, false);
@@ -8796,6 +8798,12 @@ int intel_modeset_init(struct drm_i915_private *i915)
ret = intel_power_domains_init(i915);
@@ -366,6 +368,12 @@ int intel_display_driver_probe(struct drm_i915_private *i915)
if (ret)
return ret;
@ -45,7 +44,7 @@ index dedbdb175f8b..e7e95308f6e6 100644
/* Only enable hotplug handling once the fbdev is fully set up. */
intel_hpd_init(i915);
intel_hpd_poll_disable(i915);
@@ -8966,6 +8974,7 @@ void intel_modeset_driver_remove(struct drm_i915_private *i915)
@@ -412,6 +420,7 @@ void intel_display_driver_remove(struct drm_i915_private *i915)
if (!HAS_DISPLAY(i915))
return;
@ -53,23 +52,31 @@ index dedbdb175f8b..e7e95308f6e6 100644
flush_workqueue(i915->display.wq.flip);
flush_workqueue(i915->display.wq.modeset);
diff --git a/drivers/gpu/drm/i915/display/intel_display.h b/drivers/gpu/drm/i915/display/intel_display.h
index 714030136b7f..fbd500249ab1 100644
--- a/drivers/gpu/drm/i915/display/intel_display.h
+++ b/drivers/gpu/drm/i915/display/intel_display.h
@@ -535,6 +535,7 @@ void i830_disable_pipe(struct drm_i915_private *dev_priv, enum pipe pipe);
int vlv_get_hpll_vco(struct drm_i915_private *dev_priv);
int vlv_get_cck_clock(struct drm_i915_private *dev_priv,
const char *name, u32 reg, int ref_freq);
@@ -444,6 +453,7 @@ void intel_display_driver_remove_noirq(struct drm_i915_private *i915)
intel_unregister_dsm_handler();
/* flush any delayed tasks or pending work */
+ intel_vga_enable_mem(i915);
flush_workqueue(i915->unordered_wq);
intel_hdcp_component_fini(i915);
diff --git a/drivers/gpu/drm/i915/display/intel_display_driver.h b/drivers/gpu/drm/i915/display/intel_display_driver.h
index c276a58ee..54b752a93 100644
--- a/drivers/gpu/drm/i915/display/intel_display_driver.h
+++ b/drivers/gpu/drm/i915/display/intel_display_driver.h
@@ -13,6 +13,7 @@ struct drm_i915_private;
struct drm_modeset_acquire_ctx;
struct pci_dev;
+extern void intel_vga_disable_mem(struct drm_i915_private *dev_priv);
int vlv_get_cck_clock_hpll(struct drm_i915_private *dev_priv,
const char *name, u32 reg);
void intel_init_display_hooks(struct drm_i915_private *dev_priv);
bool intel_display_driver_probe_defer(struct pci_dev *pdev);
void intel_display_driver_init_hw(struct drm_i915_private *i915);
void intel_display_driver_early_probe(struct drm_i915_private *i915);
diff --git a/drivers/gpu/drm/i915/display/intel_vga.c b/drivers/gpu/drm/i915/display/intel_vga.c
index a69bfcac9a94..4cafe1f812f5 100644
index 286a0bdd2..18d30ee84 100644
--- a/drivers/gpu/drm/i915/display/intel_vga.c
+++ b/drivers/gpu/drm/i915/display/intel_vga.c
@@ -46,6 +46,36 @@ void intel_vga_disable(struct drm_i915_private *dev_priv)
@@ -47,6 +47,36 @@ void intel_vga_disable(struct drm_i915_private *dev_priv)
intel_de_posting_read(dev_priv, vga_reg);
}
@ -106,7 +113,7 @@ index a69bfcac9a94..4cafe1f812f5 100644
void intel_vga_redisable_power_on(struct drm_i915_private *dev_priv)
{
i915_reg_t vga_reg = intel_vga_cntrl_reg(dev_priv);
@@ -54,6 +84,7 @@ void intel_vga_redisable_power_on(struct drm_i915_private *dev_priv)
@@ -55,6 +85,7 @@ void intel_vga_redisable_power_on(struct drm_i915_private *dev_priv)
drm_dbg_kms(&dev_priv->drm,
"Something enabled VGA plane, disabling it\n");
intel_vga_disable(dev_priv);
@ -115,7 +122,7 @@ index a69bfcac9a94..4cafe1f812f5 100644
}
diff --git a/drivers/gpu/drm/i915/display/intel_vga.h b/drivers/gpu/drm/i915/display/intel_vga.h
index ba5b55b917f0..7e2af7924e99 100644
index ba5b55b91..7e2af7924 100644
--- a/drivers/gpu/drm/i915/display/intel_vga.h
+++ b/drivers/gpu/drm/i915/display/intel_vga.h
@@ -15,4 +15,8 @@ void intel_vga_redisable_power_on(struct drm_i915_private *i915);
@ -128,10 +135,10 @@ index ba5b55b917f0..7e2af7924e99 100644
+
#endif /* __INTEL_VGA_H__ */
diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
index d1e4d528cb17..a00cbc6591b0 100644
index 0a171b57f..739d31067 100644
--- a/drivers/gpu/drm/i915/i915_params.c
+++ b/drivers/gpu/drm/i915/i915_params.c
@@ -154,6 +154,9 @@ i915_param_named_unsafe(invert_brightness, int, 0400,
@@ -160,6 +160,9 @@ i915_param_named_unsafe(invert_brightness, int, 0400,
i915_param_named(disable_display, bool, 0400,
"Disable display (default: false)");
@ -142,10 +149,10 @@ index d1e4d528cb17..a00cbc6591b0 100644
"Perform a read/write test of all device memory on module load (default: off)");
diff --git a/drivers/gpu/drm/i915/i915_params.h b/drivers/gpu/drm/i915/i915_params.h
index 2733cb6cfe09..f21c5b1529cc 100644
index 68abf0ad6..507d29c52 100644
--- a/drivers/gpu/drm/i915/i915_params.h
+++ b/drivers/gpu/drm/i915/i915_params.h
@@ -76,6 +76,7 @@ struct drm_printer;
@@ -79,6 +79,7 @@ struct drm_printer;
param(unsigned int, lmem_size, 0, 0400) \
param(unsigned int, lmem_bar_size, 0, 0400) \
/* leave bools at the end to not create holes */ \
@ -154,5 +161,5 @@ index 2733cb6cfe09..f21c5b1529cc 100644
param(bool, load_detect_test, false, 0600) \
param(bool, force_reset_modeset_test, false, 0600) \
--
2.39.2
2.43.0

View File

@ -8,7 +8,7 @@
_gitname="linux"
_pkgname="$_gitname-vfio"
pkgbase="$_pkgname"
pkgver=6.3.9
pkgver=6.6.7
pkgrel=1
pkgdesc='Linux'
url='https://www.kernel.org'
@ -44,12 +44,12 @@ validpgpkeys=(
647F28654894E3BD457199BE38DBBDC86092693E # Greg Kroah-Hartman
)
sha256sums=(
'41ecf21399b17ab85163750ba22347d09b54fa099b80b63d0e2ef0066129b13e'
'0ce68ec6019019140043263520955ecd04839e55a1baab2fa9155b42bb6fd841'
'SKIP'
'21b9a9e542f853cdc695648d6ab6219bd2e881a4954277f241e104723c373d42'
'18fcff9fa723cef2feb654dae966a149f0ef0fea9dda1780d3de0ff07d4f8ab7'
'bdd2a5a56e01e91723907afb40d28bed77b7d5107aba92c85adb3ce6967e713a'
'9a698eaf1a0bd740981e909b6ad9bd41300488a2a771843bf30b9bdc94aa3c3b'
'f342986bd27980c96c952b0dd8103d3e21a942d87f18df1308fab370e20010fb'
'2a3c732d4d61a631c98b2a3e4afb1fa5dbf8be5c43519b2a59d0e65170c9d8db'
)
export KBUILD_BUILD_HOST=archlinux

524
config

File diff suppressed because it is too large Load Diff