gpio: sx150x: Fix compile issue when CONFIG_OF_GPIO is not defined
diff mbox

Message ID 1421973429-9663-1-git-send-email-mopsfelder@gmail.com
State New
Headers show

Commit Message

Murilo Opsfelder Araújo Jan. 23, 2015, 12:37 a.m. UTC
Without this patch, the compilation of gpio-sx150x.c fails because
struct gpio_chip members 'of_node' and 'of_gpio_n_cells' do not exist
when CONFIG_OF_GPIO is not defined:

drivers/gpio/gpio-sx150x.c: In function ‘sx150x_init_chip’:
drivers/gpio/gpio-sx150x.c:487:17: error: ‘struct gpio_chip’ has no member named ‘of_node’
  chip->gpio_chip.of_node          = client->dev.of_node;
                 ^
drivers/gpio/gpio-sx150x.c:488:17: error: ‘struct gpio_chip’ has no member named ‘of_gpio_n_cells’
  chip->gpio_chip.of_gpio_n_cells  = 2;
                 ^

This issue was introduced by the commit
04d2264c3bf07f5c3d18165ba78de0a93360c6c0 "gpio: sx150x: add dts support for sx150x driver".

Signed-off-by: Murilo Opsfelder Araujo <mopsfelder@gmail.com>
---
 drivers/gpio/gpio-sx150x.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Alexandre Courbot Jan. 23, 2015, 12:45 a.m. UTC | #1
On Fri, Jan 23, 2015 at 9:37 AM, Murilo Opsfelder Araujo
<mopsfelder@gmail.com> wrote:
> Without this patch, the compilation of gpio-sx150x.c fails because
> struct gpio_chip members 'of_node' and 'of_gpio_n_cells' do not exist
> when CONFIG_OF_GPIO is not defined:
>
> drivers/gpio/gpio-sx150x.c: In function ‘sx150x_init_chip’:
> drivers/gpio/gpio-sx150x.c:487:17: error: ‘struct gpio_chip’ has no member named ‘of_node’
>   chip->gpio_chip.of_node          = client->dev.of_node;
>                  ^
> drivers/gpio/gpio-sx150x.c:488:17: error: ‘struct gpio_chip’ has no member named ‘of_gpio_n_cells’
>   chip->gpio_chip.of_gpio_n_cells  = 2;
>                  ^
>
> This issue was introduced by the commit
> 04d2264c3bf07f5c3d18165ba78de0a93360c6c0 "gpio: sx150x: add dts support for sx150x driver".
>
> Signed-off-by: Murilo Opsfelder Araujo <mopsfelder@gmail.com>
> ---
>  drivers/gpio/gpio-sx150x.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpio/gpio-sx150x.c b/drivers/gpio/gpio-sx150x.c
> index 88012e2..b1e2f1c 100644
> --- a/drivers/gpio/gpio-sx150x.c
> +++ b/drivers/gpio/gpio-sx150x.c
> @@ -484,8 +484,10 @@ static void sx150x_init_chip(struct sx150x_chip *chip,
>         chip->gpio_chip.base             = pdata->gpio_base;
>         chip->gpio_chip.can_sleep        = true;
>         chip->gpio_chip.ngpio            = chip->dev_cfg->ngpios;
> +#ifdef CONFIG_OF_GPIO
>         chip->gpio_chip.of_node          = client->dev.of_node;
>         chip->gpio_chip.of_gpio_n_cells  = 2;
> +#endif
>         if (pdata->oscio_is_gpo)
>                 ++chip->gpio_chip.ngpio;

Linus just sent a patch to fix this, see
http://patchwork.ozlabs.org/patch/431704/
--
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
Murilo Opsfelder Araújo Jan. 23, 2015, 12:58 a.m. UTC | #2
On Thu, Jan 22, 2015 at 10:45 PM, Alexandre Courbot <gnurou@gmail.com> wrote:
[...]
> Linus just sent a patch to fix this, see
> http://patchwork.ozlabs.org/patch/431704/

Nice to know it has already been addressed.  Thanks for the link, Alexandre.

Patch
diff mbox

diff --git a/drivers/gpio/gpio-sx150x.c b/drivers/gpio/gpio-sx150x.c
index 88012e2..b1e2f1c 100644
--- a/drivers/gpio/gpio-sx150x.c
+++ b/drivers/gpio/gpio-sx150x.c
@@ -484,8 +484,10 @@  static void sx150x_init_chip(struct sx150x_chip *chip,
 	chip->gpio_chip.base             = pdata->gpio_base;
 	chip->gpio_chip.can_sleep        = true;
 	chip->gpio_chip.ngpio            = chip->dev_cfg->ngpios;
+#ifdef CONFIG_OF_GPIO
 	chip->gpio_chip.of_node          = client->dev.of_node;
 	chip->gpio_chip.of_gpio_n_cells  = 2;
+#endif
 	if (pdata->oscio_is_gpo)
 		++chip->gpio_chip.ngpio;