From: Anton Vorontsov <avorontsov@ru.mvista.com>
To: David Brownell <david-b@pacbell.net>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [PATCH] gpio: fix build errors for drivers not strictly requiring GPIOs
Date: Fri, 30 May 2008 16:06:52 +0400 [thread overview]
Message-ID: <20080530120652.GA1286@polina.dev.rtsoft.ru> (raw)
In-Reply-To: <200805292028.10906.david-b@pacbell.net>
On Thu, May 29, 2008 at 08:28:10PM -0700, David Brownell wrote:
> On Tuesday 27 May 2008, Anton Vorontsov wrote:
> > Since commit 7560fa60fcdcdb0da662f6a9fad9064b554ef46c (gpio: <linux/gpio.h>
> > and "no GPIO support here" stubs) drivers can use GPIOs if they're available,
> > but don't require them.
> >
> > This patch actually enables this feature, otherwise drivers will stumble
> > against this:
> >
> > include/asm-generic/gpio.h:111: error: redefinition of 'gpio_is_valid'
> > include/linux/gpio.h:21: error: previous definition of 'gpio_is_valid' was here
>
> This looks to me like pure user error ... what was anyone doing
> including <asm-generic/gpio.h> in that way? There are a *lot* of
> bogus include combinations, and we don't try to "fix" them.
This is true, partially. I saw these errors for the drivers using
linux/of_gpio.h, it includes asm/gpio.h, which includes
asm-generic/gpio.h (I submitted of_gpio.h patch before linux/gpio.h work,
though git log might say otherwise). And yes, I should fix of_gpio.h too.
The thing is, I always thought that it is _good_ practice for the nested
headers to declare/define things conditionally by themselves. That way
you'll not have to fix all combinations, everything will (should) just
work. I.e.
#include <linux/of_gpio.h>
#include <asm-generic/gpio.h>
#include <asm/gpio.h>
#include <linux/gpio.h>
^^ This insanity will work.
Though with current headers, you'll easily catch the bogus users of
the asm/gpio.h thus will discipline the users, that might be a plus
too... ;-)
--
Anton Vorontsov
email: cbouatmailru@gmail.com
irc://irc.freenode.net/bd2
prev parent reply other threads:[~2008-05-30 12:07 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-27 14:20 [PATCH] gpio: fix build errors for drivers not strictly requiring GPIOs Anton Vorontsov
2008-05-30 3:28 ` David Brownell
2008-05-30 12:06 ` Anton Vorontsov [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080530120652.GA1286@polina.dev.rtsoft.ru \
--to=avorontsov@ru.mvista.com \
--cc=david-b@pacbell.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.