equal
deleted
inserted
replaced
333 slave_idx = 0; |
333 slave_idx = 0; |
334 for (i = 0; i < master->slave_count; i++, slave_idx++) { |
334 for (i = 0; i < master->slave_count; i++, slave_idx++) { |
335 slave = master->slaves + i; |
335 slave = master->slaves + i; |
336 if (!slave->type) continue; |
336 if (!slave->type) continue; |
337 |
337 |
338 if (strcmp(slave->type->vendor_name, "Beckhoff") == 0 && |
338 if (slave->type->bus_coupler) { |
339 strcmp(slave->type->product_name, "EK1100") == 0) { |
|
340 coupler_idx++; |
339 coupler_idx++; |
341 slave_idx = 0; |
340 slave_idx = 0; |
342 } |
341 } |
343 |
342 |
344 if (coupler_idx == first && slave_idx == second) return slave; |
343 if (coupler_idx == first && slave_idx == second) return slave; |
541 if (unlikely(ec_slave_state_change(slave, EC_SLAVE_STATE_PREOP))) |
540 if (unlikely(ec_slave_state_change(slave, EC_SLAVE_STATE_PREOP))) |
542 return -1; |
541 return -1; |
543 |
542 |
544 // Slaves that are not registered are only brought into PREOP |
543 // Slaves that are not registered are only brought into PREOP |
545 // state -> nice blinking and mailbox comm. possible |
544 // state -> nice blinking and mailbox comm. possible |
546 if (!slave->registered) { |
545 if (!slave->registered && !slave->type->bus_coupler) { |
547 printk(KERN_WARNING "EtherCAT: Slave %i was not registered!\n", |
546 printk(KERN_WARNING "EtherCAT: Slave %i was not registered!\n", |
548 slave->ring_position); |
547 slave->ring_position); |
549 continue; |
548 continue; |
550 } |
549 } |
551 |
550 |