06.01.2016 16:17, Peter Crosthwaite пишет:
+        if ((old & 3) != (tb->control & 3)) {
+            ptimer_stop(tb->timer);
+        }
+        if (!(tb->control & 1)) {
+            break;
+        }
+        ptimer_set_period(tb->timer, timerblock_scale(tb));
+        if ((old & 3) != (tb->control & 3)) {
+            value = ptimer_get_count(tb->timer);
+            timerblock_run(tb, value, 1);

Is this reachable when the load value is still 0?


Yes, timer runs based on current counter value. You can load = 0 and set counter != 0 that would result in one-shot tick. Hmm... I need to fix it. Thanks for leading question!

Ughh... just noticed that test_timer_set_oneshot_count_to_0() on real HW sets IT bit if prescaler != 0. Looking into it..

--
Dmitry

Reply via email to