From ac1fafcb769512b981f05faa6e27d3e4e02f484e Mon Sep 17 00:00:00 2001 From: Kevin Hilman Date: Fri, 30 Jan 2009 11:59:27 -0800 Subject: [PATCH] --- yaml --- r: 137632 b: refs/heads/master c: 13b8860d102de3daa4a4bf23542495b507edd7e9 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/ide/palm_bk3710.c | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 82f0ab52213a..b108f5efa539 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f94116aeec7a299640dd692128e1d22178affa8d +refs/heads/master: 13b8860d102de3daa4a4bf23542495b507edd7e9 diff --git a/trunk/drivers/ide/palm_bk3710.c b/trunk/drivers/ide/palm_bk3710.c index f38aac78044c..c7acca0b8733 100644 --- a/trunk/drivers/ide/palm_bk3710.c +++ b/trunk/drivers/ide/palm_bk3710.c @@ -347,7 +347,7 @@ static int __init palm_bk3710_probe(struct platform_device *pdev) struct clk *clk; struct resource *mem, *irq; void __iomem *base; - unsigned long rate; + unsigned long rate, mem_size; int i, rc; hw_regs_t hw, *hws[] = { &hw, NULL, NULL, NULL }; @@ -374,13 +374,18 @@ static int __init palm_bk3710_probe(struct platform_device *pdev) return -ENODEV; } - if (request_mem_region(mem->start, mem->end - mem->start + 1, - "palm_bk3710") == NULL) { + mem_size = mem->end - mem->start + 1; + if (request_mem_region(mem->start, mem_size, "palm_bk3710") == NULL) { printk(KERN_ERR "failed to request memory region\n"); return -EBUSY; } - base = IO_ADDRESS(mem->start); + base = ioremap(mem->start, mem_size); + if (!base) { + printk(KERN_ERR "failed to map IO memory\n"); + release_mem_region(mem->start, mem_size); + return -ENOMEM; + } /* Configure the Palm Chip controller */ palm_bk3710_chipinit(base);