summaryrefslogtreecommitdiffstats
path: root/target/linux/xburst
diff options
context:
space:
mode:
authorlars <lars@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-02-01 13:50:12 +0000
committerlars <lars@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-02-01 13:50:12 +0000
commit738bd1c1bd7335f276ffb2306ebbad82fa027de6 (patch)
tree4045ca4573c4a1b3167f71874a2d34db15ced822 /target/linux/xburst
parent766d5faedc2c02c6dc4032694408cbb034561471 (diff)
[xburst] rtc-jz4740: Free rtc irq when driver is removed
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19489 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/xburst')
-rw-r--r--target/linux/xburst/files-2.6.32/arch/mips/jz4740/platform.c2
-rw-r--r--target/linux/xburst/files-2.6.32/drivers/rtc/rtc-jz4740.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/target/linux/xburst/files-2.6.32/arch/mips/jz4740/platform.c b/target/linux/xburst/files-2.6.32/arch/mips/jz4740/platform.c
index 4e379294a..ec34ea257 100644
--- a/target/linux/xburst/files-2.6.32/arch/mips/jz4740/platform.c
+++ b/target/linux/xburst/files-2.6.32/arch/mips/jz4740/platform.c
@@ -108,7 +108,7 @@ struct platform_device jz4740_mmc_device = {
static struct resource jz4740_rtc_resources[] = {
[0] = {
.start = CPHYSADDR(RTC_BASE),
- .end = CPHYSADDR(RTC_BASE) + 0x10,
+ .end = CPHYSADDR(RTC_BASE) + 0x38 - 1,
.flags = IORESOURCE_MEM,
},
[1] = {
diff --git a/target/linux/xburst/files-2.6.32/drivers/rtc/rtc-jz4740.c b/target/linux/xburst/files-2.6.32/drivers/rtc/rtc-jz4740.c
index 2039eb3de..03479a73f 100644
--- a/target/linux/xburst/files-2.6.32/drivers/rtc/rtc-jz4740.c
+++ b/target/linux/xburst/files-2.6.32/drivers/rtc/rtc-jz4740.c
@@ -260,7 +260,7 @@ static int __devinit jz4740_rtc_probe(struct platform_device *pdev)
}
ret = request_irq(rtc->irq, jz4740_rtc_irq, 0,
- pdev->name, rtc);
+ pdev->name, rtc);
if (ret) {
dev_err(&pdev->dev, "Failed to request rtc irq: %d\n", ret);
@@ -292,6 +292,8 @@ static int __devexit jz4740_rtc_remove(struct platform_device *pdev)
{
struct jz4740_rtc *rtc = platform_get_drvdata(pdev);
+ free_irq(rtc->irq, rtc);
+
rtc_device_unregister(rtc->rtc);
iounmap(rtc->base);
@@ -329,4 +331,3 @@ MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>");
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("RTC driver for the JZ4720/JZ4740 SoC\n");
MODULE_ALIAS("platform:jz4740-rtc");
-MODULE_ALIAS("platform:jz4720-rtc");