[5/5] watchdog: ziirave_wdt: Log bootloader/firmware info during probe
diff mbox series

Message ID 20190731174252.18041-6-andrew.smirnov@gmail.com
State Accepted
Headers show
Series
  • Ziirave_wdt driver fixes
Related show

Commit Message

Andrey Smirnov July 31, 2019, 5:42 p.m. UTC
Log bootloader/firmware info during probe. This information is
available via sysfs already, but it's really helpful to have this in
kernel log during startup as well.

Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Cc: Chris Healy <cphealy@gmail.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Rick Ramstetter <rick@anteaterllc.com>
Cc: linux-watchdog@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
 drivers/watchdog/ziirave_wdt.c | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

Comments

Guenter Roeck July 31, 2019, 9:44 p.m. UTC | #1
On Wed, Jul 31, 2019 at 10:42:52AM -0700, Andrey Smirnov wrote:
> Log bootloader/firmware info during probe. This information is
> available via sysfs already, but it's really helpful to have this in
> kernel log during startup as well.
> 
> Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
> Cc: Chris Healy <cphealy@gmail.com>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: Rick Ramstetter <rick@anteaterllc.com>
> Cc: linux-watchdog@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org

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

> ---
>  drivers/watchdog/ziirave_wdt.c | 18 +++++++++++++++---
>  1 file changed, 15 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/watchdog/ziirave_wdt.c b/drivers/watchdog/ziirave_wdt.c
> index 33c8d2eadada..84ba8820ac86 100644
> --- a/drivers/watchdog/ziirave_wdt.c
> +++ b/drivers/watchdog/ziirave_wdt.c
> @@ -68,6 +68,9 @@ static char *ziirave_reasons[] = {"power cycle", "hw watchdog", NULL, NULL,
>  #define ZIIRAVE_CMD_JUMP_TO_BOOTLOADER		0x0c
>  #define ZIIRAVE_CMD_DOWNLOAD_PACKET		0x0e
>  
> +#define ZIIRAVE_FW_VERSION_FMT	"02.%02u.%02u"
> +#define ZIIRAVE_BL_VERSION_FMT	"01.%02u.%02u"
> +
>  struct ziirave_wdt_rev {
>  	unsigned char major;
>  	unsigned char minor;
> @@ -482,7 +485,7 @@ static ssize_t ziirave_wdt_sysfs_show_firm(struct device *dev,
>  	if (ret)
>  		return ret;
>  
> -	ret = sprintf(buf, "02.%02u.%02u", w_priv->firmware_rev.major,
> +	ret = sprintf(buf, ZIIRAVE_FW_VERSION_FMT, w_priv->firmware_rev.major,
>  		      w_priv->firmware_rev.minor);
>  
>  	mutex_unlock(&w_priv->sysfs_mutex);
> @@ -505,7 +508,7 @@ static ssize_t ziirave_wdt_sysfs_show_boot(struct device *dev,
>  	if (ret)
>  		return ret;
>  
> -	ret = sprintf(buf, "01.%02u.%02u", w_priv->bootloader_rev.major,
> +	ret = sprintf(buf, ZIIRAVE_BL_VERSION_FMT, w_priv->bootloader_rev.major,
>  		      w_priv->bootloader_rev.minor);
>  
>  	mutex_unlock(&w_priv->sysfs_mutex);
> @@ -572,7 +575,8 @@ static ssize_t ziirave_wdt_sysfs_store_firm(struct device *dev,
>  		goto unlock_mutex;
>  	}
>  
> -	dev_info(&client->dev, "Firmware updated to version 02.%02u.%02u\n",
> +	dev_info(&client->dev,
> +		 "Firmware updated to version " ZIIRAVE_FW_VERSION_FMT "\n",
>  		 w_priv->firmware_rev.major, w_priv->firmware_rev.minor);
>  
>  	/* Restore the watchdog timeout */
> @@ -706,6 +710,10 @@ static int ziirave_wdt_probe(struct i2c_client *client,
>  		return ret;
>  	}
>  
> +	dev_info(&client->dev,
> +		 "Firmware version: " ZIIRAVE_FW_VERSION_FMT "\n",
> +		 w_priv->firmware_rev.major, w_priv->firmware_rev.minor);
> +
>  	ret = ziirave_wdt_revision(client, &w_priv->bootloader_rev,
>  				   ZIIRAVE_WDT_BOOT_VER_MAJOR);
>  	if (ret) {
> @@ -713,6 +721,10 @@ static int ziirave_wdt_probe(struct i2c_client *client,
>  		return ret;
>  	}
>  
> +	dev_info(&client->dev,
> +		 "Bootloader version: " ZIIRAVE_BL_VERSION_FMT "\n",
> +		 w_priv->bootloader_rev.major, w_priv->bootloader_rev.minor);
> +
>  	w_priv->reset_reason = i2c_smbus_read_byte_data(client,
>  						ZIIRAVE_WDT_RESET_REASON);
>  	if (w_priv->reset_reason < 0) {
> -- 
> 2.21.0
>

Patch
diff mbox series

diff --git a/drivers/watchdog/ziirave_wdt.c b/drivers/watchdog/ziirave_wdt.c
index 33c8d2eadada..84ba8820ac86 100644
--- a/drivers/watchdog/ziirave_wdt.c
+++ b/drivers/watchdog/ziirave_wdt.c
@@ -68,6 +68,9 @@  static char *ziirave_reasons[] = {"power cycle", "hw watchdog", NULL, NULL,
 #define ZIIRAVE_CMD_JUMP_TO_BOOTLOADER		0x0c
 #define ZIIRAVE_CMD_DOWNLOAD_PACKET		0x0e
 
+#define ZIIRAVE_FW_VERSION_FMT	"02.%02u.%02u"
+#define ZIIRAVE_BL_VERSION_FMT	"01.%02u.%02u"
+
 struct ziirave_wdt_rev {
 	unsigned char major;
 	unsigned char minor;
@@ -482,7 +485,7 @@  static ssize_t ziirave_wdt_sysfs_show_firm(struct device *dev,
 	if (ret)
 		return ret;
 
-	ret = sprintf(buf, "02.%02u.%02u", w_priv->firmware_rev.major,
+	ret = sprintf(buf, ZIIRAVE_FW_VERSION_FMT, w_priv->firmware_rev.major,
 		      w_priv->firmware_rev.minor);
 
 	mutex_unlock(&w_priv->sysfs_mutex);
@@ -505,7 +508,7 @@  static ssize_t ziirave_wdt_sysfs_show_boot(struct device *dev,
 	if (ret)
 		return ret;
 
-	ret = sprintf(buf, "01.%02u.%02u", w_priv->bootloader_rev.major,
+	ret = sprintf(buf, ZIIRAVE_BL_VERSION_FMT, w_priv->bootloader_rev.major,
 		      w_priv->bootloader_rev.minor);
 
 	mutex_unlock(&w_priv->sysfs_mutex);
@@ -572,7 +575,8 @@  static ssize_t ziirave_wdt_sysfs_store_firm(struct device *dev,
 		goto unlock_mutex;
 	}
 
-	dev_info(&client->dev, "Firmware updated to version 02.%02u.%02u\n",
+	dev_info(&client->dev,
+		 "Firmware updated to version " ZIIRAVE_FW_VERSION_FMT "\n",
 		 w_priv->firmware_rev.major, w_priv->firmware_rev.minor);
 
 	/* Restore the watchdog timeout */
@@ -706,6 +710,10 @@  static int ziirave_wdt_probe(struct i2c_client *client,
 		return ret;
 	}
 
+	dev_info(&client->dev,
+		 "Firmware version: " ZIIRAVE_FW_VERSION_FMT "\n",
+		 w_priv->firmware_rev.major, w_priv->firmware_rev.minor);
+
 	ret = ziirave_wdt_revision(client, &w_priv->bootloader_rev,
 				   ZIIRAVE_WDT_BOOT_VER_MAJOR);
 	if (ret) {
@@ -713,6 +721,10 @@  static int ziirave_wdt_probe(struct i2c_client *client,
 		return ret;
 	}
 
+	dev_info(&client->dev,
+		 "Bootloader version: " ZIIRAVE_BL_VERSION_FMT "\n",
+		 w_priv->bootloader_rev.major, w_priv->bootloader_rev.minor);
+
 	w_priv->reset_reason = i2c_smbus_read_byte_data(client,
 						ZIIRAVE_WDT_RESET_REASON);
 	if (w_priv->reset_reason < 0) {