From: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
To: Anton Vorontsov <avorontsov@ru.mvista.com>
Cc: linux-kernel@vger.kernel.org, David Vrabel <david.vrabel@csr.com>,
Greg Kroah-Hartman <gregkh@suse.de>,
David Brownell <dbrownell@users.sourceforge.net>,
Grant Likely <grant.likely@secretlab.ca>,
Kumar Gala <galak@kernel.crashing.org>,
Andrew Morton <akpm@linux-foundation.org>,
spi-devel-general@lists.sourceforge.net,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [PATCH 6/7] spi/mpc8xxx: don't check platform_get_irq's return value against zero
Date: Thu, 17 Dec 2009 14:05:49 +0100 [thread overview]
Message-ID: <20091217130549.GA9032@pengutronix.de> (raw)
In-Reply-To: <20091216193745.GA20429@oksana.dev.rtsoft.ru>
Hi Anton,
On Wed, Dec 16, 2009 at 10:37:45PM +0300, Anton Vorontsov wrote:
> On Wed, Dec 16, 2009 at 08:18:39PM +0100, Uwe Kleine-König wrote:
> [...]
> > > > I'm a bit annoyed as this is the third time[1] this month this irq0
> > > > discussion pops up for me. I think people see that irq0 is involved
> > > > somehow, start wailing and stop seeing the issues being fixed.
> > >
> > > For this particular driver, there is NO issue whatsoever. It is
> > > only used for PowerPC, which has VIRQ0 == invalid IRQ. And note
> > > that there still could be HWIRQ0 on PowerPC, but it is *never*
> > > mapped to VIRQ0.
> > Yes, there is an issue. If the platform device doesn't have a resource
> > specifing the irq, platform_get_irq returns -ENXIO. So in the driver
> > (unsigned)(-ENXIO) is passed to mpc8xxx_spi_probe as (!(-ENXIO)) is
> > false and so the error isn't catched.
>
> If you look into how we create the platform device, you'll notice
> that -ENXIO isn't possible.
> It's in arch/powerpc/platforms/83xx/mpc832x_rdb.c:of_fsl_spi_probe(),
> which is a legacy interface that I'd like to be removed anyway.
>
> Though, if you want to fix the inconsistency in the platform device
> API, then I'd suggest to fix the platform_get_irq(). The driver itself
> is correct.
With platform_get_irq as it is today, the check in
irq = platform_get_irq(pdev, 0);
if (!irq)
return -EINVAL;
is non-sense as !irq always evaluates to 0. If your argue that the
resources are right, then the logical consequence is to strip down
plat_mpc8xxx_spi_probe to just
struct spi_master *master;
master = mpc8xxx_spi_probe(&pdev->dev,
platform_get_resource(pdev, IORESOURCE_MEM, 0)
platform_get_irq(pdev, 0));
if (IS_ERR(master))
return PTR_ERR(master);
return 0;
Best regards
Uwe
--
Pengutronix e.K. | Uwe Kleine-König |
Industrial Linux Solutions | http://www.pengutronix.de/ |
next prev parent reply other threads:[~2009-12-17 13:05 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-16 16:10 [PATCH 1/7] [AVR32] don't check platform_get_irq's return value against zero Uwe Kleine-König
2009-12-16 16:10 ` [PATCH 2/7] V4L/DVB mx1_camera: " Uwe Kleine-König
2009-12-16 16:10 ` [PATCH 3/7] V4L/DVB sh_mobile_ceu: " Uwe Kleine-König
2009-12-16 16:10 ` [PATCH 4/7] can/at91: " Uwe Kleine-König
2009-12-16 16:10 ` [PATCH 5/7] pcmcia/bfin_cf: " Uwe Kleine-König
2009-12-16 16:10 ` [PATCH 6/7] spi/mpc8xxx: " Uwe Kleine-König
2009-12-16 16:10 ` [PATCH 7/7] ASoC: sh: FSI:: " Uwe Kleine-König
2009-12-17 1:42 ` Kuninori Morimoto
2009-12-17 1:42 ` Kuninori Morimoto
2009-12-17 9:47 ` Uwe Kleine-König
2009-12-22 12:34 ` Mark Brown
2009-12-22 12:34 ` Mark Brown
2009-12-16 16:32 ` [PATCH 6/7] spi/mpc8xxx: " Anton Vorontsov
2009-12-16 17:49 ` Uwe Kleine-König
2009-12-16 18:20 ` Anton Vorontsov
2009-12-16 19:18 ` Uwe Kleine-König
2009-12-16 19:37 ` Anton Vorontsov
2009-12-16 19:51 ` Anton Vorontsov
2009-12-17 13:05 ` Uwe Kleine-König [this message]
2009-12-17 16:25 ` Anton Vorontsov
2009-12-16 18:20 ` David Vrabel
2009-12-17 16:39 ` Anton Vorontsov
2009-12-19 15:13 ` [PATCH] " Uwe Kleine-König
2009-12-16 16:27 ` [PATCH 4/7] can/at91: " Wolfgang Grandegger
2009-12-16 17:08 ` Uwe Kleine-König
2009-12-16 17:47 ` Alan Cox
2009-12-17 7:17 ` Wolfgang Grandegger
2009-12-16 18:57 ` Wolfgang Grandegger
2009-12-16 18:58 ` Wolfgang Grandegger
2009-12-19 4:32 ` David Miller
2010-01-13 11:05 ` [RESEND PATCH 1/5] [AVR32] " Uwe Kleine-König
2010-01-13 11:05 ` [RESEND PATCH 2/5] V4L/DVB mx1_camera: " Uwe Kleine-König
2010-01-13 11:57 ` platform_get_irq() v4l fixes Guennadi Liakhovetski
2010-01-13 11:05 ` [RESEND PATCH 3/5] V4L/DVB sh_mobile_ceu: don't check platform_get_irq's return value against zero Uwe Kleine-König
2010-01-13 11:05 ` [RESEND PATCH 4/5] pcmcia/bfin_cf: " Uwe Kleine-König
2010-01-13 11:05 ` [RESEND PATCH 5/5] spi/mpc8xxx: " Uwe Kleine-König
2010-01-13 11:17 ` Anton Vorontsov
2010-10-19 6:45 ` [PATCH 1/7] [AVR32] " Uwe Kleine-König
2010-11-01 9:58 ` Hans-Christian Egtvedt
2010-11-02 9:15 ` Uwe Kleine-König
2010-11-02 9:30 ` Hans-Christian Egtvedt
2011-02-09 10:28 ` [PATCH RESENT#2] " Uwe Kleine-König
2011-02-09 10:43 ` Alan Cox
2011-02-09 12:28 ` Hans-Christian Egtvedt
2011-02-09 12:44 ` Uwe Kleine-König
2011-02-09 12:51 ` Hans-Christian Egtvedt
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=20091217130549.GA9032@pengutronix.de \
--to=u.kleine-koenig@pengutronix.de \
--cc=akpm@linux-foundation.org \
--cc=avorontsov@ru.mvista.com \
--cc=david.vrabel@csr.com \
--cc=dbrownell@users.sourceforge.net \
--cc=galak@kernel.crashing.org \
--cc=grant.likely@secretlab.ca \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=spi-devel-general@lists.sourceforge.net \
--cc=torvalds@linux-foundation.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.