瀏覽代碼

[WATCHDOG] ep93xx: watchdog timer driver for TS-72xx SBCs cleanup

Clean-up driver:
* make release the reverse of probe so that both are consistent
* add WDIOC_GETSTATUS & WDIOC_GETBOOTSTATUS ioctls.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Wim Van Sebroeck 15 年之前
父節點
當前提交
f538ed9ea0
共有 1 個文件被更改,包括 8 次插入4 次删除
  1. 8 4
      drivers/watchdog/ts72xx_wdt.c

+ 8 - 4
drivers/watchdog/ts72xx_wdt.c

@@ -307,6 +307,10 @@ static long ts72xx_wdt_ioctl(struct file *file, unsigned int cmd,
 		error = copy_to_user(argp, &winfo, sizeof(winfo));
 		break;
 
+	case WDIOC_GETSTATUS:
+	case WDIOC_GETBOOTSTATUS:
+		return put_user(0, p);
+
 	case WDIOC_KEEPALIVE:
 		ts72xx_wdt_kick(wdt);
 		break;
@@ -477,14 +481,14 @@ static __devexit int ts72xx_wdt_remove(struct platform_device *pdev)
 	error = misc_deregister(&ts72xx_wdt_miscdev);
 	platform_set_drvdata(pdev, NULL);
 
-	iounmap(wdt->control_reg);
-	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-	release_mem_region(res->start, resource_size(res));
-
 	iounmap(wdt->feed_reg);
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
 	release_mem_region(res->start, resource_size(res));
 
+	iounmap(wdt->control_reg);
+	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	release_mem_region(res->start, resource_size(res));
+
 	kfree(wdt);
 	return error;
 }