arch/parisc: Implement fb_is_primary_device() under arch/parisc
authorThomas Zimmermann <tzimmermann@suse.de>
Mon, 17 Apr 2023 12:56:45 +0000 (14:56 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 20 Apr 2023 08:04:58 +0000 (10:04 +0200)
Move PARISC's implementation of fb_is_primary_device() into the
architecture directory. This the place of the declaration and
where other architectures implement this function. No functional
changes.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>
Cc: Helge Deller <deller@gmx.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Helge Deller <deller@gmx.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20230417125651.25126-14-tzimmermann@suse.de
arch/parisc/Makefile
arch/parisc/include/asm/fb.h
arch/parisc/video/Makefile [new file with mode: 0644]
arch/parisc/video/fbdev.c [new file with mode: 0644]
drivers/video/sticore.c
include/video/sticore.h

index 0d049a6f6a604f03aac54302b0494811c504503f..968ebe17494c5fcb96887c6d9fa49736a8995117 100644 (file)
@@ -119,6 +119,8 @@ export LIBGCC
 
 libs-y += arch/parisc/lib/ $(LIBGCC)
 
+drivers-y += arch/parisc/video/
+
 boot   := arch/parisc/boot
 
 PALO := $(shell if (which palo 2>&1); then : ; \
index 55d29c4f716e69e2ecf925f3551b4e76794dba5f..0b9a38ced5c8eab1998d7bb5f7968cb0fa3c7b19 100644 (file)
@@ -12,7 +12,7 @@ static inline void fb_pgprotect(struct file *file, struct vm_area_struct *vma,
        pgprot_val(vma->vm_page_prot) |= _PAGE_NO_CACHE;
 }
 
-#if defined(CONFIG_FB_STI)
+#if defined(CONFIG_STI_CORE)
 int fb_is_primary_device(struct fb_info *info);
 #else
 static inline int fb_is_primary_device(struct fb_info *info)
diff --git a/arch/parisc/video/Makefile b/arch/parisc/video/Makefile
new file mode 100644 (file)
index 0000000..16a73cc
--- /dev/null
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0-only
+
+obj-$(CONFIG_STI_CORE) += fbdev.o
diff --git a/arch/parisc/video/fbdev.c b/arch/parisc/video/fbdev.c
new file mode 100644 (file)
index 0000000..4a0ae08
--- /dev/null
@@ -0,0 +1,27 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Copyright (C) 2000 Philipp Rumpf <prumpf@tux.org>
+ * Copyright (C) 2001-2020 Helge Deller <deller@gmx.de>
+ * Copyright (C) 2001-2002 Thomas Bogendoerfer <tsbogend@alpha.franken.de>
+ */
+
+#include <linux/module.h>
+
+#include <asm/fb.h>
+
+#include <video/sticore.h>
+
+int fb_is_primary_device(struct fb_info *info)
+{
+       struct sti_struct *sti;
+
+       sti = sti_get_rom(0);
+
+       /* if no built-in graphics card found, allow any fb driver as default */
+       if (!sti)
+               return true;
+
+       /* return true if it's the default built-in framebuffer driver */
+       return (sti->info == info);
+}
+EXPORT_SYMBOL(fb_is_primary_device);
index f8aaedea437d1d0023a80916f1fb41588ae0377b..7eb925f2ba9c93f35cfe1beb63c1231db4932bd3 100644 (file)
@@ -30,7 +30,6 @@
 #include <asm/pdc.h>
 #include <asm/cacheflush.h>
 #include <asm/grfioctl.h>
-#include <asm/fb.h>
 
 #include <video/sticore.h>
 
@@ -1148,24 +1147,6 @@ int sti_call(const struct sti_struct *sti, unsigned long func,
        return ret;
 }
 
-#if defined(CONFIG_FB_STI)
-/* check if given fb_info is the primary device */
-int fb_is_primary_device(struct fb_info *info)
-{
-       struct sti_struct *sti;
-
-       sti = sti_get_rom(0);
-
-       /* if no built-in graphics card found, allow any fb driver as default */
-       if (!sti)
-               return true;
-
-       /* return true if it's the default built-in framebuffer driver */
-       return (sti->info == info);
-}
-EXPORT_SYMBOL(fb_is_primary_device);
-#endif
-
 MODULE_AUTHOR("Philipp Rumpf, Helge Deller, Thomas Bogendoerfer");
 MODULE_DESCRIPTION("Core STI driver for HP's NGLE series graphics cards in HP PARISC machines");
 MODULE_LICENSE("GPL v2");
index c0879352cde44175cc2bbc0c3de41ae21647b762..fbb78d7e7565e7ec94dcf0323e8ffdaac07b7692 100644 (file)
@@ -2,6 +2,8 @@
 #ifndef STICORE_H
 #define STICORE_H
 
+struct fb_info;
+
 /* generic STI structures & functions */
 
 #define MAX_STI_ROMS 4         /* max no. of ROMs which this driver handles */