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.smir...@gmail.com>
Reviewed-by: Guenter Roeck <li...@roeck-us.net>
Cc: Chris Healy <cphe...@gmail.com>
Cc: Guenter Roeck <li...@roeck-us.net>
Cc: Rick Ramstetter <r...@anteaterllc.com>
Cc: linux-watch...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
---
 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 a11b92383c5f..75c066602c00 100644
--- a/drivers/watchdog/ziirave_wdt.c
+++ b/drivers/watchdog/ziirave_wdt.c
@@ -69,6 +69,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;
@@ -489,7 +492,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);
@@ -512,7 +515,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);
@@ -579,7 +582,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 */
@@ -716,6 +720,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) {
@@ -723,6 +731,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

Reply via email to