lkml.org 
[lkml]   [2018]   [Feb]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[4.4-stable 01/22] gpio: xgene: mark PM functions as __maybe_unused
    Date
    When CONFIG_PM_SLEEP is disabled, we get a warning about unused functions:

    drivers/gpio/gpio-xgene.c:155:12: warning: 'xgene_gpio_resume' defined but not used [-Wunused-function]
    static int xgene_gpio_resume(struct device *dev)
    ^~~~~~~~~~~~~~~~~
    drivers/gpio/gpio-xgene.c:142:12: warning: 'xgene_gpio_suspend' defined but not used [-Wunused-function]
    static int xgene_gpio_suspend(struct device *dev)

    The warnings are harmless and can be avoided by simplifying the code and marking
    the functions as __maybe_unused.

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    (cherry picked from commit b115bebc07f282067eccc06fd5aa3060ab1426da)
    [arnd: backported to 4.4-stable]
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    ---
    drivers/gpio/gpio-xgene.c | 13 +++----------
    1 file changed, 3 insertions(+), 10 deletions(-)

    diff --git a/drivers/gpio/gpio-xgene.c b/drivers/gpio/gpio-xgene.c
    index 18a8182d4fec..7f1f32324504 100644
    --- a/drivers/gpio/gpio-xgene.c
    +++ b/drivers/gpio/gpio-xgene.c
    @@ -42,9 +42,7 @@ struct xgene_gpio {
    struct gpio_chip chip;
    void __iomem *base;
    spinlock_t lock;
    -#ifdef CONFIG_PM
    u32 set_dr_val[XGENE_MAX_GPIO_BANKS];
    -#endif
    };

    static inline struct xgene_gpio *to_xgene_gpio(struct gpio_chip *chip)
    @@ -132,8 +130,7 @@ static int xgene_gpio_dir_out(struct gpio_chip *gc,
    return 0;
    }

    -#ifdef CONFIG_PM
    -static int xgene_gpio_suspend(struct device *dev)
    +static __maybe_unused int xgene_gpio_suspend(struct device *dev)
    {
    struct xgene_gpio *gpio = dev_get_drvdata(dev);
    unsigned long bank_offset;
    @@ -146,7 +143,7 @@ static int xgene_gpio_suspend(struct device *dev)
    return 0;
    }

    -static int xgene_gpio_resume(struct device *dev)
    +static __maybe_unused int xgene_gpio_resume(struct device *dev)
    {
    struct xgene_gpio *gpio = dev_get_drvdata(dev);
    unsigned long bank_offset;
    @@ -160,10 +157,6 @@ static int xgene_gpio_resume(struct device *dev)
    }

    static SIMPLE_DEV_PM_OPS(xgene_gpio_pm, xgene_gpio_suspend, xgene_gpio_resume);
    -#define XGENE_GPIO_PM_OPS (&xgene_gpio_pm)
    -#else
    -#define XGENE_GPIO_PM_OPS NULL
    -#endif

    static int xgene_gpio_probe(struct platform_device *pdev)
    {
    @@ -230,7 +223,7 @@ static struct platform_driver xgene_gpio_driver = {
    .driver = {
    .name = "xgene-gpio",
    .of_match_table = xgene_gpio_of_match,
    - .pm = XGENE_GPIO_PM_OPS,
    + .pm = &xgene_gpio_pm,
    },
    .probe = xgene_gpio_probe,
    .remove = xgene_gpio_remove,
    --
    2.9.0
    \
     
     \ /
      Last update: 2018-02-20 12:58    [W:4.426 / U:0.380 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site