equal
deleted
inserted
replaced
108 } |
108 } |
109 } |
109 } |
110 |
110 |
111 /*****************************************************************************/ |
111 /*****************************************************************************/ |
112 |
112 |
|
113 void ecrt_slave_config_overlapping_pdos(ec_slave_config_t *sc, |
|
114 uint8_t allow_overlapping_pdos) |
|
115 { |
|
116 ec_ioctl_config_t data; |
|
117 |
|
118 memset(&data, 0x00, sizeof(ec_ioctl_config_t)); |
|
119 data.config_index = sc->index; |
|
120 data.allow_overlapping_pdos = allow_overlapping_pdos; |
|
121 |
|
122 if (ioctl(sc->master->fd, EC_IOCTL_SC_OVERLAPPING_IO, &data) == -1) { |
|
123 fprintf(stderr, "Failed to config overlapping PDOs: %s\n", |
|
124 strerror(errno)); |
|
125 } |
|
126 } |
|
127 |
|
128 /*****************************************************************************/ |
|
129 |
113 int ecrt_slave_config_pdo_assign_add(ec_slave_config_t *sc, |
130 int ecrt_slave_config_pdo_assign_add(ec_slave_config_t *sc, |
114 uint8_t sync_index, uint16_t pdo_index) |
131 uint8_t sync_index, uint16_t pdo_index) |
115 { |
132 { |
116 ec_ioctl_config_pdo_t data; |
133 ec_ioctl_config_pdo_t data; |
117 |
134 |
413 } |
430 } |
414 |
431 |
415 if (size) { |
432 if (size) { |
416 req->data = malloc(size); |
433 req->data = malloc(size); |
417 if (!req->data) { |
434 if (!req->data) { |
418 fprintf(stderr, "Failed to allocate %u bytes of SDO data" |
435 fprintf(stderr, "Failed to allocate %zu bytes of SDO data" |
419 " memory.\n", size); |
436 " memory.\n", size); |
420 free(req); |
437 free(req); |
421 return 0; |
438 return 0; |
422 } |
439 } |
423 } else { |
440 } else { |
482 } |
499 } |
483 |
500 |
484 if (size) { |
501 if (size) { |
485 voe->data = malloc(size); |
502 voe->data = malloc(size); |
486 if (!voe->data) { |
503 if (!voe->data) { |
487 fprintf(stderr, "Failed to allocate %u bytes of VoE data" |
504 fprintf(stderr, "Failed to allocate %zu bytes of VoE data" |
488 " memory.\n", size); |
505 " memory.\n", size); |
489 free(voe); |
506 free(voe); |
490 return 0; |
507 return 0; |
491 } |
508 } |
492 } else { |
509 } else { |