• Tony Battersby's avatar
    [SCSI] sym53c8xx: handle pci_iomap() failures · 783fa731
    Tony Battersby authored
    sym_init_device() doesn't check if pci_iomap() fails.  It also tries
    to map device RAM without first checking FE_RAM.
    
    1) Move some initialization from sym_init_device() to the top of
       sym2_probe().
    2) Rename sym_init_device() to sym_iomap_device().
    3) Call sym_iomap_device() after sym_check_supported() instead of
       before so that device->chip.features will be set.
    4) Check FE_RAM in sym_iomap_device() before mapping RAM.
    5) If sym_iomap_device() cannot map registers, then abort.
    6) If sym_iomap_device() cannot map RAM, then fall back to not using
       RAM and continue.
    7) Remove the check for FE_RAM in sym_attach() since dev->ram_base
       is now always set correctly.
    Signed-off-by: default avatarTony Battersby <tonyb@cybernetics.com>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
    783fa731
sym_glue.c 53.3 KB