* Geert Uytterhoeven <[email protected]>: > Hi Arnd, > > On Tue, May 16, 2023 at 10:23 PM Arnd Bergmann <[email protected]> wrote: > > From: Arnd Bergmann <[email protected]> > > > > 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 <[email protected]> > > > --- 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 <[email protected]> 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 <[email protected]> Signed-off-by: Helge Deller <[email protected]> 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
