All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephane Grosjean <s.grosjean@peak-system.com>
To: Oliver Hartkopp <socketcan@hartkopp.net>
Cc: Wolfgang Grandegger <wg@grandegger.com>,
	Marc Kleine-Budde <mkl@pengutronix.de>,
	linux-can Mailing List <linux-can@vger.kernel.org>
Subject: Re: [PATCH v3] can/sja1000: add support for PEAK-System PCMCIA card
Date: Tue, 14 Feb 2012 11:16:51 +0100	[thread overview]
Message-ID: <4F3A3493.8010900@peak-system.com> (raw)
In-Reply-To: <4F3A307C.1050706@hartkopp.net>


Le 14/02/2012 10:59, Oliver Hartkopp a écrit :

> @@ -492,6 +492,9 @@ irqreturn_t sja1000_interrupt(int irq, void *dev_id)
>   	while ((isrc = priv->read_reg(priv, REG_IR))&&  (n<  SJA1000_MAX_IRQ)) {
>   		n++;
>   		status = priv->read_reg(priv, REG_SR);
> +		/* check for absent controller due to hw unplug */
> +		if (status == 0xFF&&  !sja1000_probe_chip(dev))
> +			break;
>
>   		if (isrc&  IRQ_WUI)
>   			netdev_warn(dev, "wakeup interrupt\n");
> @@ -508,6 +511,9 @@ irqreturn_t sja1000_interrupt(int irq, void *dev_id)
>   			while (status&  SR_RBS) {
>   				sja1000_rx(dev);
>   				status = priv->read_reg(priv, REG_SR);
> +				/* check for absent controller */
> +				if (status == 0xFF&&  !sja1000_probe_chip(dev))
> +					break;
>   			}
>   		}
>   		if (isrc&  (IRQ_DOI | IRQ_EI | IRQ_BEI | IRQ_EPI | IRQ_ALI)) {
>
> The big advantage is, that we do not need another expensive register read nor
> another loop counter variable in the case everything is working fine.
>
> Only when the _already_ read status variable becomes 0xFF we check in the
> mode register if the device is still present.
>
> And finally there's a very little chance left to create rubbish data.


Quite perfect, except that we will push a "rubbish" error frame before 
exiting, and we will return IRQ_HANDLED while I would prefer IRQ_NONE...
But does it matter?

Moreover, regarding to this patch, should the peak_pcmcia custom isr 
always test for the card presence? I mean, this costs at least 2xtwo 
ioread8 for each hw irq!


Stéphane

--
PEAK-System Technik GmbH, Otto-Roehm-Strasse 69, D-64293 Darmstadt 
Geschaeftsleitung: A.Gach/U.Wilhelm,St.Nr.:007/241/13586 FA Darmstadt 
HRB-9183 Darmstadt, Ust.IdNr.:DE 202220078, WEE-Reg.-Nr.: DE39305391 
Tel.+49 (0)6151-817320 / Fax:+49 (0)6151-817329, info@peak-system.com

  reply	other threads:[~2012-02-14 10:16 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-06 15:56 [PATCH v3] can/sja1000: add support for PEAK-System PCMCIA card Stephane Grosjean
2012-02-13  9:14 ` Marc Kleine-Budde
2012-02-13 10:01   ` Stephane Grosjean
2012-02-13 10:14     ` Wolfgang Grandegger
2012-02-13 10:41       ` Oliver Hartkopp
2012-02-13 11:02         ` Wolfgang Grandegger
2012-02-13 11:06           ` Marc Kleine-Budde
2012-02-13 11:08             ` Wolfgang Grandegger
2012-02-13 19:55               ` Oliver Hartkopp
2012-02-13 20:23                 ` Wolfgang Grandegger
2012-02-14  9:14                   ` Stephane Grosjean
2012-02-14  9:30                     ` Wolfgang Grandegger
2012-02-14  9:59                   ` Oliver Hartkopp
2012-02-14 10:16                     ` Stephane Grosjean [this message]
2012-02-14 16:41                       ` Oliver Hartkopp
2012-02-15  7:03                         ` Wolfgang Grandegger
2012-02-15  8:05                           ` Oliver Hartkopp
2012-02-15  8:37                             ` Wolfgang Grandegger
2012-02-15 19:32                               ` Oliver Hartkopp
2012-02-15 11:52                           ` Stephane Grosjean
2012-02-15 15:06                             ` Wolfgang Grandegger
2012-02-15 16:00                               ` Stephane Grosjean
2012-02-15 19:46                               ` Oliver Hartkopp
2012-02-13 10:46       ` Stephane Grosjean
2012-02-13 10:56         ` Wolfgang Grandegger

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=4F3A3493.8010900@peak-system.com \
    --to=s.grosjean@peak-system.com \
    --cc=linux-can@vger.kernel.org \
    --cc=mkl@pengutronix.de \
    --cc=socketcan@hartkopp.net \
    --cc=wg@grandegger.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 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.