diff mbox series

watchdog: wm831x_wdt: Remove GPIO handling

Message ID 20200229115046.57781-1-linus.walleij@linaro.org (mailing list archive)
State Accepted
Headers show
Series watchdog: wm831x_wdt: Remove GPIO handling | expand

Commit Message

Linus Walleij Feb. 29, 2020, 11:50 a.m. UTC
An attempt to convert the driver to using GPIO descriptors
(see Link tag) was discouraged in favor of deleting the
handling of the update GPIO altogehter since there are
no in-tree users.

This patch deletes the GPIO handling instead.

Cc: Richard Fitzgerald <rf@opensource.cirrus.com>
Cc: Charles Keepax <ckeepax@opensource.cirrus.com>
Cc: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/linux-watchdog/20200210102209.289379-1-linus.walleij@linaro.org/
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
I am also fine with the elder patch being applied, obviously.
---
 drivers/watchdog/wm831x_wdt.c    | 27 ---------------------------
 include/linux/mfd/wm831x/pdata.h |  1 -
 2 files changed, 28 deletions(-)

Comments

Guenter Roeck Feb. 29, 2020, 2:40 p.m. UTC | #1
On 2/29/20 3:50 AM, Linus Walleij wrote:
> An attempt to convert the driver to using GPIO descriptors
> (see Link tag) was discouraged in favor of deleting the
> handling of the update GPIO altogehter since there are
> no in-tree users.
> 
> This patch deletes the GPIO handling instead.
> 
> Cc: Richard Fitzgerald <rf@opensource.cirrus.com>
> Cc: Charles Keepax <ckeepax@opensource.cirrus.com>
> Cc: Mark Brown <broonie@kernel.org>
> Link: https://lore.kernel.org/linux-watchdog/20200210102209.289379-1-linus.walleij@linaro.org/
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

Reviewed-by: Guenter Roeck <linux@roeck-us.net>

