diff options
Diffstat (limited to 'drivers/mfd/asic3.c')
| -rw-r--r-- | drivers/mfd/asic3.c | 12 | 
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/mfd/asic3.c b/drivers/mfd/asic3.c index 9f6294f2a070..9fc4186d4132 100644 --- a/drivers/mfd/asic3.c +++ b/drivers/mfd/asic3.c @@ -899,13 +899,15 @@ static int __init asic3_mfd_probe(struct platform_device *pdev,  	ds1wm_resources[0].end   >>= asic->bus_shift;  	/* MMC */ -	asic->tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE >> asic->bus_shift) + +	if (mem_sdio) { +		asic->tmio_cnf = ioremap((ASIC3_SD_CONFIG_BASE >> asic->bus_shift) +  				 mem_sdio->start,  				 ASIC3_SD_CONFIG_SIZE >> asic->bus_shift); -	if (!asic->tmio_cnf) { -		ret = -ENOMEM; -		dev_dbg(asic->dev, "Couldn't ioremap SD_CONFIG\n"); -		goto out; +		if (!asic->tmio_cnf) { +			ret = -ENOMEM; +			dev_dbg(asic->dev, "Couldn't ioremap SD_CONFIG\n"); +			goto out; +		}  	}  	asic3_mmc_resources[0].start >>= asic->bus_shift;  	asic3_mmc_resources[0].end   >>= asic->bus_shift;  |