• Jeff Garzik's avatar
    [SCSI] megaraid: fix MMIO casts · 00769ec4
    Jeff Garzik authored
    megaraid's MMIO RD*/WR* macros directly call readl() and writel() with
    an 'unsigned long' argument.  This throws a warning, but is otherwise OK
    because the 'unsigned long' is really the result of ioremap().  This
    setup is also OK because the variable can hold an ioremap cookie /or/ a
    PCI I/O port (PIO).
    
    However, to fix the warning thrown when readl() and writel() are passed
    an unsigned long cookie, I introduce 'void __iomem *mmio_base', holding
    the same value as 'base'.  This will silence the warnings, and also
    cause an oops whenever these MMIO-only functions are ever accidentally
    passed an I/O address.
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
    00769ec4
megaraid.c 115 KB