Hi Matt, Le Monday 27 July 2015 à 14:38 +0100, Matt Fleming a écrit : > From: Matt Fleming <matt.fleming@xxxxxxxxx> > > The revision of the watchdog hardware in Sunrisepoint necessitates a new > "version" inside the TCO watchdog driver because some of the register > layouts have changed. > > Cc: Wim Van Sebroeck <wim@xxxxxxxxx> > Signed-off-by: Matt Fleming <matt.fleming@xxxxxxxxx> > --- > drivers/watchdog/iTCO_wdt.c | 58 ++++++++++++++++++++++++++------------------- > 1 file changed, 34 insertions(+), 24 deletions(-) > > diff --git a/drivers/watchdog/iTCO_wdt.c b/drivers/watchdog/iTCO_wdt.c > index 9a6e70976f64..17dfbc51b85a 100644 > --- a/drivers/watchdog/iTCO_wdt.c > +++ b/drivers/watchdog/iTCO_wdt.c > (...) > @@ -503,7 +510,10 @@ static int iTCO_wdt_probe(struct platform_device *dev) > pdata->name, pdata->iTCO_version, (u64)TCOBASE); > > /* Clear out the (probably old) status */ > - if (iTCO_wdt_private.iTCO_version == 3) { > + if (iTCO_wdt_private.iTCO_version == 4) { > + outw(0x0008, TCO1_STS); /* Clear the Time Out Status bit */ > + outw(0x0002, TCO2_STS); /* Clear SECOND_TO_STS bit */ > + } else if (iTCO_wdt_private.iTCO_version == 3) { > outl(0x20008, TCO1_STS); > } else { > outw(0x0008, TCO1_STS); /* Clear the Time Out Status bit */ The "version == 4" branch is a subset of the "else" branch, so you could merge both with a conditional. If you prefer not to, then it probably makes sense to change the whole block to a switch/case construct. -- Jean Delvare SUSE L3 Support -- To unsubscribe from this list: send the line "unsubscribe linux-watchdog" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html