diff mbox

gpio: make GPIO_OMAP bool instead of tristate

Message ID 1444132871-25798-1-git-send-email-sudipm.mukherjee@gmail.com
State New
Headers show

Commit Message

Sudip Mukherjee Oct. 6, 2015, 12:01 p.m. UTC
While building arm allmodconfig the build fails with the error:
ERROR: "handle_bad_irq" [drivers/gpio/gpio-omap.ko] undefined!

The build breaks as handle_bad_irq is not exported for module use.

Fixes: 450fa54cfd66 ("gpio: omap: convert to use generic irq handler")
Cc: Tony Lindgren <tony@atomide.com>
Cc: Austin Schuh <austin@peloton-tech.com>
Cc: Grygorii Strashko <grygorii.strashko@ti.com>
Cc: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
---

Same problem for pinctrl was fixed by
5ba341604a054294aeb812603349bba024d716ee

And for your reference:
https://lkml.org/lkml/2014/2/25/278

 drivers/gpio/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Grygorii Strashko Oct. 6, 2015, 8:45 p.m. UTC | #1
On 10/06/2015 07:01 AM, Sudip Mukherjee wrote:
> While building arm allmodconfig the build fails with the error:
> ERROR: "handle_bad_irq" [drivers/gpio/gpio-omap.ko] undefined!
> 
> The build breaks as handle_bad_irq is not exported for module use.

Not sure if this is right thing to do. We really want it to be a module if needed.

The handle_bad_irq() was used in this driver to catch the case when Omap
GPIO IRQ is enabled before calling .irq_set_type()   

I think there are few option:
- export handle_bad_irq()
- pass NULL in gpiochip_irqchip_add() instead of handle_bad_irq()
- use handle_simple_irq()
- revert this change

Thought second one should work. 
> 
> Fixes: 450fa54cfd66 ("gpio: omap: convert to use generic irq handler")
> Cc: Tony Lindgren <tony@atomide.com>
> Cc: Austin Schuh <austin@peloton-tech.com>
> Cc: Grygorii Strashko <grygorii.strashko@ti.com>
> Cc: Santosh Shilimkar <ssantosh@kernel.org>
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> ---
> 
> Same problem for pinctrl was fixed by
> 5ba341604a054294aeb812603349bba024d716ee
> 
> And for your reference:
> https://lkml.org/lkml/2014/2/25/278
> 
>   drivers/gpio/Kconfig | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
> index 63000b1..d910fd1 100644
> --- a/drivers/gpio/Kconfig
> +++ b/drivers/gpio/Kconfig
> @@ -330,7 +330,7 @@ config GPIO_OCTEON
>   	  family of SOCs.
>   
>   config GPIO_OMAP
> -	tristate "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST
> +	bool "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST
>   	default y if ARCH_OMAP
>   	depends on ARM
>   	select GENERIC_IRQ_CHIP
>
Sudip Mukherjee Oct. 7, 2015, 7:27 a.m. UTC | #2
On Tue, Oct 06, 2015 at 03:45:07PM -0500, Grygorii Strashko wrote:
> On 10/06/2015 07:01 AM, Sudip Mukherjee wrote:
> > While building arm allmodconfig the build fails with the error:
> > ERROR: "handle_bad_irq" [drivers/gpio/gpio-omap.ko] undefined!
> > 
> > The build breaks as handle_bad_irq is not exported for module use.
> 
> Not sure if this is right thing to do. We really want it to be a module if needed.
> 
> The handle_bad_irq() was used in this driver to catch the case when Omap
> GPIO IRQ is enabled before calling .irq_set_type()   
> 
> I think there are few option:
> - export handle_bad_irq()
> - pass NULL in gpiochip_irqchip_add() instead of handle_bad_irq()
> - use handle_simple_irq()
> - revert this change
> 
> Thought second one should work. 

I think that should be ok. If you want me to test the patch in my setup
to verify that it fixes the build failure please let me know.

But going through the old thread it looked like plan was on to
export handle_bad_irq() atleast thats what looks like from Linus's
(Linus Walleij) reply in https://lkml.org/lkml/2014/2/25/119

regards
sudip
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Grygorii Strashko Oct. 7, 2015, 7:19 p.m. UTC | #3
On 10/07/2015 02:27 AM, Sudip Mukherjee wrote:
> On Tue, Oct 06, 2015 at 03:45:07PM -0500, Grygorii Strashko wrote:
>> On 10/06/2015 07:01 AM, Sudip Mukherjee wrote:
>>> While building arm allmodconfig the build fails with the error:
>>> ERROR: "handle_bad_irq" [drivers/gpio/gpio-omap.ko] undefined!
>>>
>>> The build breaks as handle_bad_irq is not exported for module use.
>>
>> Not sure if this is right thing to do. We really want it to be a module if needed.
>>
>> The handle_bad_irq() was used in this driver to catch the case when Omap
>> GPIO IRQ is enabled before calling .irq_set_type()
>>
>> I think there are few option:
>> - export handle_bad_irq()
>> - pass NULL in gpiochip_irqchip_add() instead of handle_bad_irq()
>> - use handle_simple_irq()
>> - revert this change
>>
>> Thought second one should work.
>
> I think that should be ok. If you want me to test the patch in my setup
> to verify that it fixes the build failure please let me know.
>
> But going through the old thread it looked like plan was on to
> export handle_bad_irq() atleast thats what looks like from Linus's
> (Linus Walleij) reply in https://lkml.org/lkml/2014/2/25/119

There is patch from Arnd which implements option one.
https://lkml.org/lkml/2015/10/6/836
Linus Walleij Oct. 16, 2015, 3:08 p.m. UTC | #4
On Tue, Oct 6, 2015 at 2:01 PM, Sudip Mukherjee
<sudipm.mukherjee@gmail.com> wrote:

> While building arm allmodconfig the build fails with the error:
> ERROR: "handle_bad_irq" [drivers/gpio/gpio-omap.ko] undefined!
>
> The build breaks as handle_bad_irq is not exported for module use.
>
> Fixes: 450fa54cfd66 ("gpio: omap: convert to use generic irq handler")
> Cc: Tony Lindgren <tony@atomide.com>
> Cc: Austin Schuh <austin@peloton-tech.com>
> Cc: Grygorii Strashko <grygorii.strashko@ti.com>
> Cc: Santosh Shilimkar <ssantosh@kernel.org>
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>

Fixed upstream. Dropping this patch.

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 63000b1..d910fd1 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -330,7 +330,7 @@  config GPIO_OCTEON
 	  family of SOCs.
 
 config GPIO_OMAP
-	tristate "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST
+	bool "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST
 	default y if ARCH_OMAP
 	depends on ARM
 	select GENERIC_IRQ_CHIP