On 4/29/20 1:54 PM, Sam Ravnborg wrote: > Hi Bartlomiej. > > On Wed, Apr 29, 2020 at 12:48:24PM +0200, Bartlomiej Zolnierkiewicz wrote: >> >> powerpc allyesconfig fails like this: >> >> drivers/video/fbdev/controlfb.c: In function 'controlfb_mmap': >> drivers/video/fbdev/controlfb.c:756:23: error: implicit declaration of function 'pgprot_cached_wthru'; did you mean 'pgprot_cached'? [-Werror=implicit-function-declaration] >> 756 | vma->vm_page_prot = pgprot_cached_wthru(vma->vm_page_prot); >> | ^~~~~~~~~~~~~~~~~~~ >> | pgprot_cached >> drivers/video/fbdev/controlfb.c:756:23: error: incompatible types when assigning to type 'pgprot_t' {aka 'struct <anonymous>'} from type 'int' >> >> Fix it by adding missing PPC32 dependency. > > Is this really the right fix? Yes, ifdef in the code should match driver dependencies in Kconfig: config FB_CONTROL bool "Apple \"control\" display support" depends on (FB = y) && ((PPC_PMAC && PPC32) || COMPILE_TEST) > Short term I htink it is OK, but I think there should be a common way > to do the same for all archtectures so no conditional compilation is > needed. In other words the use of pgprot_cached_wthru looks like we > need a better abstraction. This would be of course nice to have but won't be enough to remove the ifdef in this particular driver. Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics > Added Christoph to the mail as he has a good overview of the area. > > Sam > > >> >> Fixes: a07a63b0e24d ("video: fbdev: controlfb: add COMPILE_TEST support") >> Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> >> Reported-by: kbuild test robot <lkp@xxxxxxxxx> >> Cc: Sam Ravnborg <sam@xxxxxxxxxxxx> >> Cc: Daniel Vetter <daniel.vetter@xxxxxxxx> >> Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx> >> --- >> v2: fix implicit btext_update_display() function declaration error >> >> drivers/video/fbdev/controlfb.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> Index: b/drivers/video/fbdev/controlfb.c >> =================================================================== >> --- a/drivers/video/fbdev/controlfb.c >> +++ b/drivers/video/fbdev/controlfb.c >> @@ -55,7 +55,7 @@ >> #include "macmodes.h" >> #include "controlfb.h" >> >> -#ifndef CONFIG_PPC_PMAC >> +#if !defined(CONFIG_PPC_PMAC) || !defined(CONFIG_PPC32) >> #define invalid_vram_cache(addr) >> #undef in_8 >> #undef out_8 > > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel