RE: [PATCH] [SCSI] mpt fusion: Fix 32 bit platforms with 64 bit resources.

2009-12-02 Thread Desai, Kashyap

This patch looks OK. Please consider it as ACKed by me on behalf of LSI.

- Kashyap

 -Original Message-
 From: linux-scsi-ow...@vger.kernel.org [mailto:linux-scsi-
 ow...@vger.kernel.org] On Behalf Of Benjamin Herrenschmidt
 Sent: Thursday, December 03, 2009 8:30 AM
 To: Pravin Bathija
 Cc: linux-s...@vger.kernel.org; linuxppc-...@ozlabs.org;
 jwbo...@linux.vnet.ibm.com; Moore, Eric
 Subject: Re: [PATCH] [SCSI] mpt fusion: Fix 32 bit platforms with 64 bit
 resources.
 
 On Wed, 2009-12-02 at 17:51 -0800, Pravin Bathija wrote:
  Powerpc 44x uses 36 bit real address while the real address defined
  in MPT Fusion driver is of type 32 bit. This causes ioremap to fail
 and driver
  fails to initialize. This fix changes the data types representing
 the real
  address from unsigned long 32-bit types to resource_size_t which is
 64-bit. The
  driver has been tested, the disks get discovered correctly and can
 do IO.
 
  Signed-off-by: Pravin Bathija pbath...@amcc.com
 
 Acked-by: Benjamin Herrenschmidt b...@kernel.crashing.org
 ---
 
 James, this one should be good ;-)
 
  Acked-by: Feng Kan f...@amcc.com
  Acked-by: Fushen Chen fc...@amcc.com
  Acked-by: Loc Ho l...@amcc.com
  Acked-by: Tirumala Reddy Marri tma...@amcc.com
  Acked-by: Victor Gallardo vgalla...@amcc.com
  ---
   drivers/message/fusion/mptbase.c |2 +-
   1 files changed, 1 insertions(+), 1 deletions(-)
 
  diff --git a/drivers/message/fusion/mptbase.c
 b/drivers/message/fusion/mptbase.c
  index 5d496a9..9f14a60 100644
  --- a/drivers/message/fusion/mptbase.c
  +++ b/drivers/message/fusion/mptbase.c
  @@ -1511,7 +1511,7 @@ mpt_mapresources(MPT_ADAPTER *ioc)
   {
  u8  __iomem *mem;
  int  ii;
  -   unsigned longmem_phys;
  +   resource_size_t  mem_phys;
  unsigned longport;
  u32  msize;
  u32  psize;
 
 
 --
 To unsubscribe from this list: send the line unsubscribe linux-scsi in
 the body of a message to majord...@vger.kernel.org
 More majordomo info at  http://vger.kernel.org/majordomo-info.html
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev


RE: [PATCH] [SCSI] mpt fusion: Fix 32 bit platforms with 64 bit resources.

2009-11-05 Thread Desai, Kashyap


-Original Message-
From: linux-scsi-ow...@vger.kernel.org 
[mailto:linux-scsi-ow...@vger.kernel.org] On Behalf Of Benjamin Herrenschmidt
Sent: Friday, November 06, 2009 1:30 AM
To: James Bottomley
Cc: Josh Boyer; Moore, Eric; pbath...@amcc.com; linux-s...@vger.kernel.org; 
linuxppc-...@ozlabs.org
Subject: Re: [PATCH] [SCSI] mpt fusion: Fix 32 bit platforms with 64 bit 
resources.

On Thu, 2009-11-05 at 10:07 -0600, James Bottomley wrote:

 ioc-memmap = mem;
  -  dinitprintk(ioc, printk(MYIOC_s_INFO_FMT mem = %p, mem_phys = %lx\n,
  -  ioc-name, mem, mem_phys));
  +  dinitprintk(ioc, printk(MYIOC_s_INFO_FMT mem = %p, mem_phys = %llx\n,
  +  ioc-name, mem, (u64)mem_phys));
  
 ioc-mem_phys = mem_phys;
 ioc-chip = (SYSIF_REGS __iomem *)mem;
  
 /* Save Port IO values in case we need to do downloadboot */
  -  ioc-pio_mem_phys = port;
  +  port = ioremap(port_phys, psize);
  +  if (port == NULL) {
  +  printk(MYIOC_s_ERR_FMT  : ERROR - Unable to map adapter
  +   port !\n, ioc-name);
  +  return -EINVAL;
 
 So this looks problematic on a few platforms ... what happens to
 platforms that have no IO space?  They automatically fail here and it
 looks like the adapter never attaches.

Yup, that part of the patch looks wrong.

However, a mechanical replacement of unsigned long's with
resource_size_t to hold physical addresses should be fine despite the
lack of feedback from LSI.

-- I was thinking this was actual fix for the issue. Use of resource_size_t is 
understood. Why submitter has added extra ioremap code in this patch? Because 
of ioremap code only this patch was on hold before going for ACK.
Pravin, Any specific reason to add above code?

Pravin, that ioremap definitely seems like it has nothing to do there,
port IO is already remapped for you by the core PCI code and should work
as is. Please respin without that change.

Cheers,
Ben.


--
To unsubscribe from this list: send the line unsubscribe linux-scsi in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev