Message ID | 20190731174252.18041-6-andrew.smirnov@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | Ziirave_wdt driver fixes | expand |
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 >
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) {
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(-)