All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: blackluck@ktk.bme.hu
Cc: Olof Johansson <olof@lixom.net>,
	linuxppc-dev@ozlabs.org, debian-powerpc@lists.debian.org,
	Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Subject: Re: sym scsi driver problem with 2.6.26 or newer debian kernel on p610 (fwd)
Date: Wed, 24 Jun 2009 09:29:52 +1000	[thread overview]
Message-ID: <1245799792.10356.42.camel@pasglop> (raw)
In-Reply-To: <1245794228.10356.31.camel@pasglop>

On Wed, 2009-06-24 at 07:57 +1000, Benjamin Herrenschmidt wrote:
> > I tried on a POWER3 box I have here "IBM,7044-170" and things work fine
> > here with current upstream. (I suspect a much smaller machine).
> > 
> > I will really need an actual bisection here... In the meantime, I'll see
> > if I can get my hand on one of these machines here.
> 
> Ok so I think we may have found it... looks like
> CONFIG_MPIC_BROKEN_REGREAD is what breaks it which is enabled by PA-Semi
> support in the .config.
> 
> Can you verify that disabling PA-Semi support removes that option from
> your .config and that once removed, it works again ?
> 
> We don't know yet -why- it breaks it, still investigating.

Do the following patch also fix it ?

Index: linux-work/arch/powerpc/sysdev/mpic.c
===================================================================
--- linux-work.orig/arch/powerpc/sysdev/mpic.c	2009-06-24 09:24:51.000000000 +1000
+++ linux-work/arch/powerpc/sysdev/mpic.c	2009-06-24 09:26:45.000000000 +1000
@@ -230,14 +230,16 @@ static inline u32 _mpic_irq_read(struct 
 {
 	unsigned int	isu = src_no >> mpic->isu_shift;
 	unsigned int	idx = src_no & mpic->isu_mask;
+	unsigned int	val;
 
+	val = _mpic_read(mpic->reg_type, &mpic->isus[isu],
+			 reg + (idx * MPIC_INFO(IRQ_STRIDE)));	
 #ifdef CONFIG_MPIC_BROKEN_REGREAD
 	if (reg == 0)
-		return mpic->isu_reg0_shadow[idx];
-	else
+		val = (val & (MPIC_VECPRI_MASK | MPIC_VECPRI_ACTIVITY)) |
+			mpic->isu_reg0_shadow[idx];
 #endif
-		return _mpic_read(mpic->reg_type, &mpic->isus[isu],
-				  reg + (idx * MPIC_INFO(IRQ_STRIDE)));
+	return val;
 }
 
 static inline void _mpic_irq_write(struct mpic *mpic, unsigned int src_no,
@@ -251,7 +253,8 @@ static inline void _mpic_irq_write(struc
 
 #ifdef CONFIG_MPIC_BROKEN_REGREAD
 	if (reg == 0)
-		mpic->isu_reg0_shadow[idx] = value;
+		mpic->isu_reg0_shadow[idx] =
+			value & ~(MPIC_VECPRI_MASK | MPIC_VECPRI_ACTIVITY);
 #endif
 }
 

  reply	other threads:[~2009-06-23 23:31 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-14  9:10 sym scsi driver problem with 2.6.26 or newer debian kernel on p610 (fwd) Guennadi Liakhovetski
2009-06-17  9:33 ` Laszlo Fekete
2009-06-22  9:10   ` Laszlo Fekete
2009-06-23  1:18     ` Benjamin Herrenschmidt
2009-06-23  2:30       ` Benjamin Herrenschmidt
2009-06-23 21:57         ` Benjamin Herrenschmidt
2009-06-23 23:29           ` Benjamin Herrenschmidt [this message]
2009-06-24  5:53             ` Michael Ellerman
2009-06-24  5:56               ` Benjamin Herrenschmidt
2009-06-24  6:19                 ` Michael Ellerman
2009-06-24  9:31                   ` Benjamin Herrenschmidt
2009-06-27 17:46                   ` Laszlo Fekete
2009-06-27 22:54                     ` Benjamin Herrenschmidt
2009-07-06  9:05                       ` Michael Ellerman
2009-06-23  2:31 ` Benjamin Herrenschmidt
  -- strict thread matches above, loose matches on Subject: below --
2009-06-13 19:49 Guennadi Liakhovetski
2009-06-14  1:50 ` Matthew Wilcox

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=1245799792.10356.42.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=blackluck@ktk.bme.hu \
    --cc=debian-powerpc@lists.debian.org \
    --cc=g.liakhovetski@gmx.de \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=olof@lixom.net \
    /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.