> ---
> I am also fine with the elder patch being applied, obviously.
> ---
>  drivers/watchdog/wm831x_wdt.c    | 27 ---------------------------
>  include/linux/mfd/wm831x/pdata.h |  1 -
>  2 files changed, 28 deletions(-)
> 
> diff --git a/drivers/watchdog/wm831x_wdt.c b/drivers/watchdog/wm831x_wdt.c
> index 030ce240620d..d96ad8f38bd2 100644
> --- a/drivers/watchdog/wm831x_wdt.c
> +++ b/drivers/watchdog/wm831x_wdt.c
> @@ -13,7 +13,6 @@
>  #include <linux/platform_device.h>
>  #include <linux/watchdog.h>
>  #include <linux/uaccess.h>
> -#include <linux/gpio.h>
>  
>  #include <linux/mfd/wm831x/core.h>
>  #include <linux/mfd/wm831x/pdata.h>
> @@ -29,7 +28,6 @@ struct wm831x_wdt_drvdata {
>  	struct watchdog_device wdt;
>  	struct wm831x *wm831x;
>  	struct mutex lock;
> -	int update_gpio;
>  	int update_state;
>  };
>  
> @@ -103,14 +101,6 @@ static int wm831x_wdt_ping(struct watchdog_device *wdt_dev)
>  
>  	mutex_lock(&driver_data->lock);
>  
> -	if (driver_data->update_gpio) {
> -		gpio_set_value_cansleep(driver_data->update_gpio,
> -					driver_data->update_state);
> -		driver_data->update_state = !driver_data->update_state;
> -		ret = 0;
> -		goto out;
> -	}
> -
>  	reg = wm831x_reg_read(wm831x, WM831X_WATCHDOG);
>  
>  	if (!(reg & WM831X_WDOG_RST_SRC)) {
> @@ -239,23 +229,6 @@ static int wm831x_wdt_probe(struct platform_device *pdev)
>  		reg |= pdata->secondary << WM831X_WDOG_SECACT_SHIFT;
>  		reg |= pdata->software << WM831X_WDOG_RST_SRC_SHIFT;
>  
> -		if (pdata->update_gpio) {
> -			ret = devm_gpio_request_one(dev, pdata->update_gpio,
> -						    GPIOF_OUT_INIT_LOW,
> -						    "Watchdog update");
> -			if (ret < 0) {
> -				dev_err(wm831x->dev,
> -					"Failed to request update GPIO: %d\n",
> -					ret);
> -				return ret;
> -			}
> -
> -			driver_data->update_gpio = pdata->update_gpio;
> -
> -			/* Make sure the watchdog takes hardware updates */
> -			reg |= WM831X_WDOG_RST_SRC;
> -		}
> -
>  		ret = wm831x_reg_unlock(wm831x);
>  		if (ret == 0) {
>  			ret = wm831x_reg_write(wm831x, WM831X_WATCHDOG, reg);
> diff --git a/include/linux/mfd/wm831x/pdata.h b/include/linux/mfd/wm831x/pdata.h
> index 986986fe4e4e..75aa94dadf1c 100644
> --- a/include/linux/mfd/wm831x/pdata.h
> +++ b/include/linux/mfd/wm831x/pdata.h
> @@ -89,7 +89,6 @@ enum wm831x_watchdog_action {
>  
>  struct wm831x_watchdog_pdata {
>  	enum wm831x_watchdog_action primary, secondary;
> -	int update_gpio;
>  	unsigned int software:1;
>  };
>  
>
Charles Keepax March 2, 2020, 9:15 a.m. UTC | #2
On Sat, Feb 29, 2020 at 12:50:46PM +0100, Linus Walleij wrote:
> An attempt to convert the driver to using GPIO descriptors
> (see Link tag) was discouraged in favor of deleting the
> handling of the update GPIO altogehter since there are
> no in-tree users.
> 
> This patch deletes the GPIO handling instead.
> 
> Cc: Richard Fitzgerald <rf@opensource.cirrus.com>
> Cc: Charles Keepax <ckeepax@opensource.cirrus.com>
> Cc: Mark Brown <broonie@kernel.org>
> Link: https://lore.kernel.org/linux-watchdog/20200210102209.289379-1-linus.walleij@linaro.org/
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
> ---

Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>

Thanks,
Charles
diff mbox series

Patch

diff --git a/drivers/watchdog/wm831x_wdt.c b/drivers/watchdog/wm831x_wdt.c
index 030ce240620d..d96ad8f38bd2 100644
--- a/drivers/watchdog/wm831x_wdt.c
+++ b/drivers/watchdog/wm831x_wdt.c
@@ -13,7 +13,6 @@ 
 #include <linux/platform_device.h>
 #include <linux/watchdog.h>
 #include <linux/uaccess.h>
-#include <linux/gpio.h>
 
 #include <linux/mfd/wm831x/core.h>
 #include <linux/mfd/wm831x/pdata.h>
@@ -29,7 +28,6 @@  struct wm831x_wdt_drvdata {
 	struct watchdog_device wdt;
 	struct wm831x *wm831x;
 	struct mutex lock;
-	int update_gpio;
 	int update_state;
 };
 
@@ -103,14 +101,6 @@  static int wm831x_wdt_ping(struct watchdog_device *wdt_dev)
 
 	mutex_lock(&driver_data->lock);
 
-	if (driver_data->update_gpio) {
-		gpio_set_value_cansleep(driver_data->update_gpio,
-					driver_data->update_state);
-		driver_data->update_state = !driver_data->update_state;
-		ret = 0;
-		goto out;
-	}
-
 	reg = wm831x_reg_read(wm831x, WM831X_WATCHDOG);
 
 	if (!(reg & WM831X_WDOG_RST_SRC)) {
@@ -239,23 +229,6 @@  static int wm831x_wdt_probe(struct platform_device *pdev)
 		reg |= pdata->secondary << WM831X_WDOG_SECACT_SHIFT;
 		reg |= pdata->software << WM831X_WDOG_RST_SRC_SHIFT;
 
-		if (pdata->update_gpio) {
-			ret = devm_gpio_request_one(dev, pdata->update_gpio,
-						    GPIOF_OUT_INIT_LOW,
-						    "Watchdog update");
-			if (ret < 0) {
-				dev_err(wm831x->dev,
-					"Failed to request update GPIO: %d\n",
-					ret);
-				return ret;
-			}
-
-			driver_data->update_gpio = pdata->update_gpio;
-
-			/* Make sure the watchdog takes hardware updates */
-			reg |= WM831X_WDOG_RST_SRC;
-		}
-
 		ret = wm831x_reg_unlock(wm831x);
 		if (ret == 0) {
 			ret = wm831x_reg_write(wm831x, WM831X_WATCHDOG, reg);
diff --git a/include/linux/mfd/wm831x/pdata.h b/include/linux/mfd/wm831x/pdata.h
index 986986fe4e4e..75aa94dadf1c 100644
--- a/include/linux/mfd/wm831x/pdata.h
+++ b/include/linux/mfd/wm831x/pdata.h
@@ -89,7 +89,6 @@  enum wm831x_watchdog_action {
 
 struct wm831x_watchdog_pdata {
 	enum wm831x_watchdog_action primary, secondary;
-	int update_gpio;
 	unsigned int software:1;
 };