n810: More retu-wdt cleanups
[openwrt/staging/mkresin.git] / target / linux / omap24xx / patches-2.6.38 / 535-cbus-retu-wdt-cleanup.patch
index 4b650686fdbff42a0afd19e1f6e3e38477cd757f..3ec78d1dd77454f82b8a9cd027274102e2678c49 100644 (file)
@@ -1,73 +1,8 @@
 Index: linux-2.6.38-rc6/drivers/cbus/retu-wdt.c
 ===================================================================
---- linux-2.6.38-rc6.orig/drivers/cbus/retu-wdt.c      2011-03-02 16:49:51.231863891 +0100
-+++ linux-2.6.38-rc6/drivers/cbus/retu-wdt.c   2011-03-02 16:53:47.189454637 +0100
-@@ -52,7 +52,6 @@ static DEFINE_MUTEX(retu_wdt_mutex);
- /* Current period of watchdog */
- static unsigned int period_val = RETU_WDT_DEFAULT_TIMER;
--static int counter_param = RETU_WDT_MAX_TIMER;
- struct retu_wdt_dev {
-       struct device           *dev;
-@@ -109,56 +108,6 @@ static void retu_wdt_ping_work(struct wo
-       retu_wdt_ping_enable(wdev);
- }
--static ssize_t retu_wdt_period_show(struct device *dev,
--                              struct device_attribute *attr, char *buf)
--{
--      /* Show current max counter */
--      return sprintf(buf, "%u\n", (u16)period_val);
--}
--
--/*
-- * Note: This inteface is non-standard and likely to disappear!
-- * Use /dev/watchdog instead, that's the standard.
-- */
--static ssize_t retu_wdt_period_store(struct device *dev,
--                              struct device_attribute *attr,
--                              const char *buf, size_t count)
--{
--      unsigned int new_period;
--      int ret;
--
--#ifdef CONFIG_WATCHDOG_NOWAYOUT
--      retu_wdt_ping_disable(retu_wdt);
--#endif
--
--      if (sscanf(buf, "%u", &new_period) != 1) {
--              printk(KERN_ALERT "retu_wdt_period_store: Invalid input\n");
--              return -EINVAL;
--      }
--
--      ret = retu_modify_counter(new_period);
--      if (ret < 0)
--              return ret;
--
--      return strnlen(buf, count);
--}
--
--static ssize_t retu_wdt_counter_show(struct device *dev,
--                              struct device_attribute *attr, char *buf)
--{
--      u16 counter;
--
--      /* Show current value in watchdog counter */
--      counter = retu_read_reg(dev, RETU_REG_WATCHDOG);
--
--      /* Only the 5 LSB are important */
--      return snprintf(buf, PAGE_SIZE, "%u\n", (counter & 0x3F));
--}
--
--static DEVICE_ATTR(period, S_IRUGO | S_IWUSR, retu_wdt_period_show, \
--                      retu_wdt_period_store);
--static DEVICE_ATTR(counter, S_IRUGO, retu_wdt_counter_show, NULL);
--
- static int retu_wdt_open(struct inode *inode, struct file *file)
- {
-       if (test_and_set_bit(0, &retu_wdt->users))
-@@ -175,9 +124,9 @@ static int retu_wdt_release(struct inode
+--- linux-2.6.38-rc6.orig/drivers/cbus/retu-wdt.c      2011-03-04 15:46:21.312816961 +0100
++++ linux-2.6.38-rc6/drivers/cbus/retu-wdt.c   2011-03-04 15:46:54.658384947 +0100
+@@ -124,9 +124,9 @@ static int retu_wdt_release(struct inode
        struct retu_wdt_dev *wdev = file->private_data;
  
  #ifndef CONFIG_WATCHDOG_NOWAYOUT
@@ -79,116 +14,3 @@ Index: linux-2.6.38-rc6/drivers/cbus/retu-wdt.c
  
        return 0;
  }
-@@ -232,18 +181,6 @@ static long retu_wdt_ioctl(struct file *
-       return 0;
- }
--/* Start kicking retu watchdog until user space starts doing the kicking */
--static int __devinit retu_wdt_ping(void)
--{
--#ifdef CONFIG_WATCHDOG_NOWAYOUT
--      retu_modify_counter(RETU_WDT_MAX_TIMER);
--#else
--      retu_wdt_ping_enable(retu_wdt);
--#endif
--
--      return 0;
--}
--
- static const struct file_operations retu_wdt_fops = {
-       .owner          = THIS_MODULE,
-       .write          = retu_wdt_write,
-@@ -252,8 +189,6 @@ static const struct file_operations retu
-       .release        = retu_wdt_release,
- };
--/*----------------------------------------------------------------------------*/
--
- static int __init retu_wdt_probe(struct platform_device *pdev)
- {
-       struct retu_wdt_dev *wdev;
-@@ -265,18 +200,6 @@ static int __init retu_wdt_probe(struct
-       wdev->dev = &pdev->dev;
--      ret = device_create_file(&pdev->dev, &dev_attr_period);
--      if (ret) {
--              dev_err(&pdev->dev, "Error creating sysfs period\n");
--              goto free1;
--      }
--
--      ret = device_create_file(&pdev->dev, &dev_attr_counter);
--      if (ret) {
--              dev_err(&pdev->dev, "Error creating sysfs counter\n");
--              goto free2;
--      }
--
-       platform_set_drvdata(pdev, wdev);
-       retu_wdt = wdev;
-       wdev->retu_wdt_miscdev.parent = &pdev->dev;
-@@ -286,38 +209,21 @@ static int __init retu_wdt_probe(struct
-       ret = misc_register(&(wdev->retu_wdt_miscdev));
-       if (ret)
--              goto free3;
-+              goto err_free_wdev;
-       INIT_DELAYED_WORK(&wdev->ping_work, retu_wdt_ping_work);
--      /* passed as module parameter? */
--      ret = retu_modify_counter(counter_param);
--      if (ret == -EINVAL) {
--              ret = retu_modify_counter(RETU_WDT_DEFAULT_TIMER);
--              dev_dbg(&pdev->dev, "Initializing to default value\n");
--      }
--
--      /* Kick the watchdog for kernel booting to finish */
-+      /* Kick the watchdog for kernel booting to finish.
-+       * If nowayout is not set, we start the ping work. */
-+#ifdef CONFIG_WATCHDOG_NOWAYOUT
-       retu_modify_counter(RETU_WDT_MAX_TIMER);
--
--      ret = retu_wdt_ping();
--      if (ret < 0) {
--              dev_err(&pdev->dev, "Failed to ping\n");
--              goto free4;
--      }
-+#else
-+      retu_wdt_ping_enable(retu_wdt);
-+#endif
-       return 0;
--free4:
--      misc_deregister(&wdev->retu_wdt_miscdev);
--
--free3:
--      device_remove_file(&pdev->dev, &dev_attr_counter);
--
--free2:
--      device_remove_file(&pdev->dev, &dev_attr_period);
--
--free1:
-+err_free_wdev:
-       kfree(wdev);
-       return ret;
-@@ -329,8 +235,6 @@ static int __devexit retu_wdt_remove(str
-       wdev = platform_get_drvdata(pdev);
-       misc_deregister(&wdev->retu_wdt_miscdev);
--      device_remove_file(&pdev->dev, &dev_attr_period);
--      device_remove_file(&pdev->dev, &dev_attr_counter);
-       cancel_delayed_work_sync(&wdev->ping_work);
-       kfree(wdev);
-@@ -356,9 +260,7 @@ static void __exit retu_wdt_exit(void)
- module_init(retu_wdt_init);
- module_exit(retu_wdt_exit);
--module_param(counter_param, int, 0);
- MODULE_DESCRIPTION("Retu WatchDog");
- MODULE_AUTHOR("Amit Kucheria");
- MODULE_LICENSE("GPL");
--