On Thu, 10 Dec 2009 09:43:38 -0600 James Bottomley <James.Bottomley@xxxxxxx> wrote: > 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 <pbathija@xxxxxxxx> > > Acked-by: Feng Kan <fkan@xxxxxxxx> > > Acked-by: Fushen Chen <fchen@xxxxxxxx> > > Acked-by: Loc Ho <lho@xxxxxxxx> > > Acked-by: Tirumala Reddy Marri <tmarri@xxxxxxxx> > > Acked-by: Victor Gallardo <vgallardo@xxxxxxxx> > > --- > > 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 long mem_phys; > > + resource_size_t mem_phys; > > You never actually compiled this, did you? > > drivers/message/fusion/mptbase.c: In function 'mpt_mapresources': > drivers/message/fusion/mptbase.c:1680: warning: format '%lx' expects type 'long unsigned int', but argument 4 has type 'resource_size_t' > > I'll just fold the fix in another patch (inlined below) should probably also go in as 'mem_phys' is assigned to ioc->mem_phys which is 'u32'. ioc->mem_phys is never used in the driver, however. Some time ago I posted a patch which enables using second LSI SAS HBA on PPC440SPe based katmai board again: http://thread.gmane.org/gmane.linux.scsi/54839 Could someone comment on this patch, please. Thanks! Anatolij --- diff --git a/drivers/message/fusion/mptbase.h b/drivers/message/fusion/mptbase.h index 8dd4d21..8dc58e3 100644 --- a/drivers/message/fusion/mptbase.h +++ b/drivers/message/fusion/mptbase.h @@ -605,7 +605,7 @@ typedef struct _MPT_ADAPTER SYSIF_REGS __iomem *chip; /* == c8817000 (mmap) */ SYSIF_REGS __iomem *pio_chip; /* Programmed IO (downloadboot) */ u8 bus_type; - u32 mem_phys; /* == f4020000 (mmap) */ + resource_size_t mem_phys; /* == f4020000 (mmap) */ u32 pio_mem_phys; /* Programmed IO (downloadboot) */ int mem_size; /* mmap memory size */ int number_of_buses; -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html