Hi, On 8/18/21 4:13 PM, Guenter Roeck wrote: > On 8/18/21 2:57 AM, Jose Noguera wrote: >> Hello all! >> >> I’m Jose, working in Red Hat on Fedora IoT and RHEL For Edge related projects. >> >> While trying to add the feature of figuring out whether the current boot was triggered or not by a hardware watchdog using wdctl, we’ve found an odd behaviour in the drivers definition that we would like to check with you. >> >> Looking specifically for the flag WDIOF_CARDRESET, we can find 40 files that contain it: >> >> $ grep -rl CARDRESET drivers/watchdog/ | wc -l >> 40 >> >> but only 19 of them have the flag advertised in the options field of the watchdog_info struct returned by the WDIOC_GETSUPPORT ioctl. >> >> This leads to wdctl not showing WDIOF_CARDRESET for drivers like i6300esb, even when the board had been reset this way: >> >> $ sudo wdctl >> Device: /dev/watchdog0 >> Identity: i6300ESB timer [version 0] >> Timeout: 30 seconds >> Pre-timeout: 0 seconds >> >> FLAG DESCRIPTION STATUS BOOT-STATUS >> KEEPALIVEPING Keep alive ping reply 1 0 >> MAGICCLOSE Supports magic close char 0 0 >> SETTIMEOUT Set timeout (in seconds) 0 0 >> >> Working with Hans (in CC), we added a little patch (BugZilla ticket: 1993983) on wdctl and this would be the output of the command when it was a card reset triggered boot: >> >> $ sudo wdctl >> Device: /dev/watchdog0 >> Identity: i6300ESB timer [version 0] >> Thank you all for your time, >> >> Jose > >> Timeout: 30 seconds >> Pre-timeout: 0 seconds >> >> FLAG DESCRIPTION STATUS BOOT-STATUS >> CARDRESET Card previously reset the CPU 1 1 >> KEEPALIVEPING Keep alive ping reply 1 0 >> MAGICCLOSE Supports magic close char 0 0 >> SETTIMEOUT Set timeout (in seconds) 0 0 >> >> So our question is, may we know what is intended to be present in ident.options? What should the API call WDIOC_GETSUPPORT return in the options field? >> > > Search for WDIOC_GETSUPPORT in Documentation/watchdog/watchdog-api.rst. > I don't see any ambiguity there. Patches welcome. Ok, so drivers which may set CARDRESET in their GETBOOTSTATUS reply, but don't advertise this in their GETSUPPORT watchdog_info.options reply are buggy and should be fixed, got it. Thanks. I've made a note about fixing this in a possible-kernel-projects document which I keep for when people who are interested in kernel development ask me for projects. Regards, Hans