diff mbox

[balbi-usb:testing/next,57/84] drivers/usb/dwc3/dwc3-st.c:328:2: error: implicit declaration of function 'pinctrl_pm_select_sleep_state'

Message ID 87funvry7k.fsf@linux.intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Felipe Balbi Oct. 17, 2016, 11:50 a.m. UTC
Hi,

kbuild test robot <fengguang.wu@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:



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?

Comments

Linus Walleij Oct. 21, 2016, 12:15 p.m. UTC | #1
On Mon, Oct 17, 2016 at 1:50 PM, Felipe Balbi
<felipe.balbi@linux.intel.com> wrote:

> kbuild test robot <fengguang.wu@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:

I don't think so, that include file looks pretty solid.

I think the actual problem is that dwc3-st.c doesn't
#include <linux/pinctrl/consumer.h> even if it is using the
functions from it.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Felipe Balbi Oct. 21, 2016, 12:29 p.m. UTC | #2
Hi,

Linus Walleij <linus.walleij@linaro.org> writes:
> On Mon, Oct 17, 2016 at 1:50 PM, Felipe Balbi
> <felipe.balbi@linux.intel.com> wrote:
>
>> kbuild test robot <fengguang.wu@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:
>
> I don't think so, that include file looks pretty solid.
>
> I think the actual problem is that dwc3-st.c doesn't
> #include <linux/pinctrl/consumer.h> even if it is using the
> functions from it.

Oh, I missed that there was already a stub further down the
file. Indeed, we need to add a patch to dwc3-st.c.

Sorry for the noise.
diff mbox

Patch

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)
 {