diff -r 661b61ca86ed -r 1115793a76ed master/fsm_pdo_assign.c --- a/master/fsm_pdo_assign.c Mon Apr 07 15:12:43 2008 +0000 +++ b/master/fsm_pdo_assign.c Mon Apr 07 15:47:22 2008 +0000 @@ -152,6 +152,7 @@ } fsm->dir = (ec_direction_t) -1; // next is EC_DIR_OUTPUT + fsm->num_configured_dirs = 0; ec_fsm_pdo_assign_next_dir(fsm); } @@ -191,6 +192,8 @@ return; } + fsm->num_configured_dirs++; + if (fsm->slave->master->debug_level) { EC_DBG("Changing Pdo assignment for SM%u of slave %u.\n", fsm->sync->index, fsm->slave->ring_position); @@ -215,9 +218,9 @@ return; } - if (fsm->slave->master->debug_level) - EC_DBG("Pdo assignment finished for slave %u.\n", - fsm->slave->ring_position); + if (fsm->slave->master->debug_level && !fsm->num_configured_dirs) + EC_DBG("Pdo assignments of slave %u are already configured" + " correctly.\n", fsm->slave->ring_position); fsm->state = ec_fsm_pdo_assign_state_end; } @@ -348,8 +351,8 @@ } if (fsm->slave->master->debug_level) - EC_DBG("Successfully set Pdo assignment for SM%u of slave %u.\n", - fsm->sync->index, fsm->slave->ring_position); + EC_DBG("Successfully configured Pdo assignment for SM%u of" + " slave %u.\n", fsm->sync->index, fsm->slave->ring_position); // assignment for this direction finished ec_fsm_pdo_assign_next_dir(fsm);