я бы искал ошибку в своем коде - не знаю про ваши планы и что вам надо, если пропишете запуск через inittab то естественно никакой "S9X скрипт" уже не нужен
если включен сторожевой таймер в конфиге буилдрута - ничего больше делать не нужно - стартует штатный демон из состава busybox для сброса таймера. Открывать и закрывать файл /dev/watchdog не могут два процесса по определению
Не понимаю тогда,
Может подскажете как настроить WDT чтобы при сбое(зацикливании, потере связи, переполнении .....) в моем приложении произошёл перезапуск устройства.
На c51 я просто дёргал аппаратный WDT каждую секунду за ногу и тот знал что у меня все в порядке, а если не успел дернуть, то устройство перезапускалось.
пересоберите убут и делайте с ватчдогом что хотите - ссылку на API я вам дал. Эта галка активирует сторожевой таймер на раннем этапе загрузки в убуте и добавляет стартовый скрипт для сброса после загрузки ядра - сторожевой таймер работает как общесистемная защита от сбоев.
Если надо активировать в убуте но не запускть демон а сбрасывать из своего приложения - поправьте скрипт
if grep -q "BR2_TARGET_UBOOT_WATCHDOG=y" .config; then
install -m 0755 $BOARD_DIR/S15watchdog $1/etc/init.d/
else
test -f $1/etc/init.d/S15watchdog && rm $1/etc/init.d/S15watchdog
fi
оставьте удаление стартового скрипта для демона
test -f $1/etc/init.d/S15watchdog && rm $1/etc/init.d/S15watchdog