Re: [PATCH] drm/sti: mark symbols static where possible
On Wed, Sep 28, 2016 at 09:27:13AM +0200, Vincent ABRIOU wrote: > Yes true, patch from Ville > https://lists.freedesktop.org/archives/dri-devel/2016-September/118631.html"; > already fix patches sent by Baoyou. Yeah, I resolved those conflicts by simply taking the code from the sti tree. I'll send a pull request for drm-misc with that merge to Dave this week still because I've totally forgotten about Tomeu's work. -Daniel > > Vincent > > On 09/27/2016 09:07 PM, Benjamin Gaignard wrote: > > I think that create conflicts with what is already in Vincent pull > > request where we have fix the problem reported by coccicheck and > > sparse. > > > > https://lists.freedesktop.org/archives/dri-devel/2016-September/118892.html > > > > Benjamin > > > > 2016-09-27 18:35 GMT+02:00 Sean Paul : > >> On Sun, Sep 25, 2016 at 3:57 AM, Baoyou Xie wrote: > >>> We get 6 warnings when building kernel with W=1: > >>> drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for > >>> 'sti_mixer_set_matrix' [-Wmissing-prototypes] > >>> drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for > >>> 'dvo_awg_generate_code' [-Wmissing-prototypes] > >>> drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for > >>> 'sti_gdp_field_cb' [-Wmissing-prototypes] > >>> drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for > >>> 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] > >>> drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype > >>> for 'sti_hqvdp_bind' [-Wmissing-prototypes] > >>> drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for > >>> 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] > >>> > >>> In fact, these functions are only used in the file in which they are > >>> declared and don't need a declaration, but can be made static. > >>> So this patch marks these functions with 'static'. > >>> > >>> Signed-off-by: Baoyou Xie > >> > >> Applied to -misc, thanks. > >> > >> Sean > >> > >>> --- > >>> drivers/gpu/drm/sti/sti_drv.c | 2 +- > >>> drivers/gpu/drm/sti/sti_dvo.c | 3 ++- > >>> drivers/gpu/drm/sti/sti_gdp.c | 2 +- > >>> drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- > >>> drivers/gpu/drm/sti/sti_mixer.c | 2 +- > >>> 5 files changed, 8 insertions(+), 6 deletions(-) > >>> > >>> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c > >>> index 7cd3804..e6f0706 100644 > >>> --- a/drivers/gpu/drm/sti/sti_drv.c > >>> +++ b/drivers/gpu/drm/sti/sti_drv.c > >>> @@ -140,7 +140,7 @@ static int sti_drm_dbg_init(struct drm_minor *minor) > >>> return ret; > >>> } > >>> > >>> -void sti_drm_dbg_cleanup(struct drm_minor *minor) > >>> +static void sti_drm_dbg_cleanup(struct drm_minor *minor) > >>> { > >>> drm_debugfs_remove_files(sti_drm_dbg_list, > >>> ARRAY_SIZE(sti_drm_dbg_list), minor); > >>> diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c > >>> index 00881eb..4545ad0 100644 > >>> --- a/drivers/gpu/drm/sti/sti_dvo.c > >>> +++ b/drivers/gpu/drm/sti/sti_dvo.c > >>> @@ -106,7 +106,8 @@ struct sti_dvo_connector { > >>> container_of(x, struct sti_dvo_connector, drm_connector) > >>> > >>> #define BLANKING_LEVEL 16 > >>> -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 > >>> *ram_code) > >>> +static int > >>> +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) > >>> { > >>> struct drm_display_mode *mode = &dvo->mode; > >>> struct dvo_config *config = dvo->config; > >>> diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c > >>> index b8d942c..4648d1b 100644 > >>> --- a/drivers/gpu/drm/sti/sti_gdp.c > >>> +++ b/drivers/gpu/drm/sti/sti_gdp.c > >>> @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) > >>> * RETURNS: > >>> * 0 on success. > >>> */ > >>> -int sti_gdp_field_cb(struct notifier_block *nb, > >>> +static int sti_gdp_field_cb(struct notifier_block *nb, > >>> unsigned long event, void *data) > >>> { > >>> struct sti_gdp *gdp = container_of(nb, struct sti_gdp, > >>> vtg_field_nb); > >>> diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c > >>> b/drivers/gpu/drm/sti/sti_hqvdp.c > >>> index b5ee783..7f0dea8 100644 > >>> --- a/drivers/gpu/drm/sti/sti_hqvdp.c > >>> +++ b/drivers/gpu/drm/sti/sti_hqvdp.c > >>> @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) > >>> * RETURNS: > >>> * 0 on success. > >>> */ > >>> -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void > >>> *data) > >>> +static int > >>> +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void > >>> *data) > >>> { > >>> struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, > >>> vtg_nb); > >>> int btm_cmd_offset, top_cmd_offest; > >>> @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct > >>> drm_device *drm_dev, > >>> return &hqvdp->plane.drm_
Re: [PATCH] drm/sti: mark symbols static where possible
Yes true, patch from Ville https://lists.freedesktop.org/archives/dri-devel/2016-September/118631.html"; already fix patches sent by Baoyou. Vincent On 09/27/2016 09:07 PM, Benjamin Gaignard wrote: > I think that create conflicts with what is already in Vincent pull > request where we have fix the problem reported by coccicheck and > sparse. > > https://lists.freedesktop.org/archives/dri-devel/2016-September/118892.html > > Benjamin > > 2016-09-27 18:35 GMT+02:00 Sean Paul : >> On Sun, Sep 25, 2016 at 3:57 AM, Baoyou Xie wrote: >>> We get 6 warnings when building kernel with W=1: >>> drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for >>> 'sti_mixer_set_matrix' [-Wmissing-prototypes] >>> drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for >>> 'dvo_awg_generate_code' [-Wmissing-prototypes] >>> drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for >>> 'sti_gdp_field_cb' [-Wmissing-prototypes] >>> drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for >>> 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] >>> drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype for >>> 'sti_hqvdp_bind' [-Wmissing-prototypes] >>> drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for >>> 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] >>> >>> In fact, these functions are only used in the file in which they are >>> declared and don't need a declaration, but can be made static. >>> So this patch marks these functions with 'static'. >>> >>> Signed-off-by: Baoyou Xie >> >> Applied to -misc, thanks. >> >> Sean >> >>> --- >>> drivers/gpu/drm/sti/sti_drv.c | 2 +- >>> drivers/gpu/drm/sti/sti_dvo.c | 3 ++- >>> drivers/gpu/drm/sti/sti_gdp.c | 2 +- >>> drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- >>> drivers/gpu/drm/sti/sti_mixer.c | 2 +- >>> 5 files changed, 8 insertions(+), 6 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c >>> index 7cd3804..e6f0706 100644 >>> --- a/drivers/gpu/drm/sti/sti_drv.c >>> +++ b/drivers/gpu/drm/sti/sti_drv.c >>> @@ -140,7 +140,7 @@ static int sti_drm_dbg_init(struct drm_minor *minor) >>> return ret; >>> } >>> >>> -void sti_drm_dbg_cleanup(struct drm_minor *minor) >>> +static void sti_drm_dbg_cleanup(struct drm_minor *minor) >>> { >>> drm_debugfs_remove_files(sti_drm_dbg_list, >>> ARRAY_SIZE(sti_drm_dbg_list), minor); >>> diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c >>> index 00881eb..4545ad0 100644 >>> --- a/drivers/gpu/drm/sti/sti_dvo.c >>> +++ b/drivers/gpu/drm/sti/sti_dvo.c >>> @@ -106,7 +106,8 @@ struct sti_dvo_connector { >>> container_of(x, struct sti_dvo_connector, drm_connector) >>> >>> #define BLANKING_LEVEL 16 >>> -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) >>> +static int >>> +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) >>> { >>> struct drm_display_mode *mode = &dvo->mode; >>> struct dvo_config *config = dvo->config; >>> diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c >>> index b8d942c..4648d1b 100644 >>> --- a/drivers/gpu/drm/sti/sti_gdp.c >>> +++ b/drivers/gpu/drm/sti/sti_gdp.c >>> @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) >>> * RETURNS: >>> * 0 on success. >>> */ >>> -int sti_gdp_field_cb(struct notifier_block *nb, >>> +static int sti_gdp_field_cb(struct notifier_block *nb, >>> unsigned long event, void *data) >>> { >>> struct sti_gdp *gdp = container_of(nb, struct sti_gdp, >>> vtg_field_nb); >>> diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c >>> b/drivers/gpu/drm/sti/sti_hqvdp.c >>> index b5ee783..7f0dea8 100644 >>> --- a/drivers/gpu/drm/sti/sti_hqvdp.c >>> +++ b/drivers/gpu/drm/sti/sti_hqvdp.c >>> @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) >>> * RETURNS: >>> * 0 on success. >>> */ >>> -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void >>> *data) >>> +static int >>> +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) >>> { >>> struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, >>> vtg_nb); >>> int btm_cmd_offset, top_cmd_offest; >>> @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct >>> drm_device *drm_dev, >>> return &hqvdp->plane.drm_plane; >>> } >>> >>> -int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) >>> +static int sti_hqvdp_bind(struct device *dev, struct device *master, void >>> *data) >>> { >>> struct sti_hqvdp *hqvdp = dev_get_drvdata(dev); >>> struct drm_device *drm_dev = data; >>> diff --git a/drivers/gpu/drm/sti/sti_mixer.c >>> b/drivers/gpu/drm/sti/sti_mixer.c >>> index 7d9aea8..b78cec5 100644 >>> --- a/drivers/gpu/drm/sti/sti_mixer.c >>> +++ b/drivers/gpu/drm/sti/sti_mixer.c >>> @@
Re: [PATCH] drm/sti: mark symbols static where possible
I think that create conflicts with what is already in Vincent pull request where we have fix the problem reported by coccicheck and sparse. https://lists.freedesktop.org/archives/dri-devel/2016-September/118892.html Benjamin 2016-09-27 18:35 GMT+02:00 Sean Paul : > On Sun, Sep 25, 2016 at 3:57 AM, Baoyou Xie wrote: >> We get 6 warnings when building kernel with W=1: >> drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for >> 'sti_mixer_set_matrix' [-Wmissing-prototypes] >> drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for >> 'dvo_awg_generate_code' [-Wmissing-prototypes] >> drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for >> 'sti_gdp_field_cb' [-Wmissing-prototypes] >> drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for >> 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] >> drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype for >> 'sti_hqvdp_bind' [-Wmissing-prototypes] >> drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for >> 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] >> >> In fact, these functions are only used in the file in which they are >> declared and don't need a declaration, but can be made static. >> So this patch marks these functions with 'static'. >> >> Signed-off-by: Baoyou Xie > > Applied to -misc, thanks. > > Sean > >> --- >> drivers/gpu/drm/sti/sti_drv.c | 2 +- >> drivers/gpu/drm/sti/sti_dvo.c | 3 ++- >> drivers/gpu/drm/sti/sti_gdp.c | 2 +- >> drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- >> drivers/gpu/drm/sti/sti_mixer.c | 2 +- >> 5 files changed, 8 insertions(+), 6 deletions(-) >> >> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c >> index 7cd3804..e6f0706 100644 >> --- a/drivers/gpu/drm/sti/sti_drv.c >> +++ b/drivers/gpu/drm/sti/sti_drv.c >> @@ -140,7 +140,7 @@ static int sti_drm_dbg_init(struct drm_minor *minor) >> return ret; >> } >> >> -void sti_drm_dbg_cleanup(struct drm_minor *minor) >> +static void sti_drm_dbg_cleanup(struct drm_minor *minor) >> { >> drm_debugfs_remove_files(sti_drm_dbg_list, >> ARRAY_SIZE(sti_drm_dbg_list), minor); >> diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c >> index 00881eb..4545ad0 100644 >> --- a/drivers/gpu/drm/sti/sti_dvo.c >> +++ b/drivers/gpu/drm/sti/sti_dvo.c >> @@ -106,7 +106,8 @@ struct sti_dvo_connector { >> container_of(x, struct sti_dvo_connector, drm_connector) >> >> #define BLANKING_LEVEL 16 >> -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) >> +static int >> +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) >> { >> struct drm_display_mode *mode = &dvo->mode; >> struct dvo_config *config = dvo->config; >> diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c >> index b8d942c..4648d1b 100644 >> --- a/drivers/gpu/drm/sti/sti_gdp.c >> +++ b/drivers/gpu/drm/sti/sti_gdp.c >> @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) >> * RETURNS: >> * 0 on success. >> */ >> -int sti_gdp_field_cb(struct notifier_block *nb, >> +static int sti_gdp_field_cb(struct notifier_block *nb, >> unsigned long event, void *data) >> { >> struct sti_gdp *gdp = container_of(nb, struct sti_gdp, vtg_field_nb); >> diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c >> b/drivers/gpu/drm/sti/sti_hqvdp.c >> index b5ee783..7f0dea8 100644 >> --- a/drivers/gpu/drm/sti/sti_hqvdp.c >> +++ b/drivers/gpu/drm/sti/sti_hqvdp.c >> @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) >> * RETURNS: >> * 0 on success. >> */ >> -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void >> *data) >> +static int >> +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) >> { >> struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, vtg_nb); >> int btm_cmd_offset, top_cmd_offest; >> @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct >> drm_device *drm_dev, >> return &hqvdp->plane.drm_plane; >> } >> >> -int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) >> +static int sti_hqvdp_bind(struct device *dev, struct device *master, void >> *data) >> { >> struct sti_hqvdp *hqvdp = dev_get_drvdata(dev); >> struct drm_device *drm_dev = data; >> diff --git a/drivers/gpu/drm/sti/sti_mixer.c >> b/drivers/gpu/drm/sti/sti_mixer.c >> index 7d9aea8..b78cec5 100644 >> --- a/drivers/gpu/drm/sti/sti_mixer.c >> +++ b/drivers/gpu/drm/sti/sti_mixer.c >> @@ -358,7 +358,7 @@ int sti_mixer_set_plane_status(struct sti_mixer *mixer, >> return 0; >> } >> >> -void sti_mixer_set_matrix(struct sti_mixer *mixer) >> +static void sti_mixer_set_matrix(struct sti_mixer *mixer) >> { >> unsigned int i; >> >> -- >> 2.7.4 >> -- Benjamin Gaignard Graphic Study Group Linaro.org
Re: [PATCH] drm/sti: mark symbols static where possible
On Sun, Sep 25, 2016 at 3:57 AM, Baoyou Xie wrote: > We get 6 warnings when building kernel with W=1: > drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for > 'sti_mixer_set_matrix' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for > 'dvo_awg_generate_code' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for > 'sti_gdp_field_cb' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for > 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype for > 'sti_hqvdp_bind' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for > 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] > > In fact, these functions are only used in the file in which they are > declared and don't need a declaration, but can be made static. > So this patch marks these functions with 'static'. > > Signed-off-by: Baoyou Xie Applied to -misc, thanks. Sean > --- > drivers/gpu/drm/sti/sti_drv.c | 2 +- > drivers/gpu/drm/sti/sti_dvo.c | 3 ++- > drivers/gpu/drm/sti/sti_gdp.c | 2 +- > drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- > drivers/gpu/drm/sti/sti_mixer.c | 2 +- > 5 files changed, 8 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c > index 7cd3804..e6f0706 100644 > --- a/drivers/gpu/drm/sti/sti_drv.c > +++ b/drivers/gpu/drm/sti/sti_drv.c > @@ -140,7 +140,7 @@ static int sti_drm_dbg_init(struct drm_minor *minor) > return ret; > } > > -void sti_drm_dbg_cleanup(struct drm_minor *minor) > +static void sti_drm_dbg_cleanup(struct drm_minor *minor) > { > drm_debugfs_remove_files(sti_drm_dbg_list, > ARRAY_SIZE(sti_drm_dbg_list), minor); > diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c > index 00881eb..4545ad0 100644 > --- a/drivers/gpu/drm/sti/sti_dvo.c > +++ b/drivers/gpu/drm/sti/sti_dvo.c > @@ -106,7 +106,8 @@ struct sti_dvo_connector { > container_of(x, struct sti_dvo_connector, drm_connector) > > #define BLANKING_LEVEL 16 > -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) > +static int > +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) > { > struct drm_display_mode *mode = &dvo->mode; > struct dvo_config *config = dvo->config; > diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c > index b8d942c..4648d1b 100644 > --- a/drivers/gpu/drm/sti/sti_gdp.c > +++ b/drivers/gpu/drm/sti/sti_gdp.c > @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) > * RETURNS: > * 0 on success. > */ > -int sti_gdp_field_cb(struct notifier_block *nb, > +static int sti_gdp_field_cb(struct notifier_block *nb, > unsigned long event, void *data) > { > struct sti_gdp *gdp = container_of(nb, struct sti_gdp, vtg_field_nb); > diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c > index b5ee783..7f0dea8 100644 > --- a/drivers/gpu/drm/sti/sti_hqvdp.c > +++ b/drivers/gpu/drm/sti/sti_hqvdp.c > @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) > * RETURNS: > * 0 on success. > */ > -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void > *data) > +static int > +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) > { > struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, vtg_nb); > int btm_cmd_offset, top_cmd_offest; > @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct > drm_device *drm_dev, > return &hqvdp->plane.drm_plane; > } > > -int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) > +static int sti_hqvdp_bind(struct device *dev, struct device *master, void > *data) > { > struct sti_hqvdp *hqvdp = dev_get_drvdata(dev); > struct drm_device *drm_dev = data; > diff --git a/drivers/gpu/drm/sti/sti_mixer.c b/drivers/gpu/drm/sti/sti_mixer.c > index 7d9aea8..b78cec5 100644 > --- a/drivers/gpu/drm/sti/sti_mixer.c > +++ b/drivers/gpu/drm/sti/sti_mixer.c > @@ -358,7 +358,7 @@ int sti_mixer_set_plane_status(struct sti_mixer *mixer, > return 0; > } > > -void sti_mixer_set_matrix(struct sti_mixer *mixer) > +static void sti_mixer_set_matrix(struct sti_mixer *mixer) > { > unsigned int i; > > -- > 2.7.4 >
[PATCH] drm/sti: mark symbols static where possible
We get 6 warnings when building kernel with W=1: drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for 'sti_mixer_set_matrix' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for 'dvo_awg_generate_code' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for 'sti_gdp_field_cb' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype for 'sti_hqvdp_bind' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] In fact, these functions are only used in the file in which they are declared and don't need a declaration, but can be made static. So this patch marks these functions with 'static'. Signed-off-by: Baoyou Xie --- drivers/gpu/drm/sti/sti_drv.c | 2 +- drivers/gpu/drm/sti/sti_dvo.c | 3 ++- drivers/gpu/drm/sti/sti_gdp.c | 2 +- drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- drivers/gpu/drm/sti/sti_mixer.c | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c index 7cd3804..e6f0706 100644 --- a/drivers/gpu/drm/sti/sti_drv.c +++ b/drivers/gpu/drm/sti/sti_drv.c @@ -140,7 +140,7 @@ static int sti_drm_dbg_init(struct drm_minor *minor) return ret; } -void sti_drm_dbg_cleanup(struct drm_minor *minor) +static void sti_drm_dbg_cleanup(struct drm_minor *minor) { drm_debugfs_remove_files(sti_drm_dbg_list, ARRAY_SIZE(sti_drm_dbg_list), minor); diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c index 00881eb..4545ad0 100644 --- a/drivers/gpu/drm/sti/sti_dvo.c +++ b/drivers/gpu/drm/sti/sti_dvo.c @@ -106,7 +106,8 @@ struct sti_dvo_connector { container_of(x, struct sti_dvo_connector, drm_connector) #define BLANKING_LEVEL 16 -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) +static int +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) { struct drm_display_mode *mode = &dvo->mode; struct dvo_config *config = dvo->config; diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c index b8d942c..4648d1b 100644 --- a/drivers/gpu/drm/sti/sti_gdp.c +++ b/drivers/gpu/drm/sti/sti_gdp.c @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) * RETURNS: * 0 on success. */ -int sti_gdp_field_cb(struct notifier_block *nb, +static int sti_gdp_field_cb(struct notifier_block *nb, unsigned long event, void *data) { struct sti_gdp *gdp = container_of(nb, struct sti_gdp, vtg_field_nb); diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c index b5ee783..7f0dea8 100644 --- a/drivers/gpu/drm/sti/sti_hqvdp.c +++ b/drivers/gpu/drm/sti/sti_hqvdp.c @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) * RETURNS: * 0 on success. */ -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) +static int +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) { struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, vtg_nb); int btm_cmd_offset, top_cmd_offest; @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct drm_device *drm_dev, return &hqvdp->plane.drm_plane; } -int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) +static int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) { struct sti_hqvdp *hqvdp = dev_get_drvdata(dev); struct drm_device *drm_dev = data; diff --git a/drivers/gpu/drm/sti/sti_mixer.c b/drivers/gpu/drm/sti/sti_mixer.c index 7d9aea8..b78cec5 100644 --- a/drivers/gpu/drm/sti/sti_mixer.c +++ b/drivers/gpu/drm/sti/sti_mixer.c @@ -358,7 +358,7 @@ int sti_mixer_set_plane_status(struct sti_mixer *mixer, return 0; } -void sti_mixer_set_matrix(struct sti_mixer *mixer) +static void sti_mixer_set_matrix(struct sti_mixer *mixer) { unsigned int i; -- 2.7.4
Re: [PATCH] drm/sti: mark symbols static where possible
Acked-by: Vincent Abriou On 09/15/2016 01:39 PM, Baoyou Xie wrote: > We get 4 warnings when building kernel with W=1: > drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for > 'sti_gdp_field_cb' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for > 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype for > 'sti_hqvdp_bind' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for > 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] > > In fact, these functions are only used in the file in which they are > declared and don't need a declaration, but can be made static. > So this patch marks these functions with 'static'. > > Signed-off-by: Baoyou Xie > --- > drivers/gpu/drm/sti/sti_drv.c | 2 +- > drivers/gpu/drm/sti/sti_gdp.c | 2 +- > drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- > 3 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c > index 7cd3804..e6f0706 100644 > --- a/drivers/gpu/drm/sti/sti_drv.c > +++ b/drivers/gpu/drm/sti/sti_drv.c > @@ -140,7 +140,7 @@ err: > return ret; > } > > -void sti_drm_dbg_cleanup(struct drm_minor *minor) > +static void sti_drm_dbg_cleanup(struct drm_minor *minor) > { > drm_debugfs_remove_files(sti_drm_dbg_list, >ARRAY_SIZE(sti_drm_dbg_list), minor); > diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c > index b8d942c..4648d1b 100644 > --- a/drivers/gpu/drm/sti/sti_gdp.c > +++ b/drivers/gpu/drm/sti/sti_gdp.c > @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) > * RETURNS: > * 0 on success. > */ > -int sti_gdp_field_cb(struct notifier_block *nb, > +static int sti_gdp_field_cb(struct notifier_block *nb, > unsigned long event, void *data) > { > struct sti_gdp *gdp = container_of(nb, struct sti_gdp, vtg_field_nb); > diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c > index b5ee783..7f0dea8 100644 > --- a/drivers/gpu/drm/sti/sti_hqvdp.c > +++ b/drivers/gpu/drm/sti/sti_hqvdp.c > @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) > * RETURNS: > * 0 on success. > */ > -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void > *data) > +static int > +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) > { > struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, vtg_nb); > int btm_cmd_offset, top_cmd_offest; > @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct > drm_device *drm_dev, > return &hqvdp->plane.drm_plane; > } > > -int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) > +static int sti_hqvdp_bind(struct device *dev, struct device *master, void > *data) > { > struct sti_hqvdp *hqvdp = dev_get_drvdata(dev); > struct drm_device *drm_dev = data; >
[PATCH] drm/sti: mark symbols static where possible
We get 4 warnings when building kernel with W=1: drivers/gpu/drm/sti/sti_gdp.c:476:5: warning: no previous prototype for 'sti_gdp_field_cb' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_hqvdp.c:786:5: warning: no previous prototype for 'sti_hqvdp_vtg_cb' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_hqvdp.c:1292:5: warning: no previous prototype for 'sti_hqvdp_bind' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_drv.c:143:6: warning: no previous prototype for 'sti_drm_dbg_cleanup' [-Wmissing-prototypes] In fact, these functions are only used in the file in which they are declared and don't need a declaration, but can be made static. So this patch marks these functions with 'static'. Signed-off-by: Baoyou Xie --- drivers/gpu/drm/sti/sti_drv.c | 2 +- drivers/gpu/drm/sti/sti_gdp.c | 2 +- drivers/gpu/drm/sti/sti_hqvdp.c | 5 +++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c index 7cd3804..e6f0706 100644 --- a/drivers/gpu/drm/sti/sti_drv.c +++ b/drivers/gpu/drm/sti/sti_drv.c @@ -140,7 +140,7 @@ err: return ret; } -void sti_drm_dbg_cleanup(struct drm_minor *minor) +static void sti_drm_dbg_cleanup(struct drm_minor *minor) { drm_debugfs_remove_files(sti_drm_dbg_list, ARRAY_SIZE(sti_drm_dbg_list), minor); diff --git a/drivers/gpu/drm/sti/sti_gdp.c b/drivers/gpu/drm/sti/sti_gdp.c index b8d942c..4648d1b 100644 --- a/drivers/gpu/drm/sti/sti_gdp.c +++ b/drivers/gpu/drm/sti/sti_gdp.c @@ -473,7 +473,7 @@ static void sti_gdp_disable(struct sti_gdp *gdp) * RETURNS: * 0 on success. */ -int sti_gdp_field_cb(struct notifier_block *nb, +static int sti_gdp_field_cb(struct notifier_block *nb, unsigned long event, void *data) { struct sti_gdp *gdp = container_of(nb, struct sti_gdp, vtg_field_nb); diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c index b5ee783..7f0dea8 100644 --- a/drivers/gpu/drm/sti/sti_hqvdp.c +++ b/drivers/gpu/drm/sti/sti_hqvdp.c @@ -783,7 +783,8 @@ static void sti_hqvdp_disable(struct sti_hqvdp *hqvdp) * RETURNS: * 0 on success. */ -int sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) +static int +sti_hqvdp_vtg_cb(struct notifier_block *nb, unsigned long evt, void *data) { struct sti_hqvdp *hqvdp = container_of(nb, struct sti_hqvdp, vtg_nb); int btm_cmd_offset, top_cmd_offest; @@ -1289,7 +1290,7 @@ static struct drm_plane *sti_hqvdp_create(struct drm_device *drm_dev, return &hqvdp->plane.drm_plane; } -int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) +static int sti_hqvdp_bind(struct device *dev, struct device *master, void *data) { struct sti_hqvdp *hqvdp = dev_get_drvdata(dev); struct drm_device *drm_dev = data; -- 2.7.4
Re: [PATCH] drm/sti: mark symbols static where possible
On 8 September 2016 at 10:56, Arnd Bergmann wrote: > On Thursday, September 8, 2016 10:35:17 AM CEST Emil Velikov wrote: >> On 7 September 2016 at 12:05, Baoyou Xie wrote: >> > We get 2 warnings when building kernel with W=1: >> As you're going through DRM I was wondering if you have a rough number >> of warnings we get at the various W levels 1,2,... > > I've looked at the W=1 warnings overall, and the count I got a > month ago was 648 warnings for drivers/gpu/:: > > 471 -Werror=missing-prototypes > 12 -Werror=type-limits > 124 -Werror=unused-but-set-variable > 41 -Werror=unused-const-variable= > > vs for the whole kernel > >2033 -Werror=missing-prototypes > 58 -Werror=suggest-attribute=format > 167 -Werror=type-limits >1398 -Werror=unused-but-set-variable >1526 -Werror=unused-const-variable= > > but that was after I had already fixed some of the other warnings > locally. It shouldn't be hard to fix all of them for any given > subsystem, often a single line change gets rid of a number > of individual warnings. > Considering the LOC in the kernel, the number are quite small. Still a fair bit to go. > My basic idea however is not to do it by subsystem but instead > do it one warning at a time for the entire kernel and then enable > that warning by default without W=1. > Makes perfect sense. Thanks Arnd ! Keep up the good work gents. Regards, Emil
Re: [PATCH] drm/sti: mark symbols static where possible
Acked-by: Benjamin Gaignard 2016-09-07 13:05 GMT+02:00 Baoyou Xie : > We get 2 warnings when building kernel with W=1: > drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for > 'sti_mixer_set_matrix' [-Wmissing-prototypes] > drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for > 'dvo_awg_generate_code' [-Wmissing-prototypes] > > In fact, these functions are only used in the file in which they are > declared and don't need a declaration, but can be made static. > So this patch marks these functions with 'static'. > > Signed-off-by: Baoyou Xie > --- > drivers/gpu/drm/sti/sti_dvo.c | 3 ++- > drivers/gpu/drm/sti/sti_mixer.c | 2 +- > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c > index 00881eb..4545ad0 100644 > --- a/drivers/gpu/drm/sti/sti_dvo.c > +++ b/drivers/gpu/drm/sti/sti_dvo.c > @@ -106,7 +106,8 @@ struct sti_dvo_connector { > container_of(x, struct sti_dvo_connector, drm_connector) > > #define BLANKING_LEVEL 16 > -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) > +static int > +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) > { > struct drm_display_mode *mode = &dvo->mode; > struct dvo_config *config = dvo->config; > diff --git a/drivers/gpu/drm/sti/sti_mixer.c b/drivers/gpu/drm/sti/sti_mixer.c > index 7d9aea8..b78cec5 100644 > --- a/drivers/gpu/drm/sti/sti_mixer.c > +++ b/drivers/gpu/drm/sti/sti_mixer.c > @@ -358,7 +358,7 @@ int sti_mixer_set_plane_status(struct sti_mixer *mixer, > return 0; > } > > -void sti_mixer_set_matrix(struct sti_mixer *mixer) > +static void sti_mixer_set_matrix(struct sti_mixer *mixer) > { > unsigned int i; > > -- > 2.7.4 > -- Benjamin Gaignard Graphic Study Group Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
Re: [PATCH] drm/sti: mark symbols static where possible
On Thursday, September 8, 2016 10:35:17 AM CEST Emil Velikov wrote: > On 7 September 2016 at 12:05, Baoyou Xie wrote: > > We get 2 warnings when building kernel with W=1: > As you're going through DRM I was wondering if you have a rough number > of warnings we get at the various W levels 1,2,... I've looked at the W=1 warnings overall, and the count I got a month ago was 648 warnings for drivers/gpu/:: 471 -Werror=missing-prototypes 12 -Werror=type-limits 124 -Werror=unused-but-set-variable 41 -Werror=unused-const-variable= vs for the whole kernel 2033 -Werror=missing-prototypes 58 -Werror=suggest-attribute=format 167 -Werror=type-limits 1398 -Werror=unused-but-set-variable 1526 -Werror=unused-const-variable= but that was after I had already fixed some of the other warnings locally. It shouldn't be hard to fix all of them for any given subsystem, often a single line change gets rid of a number of individual warnings. My basic idea however is not to do it by subsystem but instead do it one warning at a time for the entire kernel and then enable that warning by default without W=1. > Hope you'll have the time/interest to sort some of the W>1 ones as well I suggested to Baoyou that he starts looking at missing-prototype warnings across the kernel, as these are likely to find the most actual bugs out of the W=1 warnings we get. Arnd
Re: [PATCH] drm/sti: mark symbols static where possible
[Trimming down the CC list] Hi Baoyou, On 7 September 2016 at 12:05, Baoyou Xie wrote: > We get 2 warnings when building kernel with W=1: As you're going through DRM I was wondering if you have a rough number of warnings we get at the various W levels 1,2,... Hope you'll have the time/interest to sort some of the W>1 ones as well :-) Thanks Emil
[PATCH] drm/sti: mark symbols static where possible
We get 2 warnings when building kernel with W=1: drivers/gpu/drm/sti/sti_mixer.c:361:6: warning: no previous prototype for 'sti_mixer_set_matrix' [-Wmissing-prototypes] drivers/gpu/drm/sti/sti_dvo.c:109:5: warning: no previous prototype for 'dvo_awg_generate_code' [-Wmissing-prototypes] In fact, these functions are only used in the file in which they are declared and don't need a declaration, but can be made static. So this patch marks these functions with 'static'. Signed-off-by: Baoyou Xie --- drivers/gpu/drm/sti/sti_dvo.c | 3 ++- drivers/gpu/drm/sti/sti_mixer.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/sti/sti_dvo.c b/drivers/gpu/drm/sti/sti_dvo.c index 00881eb..4545ad0 100644 --- a/drivers/gpu/drm/sti/sti_dvo.c +++ b/drivers/gpu/drm/sti/sti_dvo.c @@ -106,7 +106,8 @@ struct sti_dvo_connector { container_of(x, struct sti_dvo_connector, drm_connector) #define BLANKING_LEVEL 16 -int dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) +static int +dvo_awg_generate_code(struct sti_dvo *dvo, u8 *ram_size, u32 *ram_code) { struct drm_display_mode *mode = &dvo->mode; struct dvo_config *config = dvo->config; diff --git a/drivers/gpu/drm/sti/sti_mixer.c b/drivers/gpu/drm/sti/sti_mixer.c index 7d9aea8..b78cec5 100644 --- a/drivers/gpu/drm/sti/sti_mixer.c +++ b/drivers/gpu/drm/sti/sti_mixer.c @@ -358,7 +358,7 @@ int sti_mixer_set_plane_status(struct sti_mixer *mixer, return 0; } -void sti_mixer_set_matrix(struct sti_mixer *mixer) +static void sti_mixer_set_matrix(struct sti_mixer *mixer) { unsigned int i; -- 2.7.4