summaryrefslogtreecommitdiff
path: root/arch/x86/video/video-common.c
diff options
context:
space:
mode:
authorThomas Zimmermann <tzimmermann@suse.de>2024-05-17 12:14:33 +0300
committerArnd Bergmann <arnd@arndb.de>2024-05-21 00:17:06 +0300
commit34cda5ab89d4f30bc8d8f8d28980a7b8c68db6ec (patch)
tree756118ee8eb174d02588d7123895982653f84a06 /arch/x86/video/video-common.c
parente7cda7fe37ff1ece39bd2bf35ea68b1175395d95 (diff)
downloadlinux-34cda5ab89d4f30bc8d8f8d28980a7b8c68db6ec.tar.xz
arch: Fix name collision with ACPI's video.o
Commit 2fd001cd3600 ("arch: Rename fbdev header and source files") renames the video source files under arch/ such that they do not refer to fbdev any longer. The new files named video.o conflict with ACPI's video.ko module. Modprobing the ACPI module can then fail with warnings about missing symbols, as shown below. (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol acpi_video_unregister (err -2) (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol acpi_video_register_backlight (err -2) (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol __acpi_video_get_backlight_type (err -2) (i915_selftest:1107) igt_kmod-WARNING: i915: Unknown symbol acpi_video_register (err -2) Fix the issue by renaming the architecture's video.o to video-common.o. Reported-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> Closes: https://lore.kernel.org/intel-gfx/9dcac6e9-a3bf-4ace-bbdc-f697f767f9e0@suse.de/T/#t Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Fixes: 2fd001cd3600 ("arch: Rename fbdev header and source files") Reviewed-by: Hans de Goede <hdegoede@redhat.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: linux-arch@vger.kernel.org Cc: linux-fbdev@vger.kernel.org Cc: dri-devel@lists.freedesktop.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/x86/video/video-common.c')
-rw-r--r--arch/x86/video/video-common.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/arch/x86/video/video-common.c b/arch/x86/video/video-common.c
new file mode 100644
index 000000000000..81fc97a2a837
--- /dev/null
+++ b/arch/x86/video/video-common.c
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2007 Antonino Daplas <adaplas@gmail.com>
+ *
+ * This file is subject to the terms and conditions of the GNU General Public
+ * License. See the file COPYING in the main directory of this archive
+ * for more details.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/pci.h>
+#include <linux/vgaarb.h>
+
+#include <asm/video.h>
+
+pgprot_t pgprot_framebuffer(pgprot_t prot,
+ unsigned long vm_start, unsigned long vm_end,
+ unsigned long offset)
+{
+ pgprot_val(prot) &= ~_PAGE_CACHE_MASK;
+ if (boot_cpu_data.x86 > 3)
+ pgprot_val(prot) |= cachemode2protval(_PAGE_CACHE_MODE_UC_MINUS);
+
+ return prot;
+}
+EXPORT_SYMBOL(pgprot_framebuffer);
+
+bool video_is_primary_device(struct device *dev)
+{
+ struct pci_dev *pdev;
+
+ if (!dev_is_pci(dev))
+ return false;
+
+ pdev = to_pci_dev(dev);
+
+ return (pdev == vga_default_device());
+}
+EXPORT_SYMBOL(video_is_primary_device);
+
+MODULE_LICENSE("GPL");