--- a/master/domain.c Wed Aug 09 15:00:20 2006 +0000
+++ b/master/domain.c Tue Aug 15 08:09:18 2006 +0000
@@ -106,7 +106,7 @@
domain->data_size = 0;
domain->base_address = 0;
domain->response_count = 0xFFFFFFFF;
- domain->t_last = 0;
+ domain->notify_jiffies = 0;
domain->working_counter_changes = 0;
INIT_LIST_HEAD(&domain->data_regs);
@@ -513,7 +513,6 @@
{
unsigned int working_counter_sum;
ec_datagram_t *datagram;
- cycles_t t_now = get_cycles();
working_counter_sum = 0;
list_for_each_entry(datagram, &domain->datagrams, list) {
@@ -528,8 +527,8 @@
}
if (domain->working_counter_changes &&
- (u32) (t_now - domain->t_last) / cpu_khz > 1000) {
- domain->t_last = t_now;
+ jiffies - domain->notify_jiffies > HZ) {
+ domain->notify_jiffies = jiffies;
if (domain->working_counter_changes == 1) {
EC_INFO("Domain %i working counter change: %i\n", domain->index,
domain->response_count);