* Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>: > Hi Arnd, > > On Tue, May 16, 2023 at 10:23 PM Arnd Bergmann <arnd@xxxxxxxxxx> wrote: > > From: Arnd Bergmann <arnd@xxxxxxxx> > > > > There is a global function with this name on sparc, but no > > global declaration: > > > > drivers/video/fbdev/core/fbmem.c:1469:15: error: no previous prototype for 'get_fb_unmapped_area' > > > > Make the generic definition static to avoid this warning. On > > sparc, this is never seen. > > > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > > > --- a/drivers/video/fbdev/core/fbmem.c > > +++ b/drivers/video/fbdev/core/fbmem.c > > @@ -1468,7 +1468,7 @@ __releases(&info->lock) > > } > > > > #if defined(CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA) && !defined(CONFIG_MMU) > > -unsigned long get_fb_unmapped_area(struct file *filp, > > +static unsigned long get_fb_unmapped_area(struct file *filp, > > unsigned long addr, unsigned long len, > > unsigned long pgoff, unsigned long flags) > > { > > LGTM, as this is unrelated to the SPARC function, and SPARC does > not support nommu (yet? ;-) > > drivers/video/fbdev/Kconfig:config FB_PROVIDE_GET_FB_UNMAPPED_AREA > drivers/video/fbdev/Kconfig- bool > drivers/video/fbdev/Kconfig- depends on FB > drivers/video/fbdev/Kconfig- help > drivers/video/fbdev/Kconfig- Allow generic frame-buffer to > provide get_fb_unmapped_area > drivers/video/fbdev/Kconfig- function. > > Probably you want to update this help text, too. E.g. > "to provide shareable character device support on nommu"? I've added Geerts suggestions and made it dependend on !MMU. Applied to fbdev git tree as below. Thanks! Helge >From 9adfa68ca0ddd63007cdce60a8ffcb493bb30d97 Mon Sep 17 00:00:00 2001 From: Arnd Bergmann <arnd@xxxxxxxx> Subject: [PATCH] fbdev: fbmem: mark get_fb_unmapped_area() static There is a global function with this name on sparc, but no global declaration: drivers/video/fbdev/core/fbmem.c:1469:15: error: no previous prototype for 'get_fb_unmapped_area' Make the generic definition static to avoid this warning. On sparc, this is never seen. Edit by Helge: Update Kconfig text as suggested by Geert Uytterhoeven and make it dependend on !MMU. Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Signed-off-by: Helge Deller <deller@xxxxxx> diff --git a/drivers/video/fbdev/Kconfig b/drivers/video/fbdev/Kconfig index 96e91570cdd3..1688875a07de 100644 --- a/drivers/video/fbdev/Kconfig +++ b/drivers/video/fbdev/Kconfig @@ -121,10 +121,10 @@ config FB_SYS_IMAGEBLIT config FB_PROVIDE_GET_FB_UNMAPPED_AREA bool - depends on FB + depends on FB && !MMU help Allow generic frame-buffer to provide get_fb_unmapped_area - function. + function to provide shareable character device support on nommu. menuconfig FB_FOREIGN_ENDIAN bool "Framebuffer foreign endianness support" diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c index e808dc86001c..21a108d9f08e 100644 --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c @@ -1467,8 +1467,8 @@ __releases(&info->lock) return 0; } -#if defined(CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA) && !defined(CONFIG_MMU) -unsigned long get_fb_unmapped_area(struct file *filp, +#if defined(CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA) +static unsigned long get_fb_unmapped_area(struct file *filp, unsigned long addr, unsigned long len, unsigned long pgoff, unsigned long flags) { @@ -1494,8 +1494,7 @@ static const struct file_operations fb_fops = { .open = fb_open, .release = fb_release, #if defined(HAVE_ARCH_FB_UNMAPPED_AREA) || \ - (defined(CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA) && \ - !defined(CONFIG_MMU)) + defined(CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA) .get_unmapped_area = get_fb_unmapped_area, #endif #ifdef CONFIG_FB_DEFERRED_IO