Re: [PATCH 5/9] gpio: vf610: Extend with wakeup support

From: Lucas Stach
Date: Wed Sep 24 2014 - 06:06:43 EST


Hi Stefan,

Am Montag, den 22.09.2014, 19:09 +0200 schrieb Stefan Agner:
> Support Vybrid GPIO's as wakeup source by requesting the parent
> IRQ as wakeup IRQ.
>
> Signed-off-by: Stefan Agner <stefan@xxxxxxxx>
> ---
> drivers/gpio/gpio-vf610.c | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
> diff --git a/drivers/gpio/gpio-vf610.c b/drivers/gpio/gpio-vf610.c
> index 5f59424..50326af 100644
> --- a/drivers/gpio/gpio-vf610.c
> +++ b/drivers/gpio/gpio-vf610.c
> @@ -196,12 +196,28 @@ static void vf610_gpio_irq_unmask(struct irq_data *d)
> pcr_base);
> }
>
> +static int vf610_gpio_irq_set_wake(struct irq_data *d, u32 enable)
> +{
> + struct vf610_gpio_port *port = irq_data_get_irq_chip_data(d);
> +
> + if (enable)
> + enable_irq_wake(port->irq);
> + else
> + disable_irq_wake(port->irq);
> +
> + return 0;
> +}
> +
> +
> static struct irq_chip vf610_gpio_irq_chip = {
> .name = "gpio-vf610",
> .irq_ack = vf610_gpio_irq_ack,
> .irq_mask = vf610_gpio_irq_mask,
> .irq_unmask = vf610_gpio_irq_unmask,
> .irq_set_type = vf610_gpio_irq_set_type,
> +#ifdef CONFIG_PM_SLEEP
> + .irq_set_wake = vf610_gpio_irq_set_wake,
> +#endif

Either you need to get rid of this #ifdef and always assign this
function or you need to wrap the function itself into the same #ifdef.
Otherwise you provoke a unused function warning with !CONFIG_PM_SLEEP.

Given that this function isn't really that big I would argue to just
drop the #ifdef.

Regards,
Lucas

--
Pengutronix e.K. | Lucas Stach |
Industrial Linux Solutions | http://www.pengutronix.de/ |

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/