Message ID | 20230516202814.561262-1-arnd@kernel.org |
---|---|
State | New |
Headers | show |
Series | fbdev: i810: include i810_main.h in i810_dvt.c | expand |
On Tue, 16 May 2023, Arnd Bergmann <arnd@kernel.org> wrote: > From: Arnd Bergmann <arnd@arndb.de> > > Building with W=1 shows that a header needs to be included to > make the prototypes visible: > > drivers/video/fbdev/i810/i810_dvt.c:194:6: error: no previous prototype for 'round_off_xres' [-Werror=missing-prototypes] > drivers/video/fbdev/i810/i810_dvt.c:233:6: error: no previous prototype for 'i810fb_encode_registers' [-Werror=missing-prototypes] > drivers/video/fbdev/i810/i810_dvt.c:245:6: error: no previous prototype for 'i810fb_fill_var_timings' [-Werror=missing-prototypes] > drivers/video/fbdev/i810/i810_dvt.c:279:5: error: no previous prototype for 'i810_get_watermark' [-Werror=missing-prototypes] > > Adding the header leads to another warning from a mismatched > prototype, so fix this as well: > > drivers/video/fbdev/i810/i810_dvt.c:280:5: error: conflicting types for 'i810_get_watermark'; have 'u32(struct fb_var_screeninfo *, Changes here look fine, Reviewed-by: Jani Nikula <jani.nikula@intel.com> but I think you should try CONFIG_FB_I810_GTF=y to get the same mismatched prototype error for i810_get_watermark() in i810_gtf.c, and add the const there while at it. R-b stands for that addition as well. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/video/fbdev/i810/i810_dvt.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/video/fbdev/i810/i810_dvt.c b/drivers/video/fbdev/i810/i810_dvt.c > index b4b3670667ab..2082b5c92e8f 100644 > --- a/drivers/video/fbdev/i810/i810_dvt.c > +++ b/drivers/video/fbdev/i810/i810_dvt.c > @@ -14,6 +14,7 @@ > > #include "i810_regs.h" > #include "i810.h" > +#include "i810_main.h" > > struct mode_registers std_modes[] = { > /* 640x480 @ 60Hz */ > @@ -276,7 +277,7 @@ void i810fb_fill_var_timings(struct fb_var_screeninfo *var) > var->upper_margin = total - (yres + var->lower_margin + var->vsync_len); > } > > -u32 i810_get_watermark(struct fb_var_screeninfo *var, > +u32 i810_get_watermark(const struct fb_var_screeninfo *var, > struct i810fb_par *par) > { > struct mode_registers *params = &par->regs;
On Wed, May 17, 2023, at 10:46, Jani Nikula wrote: > On Tue, 16 May 2023, Arnd Bergmann <arnd@kernel.org> wrote: >> >> drivers/video/fbdev/i810/i810_dvt.c:280:5: error: conflicting types for 'i810_get_watermark'; have 'u32(struct fb_var_screeninfo *, > > Changes here look fine, > > Reviewed-by: Jani Nikula <jani.nikula@intel.com> Thanks! > but I think you should try CONFIG_FB_I810_GTF=y to get the same > mismatched prototype error for i810_get_watermark() in i810_gtf.c, and > add the const there while at it. R-b stands for that addition as well. I'm fairly sure I looked at that and did not see a problem as i810_main.h is already included in that file, it was added in 2006 with commit a0aa7d063927 ("[PATCH] drivers/video/: possible cleanups"). Arnd
On Wed, 17 May 2023, "Arnd Bergmann" <arnd@arndb.de> wrote: > On Wed, May 17, 2023, at 10:46, Jani Nikula wrote: >> On Tue, 16 May 2023, Arnd Bergmann <arnd@kernel.org> wrote: > >>> >>> drivers/video/fbdev/i810/i810_dvt.c:280:5: error: conflicting types for 'i810_get_watermark'; have 'u32(struct fb_var_screeninfo *, >> >> Changes here look fine, >> >> Reviewed-by: Jani Nikula <jani.nikula@intel.com> > > Thanks! > >> but I think you should try CONFIG_FB_I810_GTF=y to get the same >> mismatched prototype error for i810_get_watermark() in i810_gtf.c, and >> add the const there while at it. R-b stands for that addition as well. > > I'm fairly sure I looked at that and did not see a problem as > i810_main.h is already included in that file, it was added > in 2006 with commit a0aa7d063927 ("[PATCH] drivers/video/: possible > cleanups"). True that, my bad. (Which kind of puts the R-b above in doubt, but hey, at least I looked at it. ;) BR, Jani. > > Arnd
On 5/17/23 10:46, Jani Nikula wrote: > On Tue, 16 May 2023, Arnd Bergmann <arnd@kernel.org> wrote: >> From: Arnd Bergmann <arnd@arndb.de> >> >> Building with W=1 shows that a header needs to be included to >> make the prototypes visible: >> >> drivers/video/fbdev/i810/i810_dvt.c:194:6: error: no previous prototype for 'round_off_xres' [-Werror=missing-prototypes] >> drivers/video/fbdev/i810/i810_dvt.c:233:6: error: no previous prototype for 'i810fb_encode_registers' [-Werror=missing-prototypes] >> drivers/video/fbdev/i810/i810_dvt.c:245:6: error: no previous prototype for 'i810fb_fill_var_timings' [-Werror=missing-prototypes] >> drivers/video/fbdev/i810/i810_dvt.c:279:5: error: no previous prototype for 'i810_get_watermark' [-Werror=missing-prototypes] >> >> Adding the header leads to another warning from a mismatched >> prototype, so fix this as well: >> >> drivers/video/fbdev/i810/i810_dvt.c:280:5: error: conflicting types for 'i810_get_watermark'; have 'u32(struct fb_var_screeninfo *, > > Changes here look fine, > > Reviewed-by: Jani Nikula <jani.nikula@intel.com> applied to fbdev tree. Thanks! Helge
diff --git a/drivers/video/fbdev/i810/i810_dvt.c b/drivers/video/fbdev/i810/i810_dvt.c index b4b3670667ab..2082b5c92e8f 100644 --- a/drivers/video/fbdev/i810/i810_dvt.c +++ b/drivers/video/fbdev/i810/i810_dvt.c @@ -14,6 +14,7 @@ #include "i810_regs.h" #include "i810.h" +#include "i810_main.h" struct mode_registers std_modes[] = { /* 640x480 @ 60Hz */ @@ -276,7 +277,7 @@ void i810fb_fill_var_timings(struct fb_var_screeninfo *var) var->upper_margin = total - (yres + var->lower_margin + var->vsync_len); } -u32 i810_get_watermark(struct fb_var_screeninfo *var, +u32 i810_get_watermark(const struct fb_var_screeninfo *var, struct i810fb_par *par) { struct mode_registers *params = &par->regs;