Hi,

kbuild test robot <fengguang...@intel.com> writes:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git 
> testing/next
> head:   4281ef86fae986e0a9bb553fb311fe6d8e039118
> commit: 040f47e7330045feaa8c06bf2900db2eb2038e80 [57/84] usb: dwc3: Kconfig: 
> allow all glues to build if COMPILE_TEST
> config: blackfin-allmodconfig (attached as .config)
> compiler: bfin-uclinux-gcc (GCC) 6.2.0
> reproduce:
>         wget 
> https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross
>  -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         git checkout 040f47e7330045feaa8c06bf2900db2eb2038e80
>         # save the attached .config to linux build tree
>         make.cross ARCH=blackfin 
>
> All errors (new ones prefixed by >>):
>
>    drivers/usb/dwc3/dwc3-st.c: In function 'st_dwc3_suspend':
>>> drivers/usb/dwc3/dwc3-st.c:328:2: error: implicit declaration of function 
>>> 'pinctrl_pm_select_sleep_state' [-Werror=implicit-function-declaration]
>      pinctrl_pm_select_sleep_state(dev);
>      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    drivers/usb/dwc3/dwc3-st.c: In function 'st_dwc3_resume':
>>> drivers/usb/dwc3/dwc3-st.c:338:2: error: implicit declaration of function 
>>> 'pinctrl_pm_select_default_state' [-Werror=implicit-function-declaration]
>      pinctrl_pm_select_default_state(dev);
>      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    cc1: some warnings being treated as errors

looks like a bug in <linux/pinctrl/consumer.h>. Something along the
lines of below should be enough:

diff --git a/include/linux/pinctrl/consumer.h b/include/linux/pinctrl/consumer.h
index d7e5d608faa7..c8aa03aa1c42 100644
--- a/include/linux/pinctrl/consumer.h
+++ b/include/linux/pinctrl/consumer.h
@@ -44,7 +44,9 @@ extern void devm_pinctrl_put(struct pinctrl *p);
 extern int pinctrl_pm_select_default_state(struct device *dev);
 extern int pinctrl_pm_select_sleep_state(struct device *dev);
 extern int pinctrl_pm_select_idle_state(struct device *dev);
-#else
+#endif
+
+#else /* !CONFIG_PINCTRL */
 static inline int pinctrl_pm_select_default_state(struct device *dev)
 {
        return 0;
@@ -57,9 +59,6 @@ static inline int pinctrl_pm_select_idle_state(struct device 
*dev)
 {
        return 0;
 }
-#endif
-
-#else /* !CONFIG_PINCTRL */
 
 static inline int pinctrl_request_gpio(unsigned gpio)
 {


Linus, do you want me to send this as a proper patch? It's pretty clear
that currently we can have build regressions with these helpers. Was it
a conscious choice to not provide stubs or just a slip?

-- 
balbi

Attachment: signature.asc
Description: PGP signature

Reply via email to