From: Dmitry Artamonow <mad_soft@inbox.ru>
To: Samuel Ortiz <sameo@linux.intel.com>
Cc: Dmitry Artamonow <mad_soft@inbox.ru>,
Paul Parsons <lost.distance@yahoo.com>,
Philipp Zabel <philipp.zabel@gmail.com>,
linux-kernel@vger.kernel.org
Subject: [PATCH] mfd: asic3: fix asic3_gpio_to_irq
Date: Thu, 12 Apr 2012 15:33:34 +0400 [thread overview]
Message-ID: <1334230414-1768-1-git-send-email-mad_soft@inbox.ru> (raw)
Assumption that irq numbers of asic3 gpios start at
IRQ_BOARD_START is certainly wrong - driver may as well
use any other base for its irqs (consider for example
the imaginary case of two ASIC3 chips onboard)
Furthermore, some platforms even don't have IRQ_BOARD_START
defined, so driver will fail to build on them:
-------------------------------------------------------
drivers/mfd/asic3.c: In function 'asic3_gpio_to_irq':
drivers/mfd/asic3.c:530: error: 'IRQ_BOARD_START' undeclared (first use in this function)
drivers/mfd/asic3.c:530: error: (Each undeclared identifier is reported only once
drivers/mfd/asic3.c:530: error: for each function it appears in.)
-------------------------------------------------------
Fix it by using irq_base from driver data.
Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
---
drivers/mfd/asic3.c | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
For reference: the build failure above can be reproduced
for example when building kernel for some StrongARM
machine, say:
make h3600_defconfig
make menuconfig #enable CONFIG_MFD_ASIC3
make
diff --git a/drivers/mfd/asic3.c b/drivers/mfd/asic3.c
index 1895cf9..1582c3d 100644
--- a/drivers/mfd/asic3.c
+++ b/drivers/mfd/asic3.c
@@ -527,7 +527,9 @@ static void asic3_gpio_set(struct gpio_chip *chip,
static int asic3_gpio_to_irq(struct gpio_chip *chip, unsigned offset)
{
- return (offset < ASIC3_NUM_GPIOS) ? IRQ_BOARD_START + offset : -ENXIO;
+ struct asic3 *asic = container_of(chip, struct asic3, gpio);
+
+ return (offset < ASIC3_NUM_GPIOS) ? asic->irq_base + offset : -ENXIO;
}
static __init int asic3_gpio_probe(struct platform_device *pdev,
--
1.7.5.1.300.gc565c
next reply other threads:[~2012-04-12 11:33 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-12 11:33 Dmitry Artamonow [this message]
2012-04-16 16:58 ` Samuel Ortiz
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=1334230414-1768-1-git-send-email-mad_soft@inbox.ru \
--to=mad_soft@inbox.ru \
--cc=linux-kernel@vger.kernel.org \
--cc=lost.distance@yahoo.com \
--cc=philipp.zabel@gmail.com \
--cc=sameo@linux.intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®