According to Quark BSP Intel® Quark™ BSP Build and Software User Guide section 6.1 if you want a custom driver behavior you would need to follow the steps posted there. In step 4 you would need to run something similar to
echo 1 >/sys/devices/virtual/misc/watchdog/disable
and then run the bitbake.
Let me know if this works.
I built the 'iot-devkit-prof-dev-image' build from the repo-ext directory inside the BSP meta-clanton_v1.1.0-dirty directory, and it does include the watchdog support.
Once booted, remove the module first.
Now use modprobe to reload the module with new parameters. Insmod doesnt seem to be working. So to set the timeout to 10 seconds and set the resetmode as "warm reset" & "enable reset":
modprobe ie6xx_wdt timeout=10 resetmode=0x18
Start the watchdog by doing a "cat /dev/watchdog0" read. As long as I read it again before it expires, I can prevent the system from resetting.
Check it is running by doing the following read. If you do it several times, you should see the "DCR" value decreasing:
There are some additional details here: https://lists.yoctoproject.org/pipermail/meta-intel/2015-March/003010.html
Yes, thank is right. I also follow the " https://lists.yoctoproject.org/pipermail/meta-intel/2015-March/003010.html" information to build watchdog.
But I have one problem. BSP is meta-clanton_v1.1.0.
I set the CONFIG_IE6XX_WDT is "m".
The IE6XX_WDT is depends on x86 and pci.
When the system boot up, the quark system is always auto probe the ie6xx_wdt module.
I need to manual insmod the "ie6xx_wdt" driver after system boot up.
How can I do?
I’m not sure if I fully understand your question. Do you want the driver to be enabled at boot or do you want to enable it manually? You also say that you want to “insmod the driver after system boot up”. Do you need to use insmod specifically? Did the command in the last reply with modprobe worked?
Because my system have two watchdog.
One is the internal wdt (ie6xx_wdt). One is the external WDT (i2c interface).
I hope the driver initial priority --> " I2C WDT(external WDT) > ie6xx_wdt (internal WDT) "
But it always first mount the ie6xx_wdt in quark system.
I already check the ie6xx_wdt initial is "late_initcall(ie6xx_wdt_init)".
My i2c wdt(external WDT) initial is module init.
Do you know how can I do about to setting priority (i2c(external) > ie6xx (internal)).
I want to i2c external wdt module will be probe frist