Updated Doxygen documentation.

This commit is contained in:
Florian Pose
2013-02-12 15:46:43 +01:00
parent aa6740a96e
commit f6f5460485
37 changed files with 1046 additions and 198 deletions
+652 -154
View File
File diff suppressed because it is too large Load Diff
+9 -3
View File
@@ -175,15 +175,15 @@
*/
#define EC_HAVE_REG_ACCESS
/* Defined if the method ecrt_master_select_reference_clock() is available.
/** Defined if the method ecrt_master_select_reference_clock() is available.
*/
#define EC_HAVE_SELECT_REF_CLOCK
/* Defined if the method ecrt_master_reference_clock_time() is available.
/** Defined if the method ecrt_master_reference_clock_time() is available.
*/
#define EC_HAVE_REF_CLOCK_TIME
/* Defined if the method ecrt_slave_config_reg_pdo_entry_pos() is available.
/** Defined if the method ecrt_slave_config_reg_pdo_entry_pos() is available.
*/
#define EC_HAVE_REG_BY_POS
@@ -1449,6 +1449,8 @@ int ecrt_slave_config_emerg_overruns(
*
* The created SDO request object is freed automatically when the master is
* released.
*
* \return New SDO request, or NULL on error.
*/
ec_sdo_request_t *ecrt_slave_config_create_sdo_request(
ec_slave_config_t *sc, /**< Slave configuration. */
@@ -1466,6 +1468,8 @@ ec_sdo_request_t *ecrt_slave_config_create_sdo_request(
*
* The created VoE handler object is freed automatically when the master is
* released.
*
* \return New VoE handler, or NULL on error.
*/
ec_voe_handler_t *ecrt_slave_config_create_voe_handler(
ec_slave_config_t *sc, /**< Slave configuration. */
@@ -1480,6 +1484,8 @@ ec_voe_handler_t *ecrt_slave_config_create_voe_handler(
*
* The created register request object is freed automatically when the master
* is released.
*
* \return New register request, or NULL on error.
*/
ec_reg_request_t *ecrt_slave_config_create_reg_request(
ec_slave_config_t *sc, /**< Slave configuration. */
+8 -2
View File
@@ -222,6 +222,8 @@ long eccdev_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
*
* The actual mapping will be done in the eccdev_vma_nopage() callback of the
* virtual memory area.
*
* \return Always zero (success).
*/
int eccdev_mmap(
struct file *filp,
@@ -247,6 +249,8 @@ int eccdev_mmap(
*
* Called at the first access on a virtual-memory area retrieved with
* ecdev_mmap().
*
* \return Zero on success, otherwise a negative error code.
*/
static int eccdev_vma_fault(
struct vm_area_struct *vma, /**< Virtual memory area. */
@@ -257,12 +261,14 @@ static int eccdev_vma_fault(
ec_cdev_priv_t *priv = (ec_cdev_priv_t *) vma->vm_private_data;
struct page *page;
if (offset >= priv->ctx.process_data_size)
if (offset >= priv->ctx.process_data_size) {
return VM_FAULT_SIGBUS;
}
page = vmalloc_to_page(priv->ctx.process_data + offset);
if (!page)
if (!page) {
return VM_FAULT_SIGBUS;
}
get_page(page);
vmf->page = page;
+11 -4
View File
@@ -29,10 +29,9 @@
*
*****************************************************************************/
/**
\file
EtherCAT CoE emergency ring buffer methods.
*/
/** \file
* EtherCAT CoE emergency ring buffer methods.
*/
/*****************************************************************************/
@@ -73,6 +72,8 @@ void ec_coe_emerg_ring_clear(
/*****************************************************************************/
/** Set the ring size.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_coe_emerg_ring_size(
ec_coe_emerg_ring_t *ring, /**< Emergency ring. */
@@ -128,6 +129,8 @@ void ec_coe_emerg_ring_push(
/*****************************************************************************/
/** Remove an emergency message from the ring.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_coe_emerg_ring_pop(
ec_coe_emerg_ring_t *ring, /**< Emergency ring. */
@@ -146,6 +149,8 @@ int ec_coe_emerg_ring_pop(
/*****************************************************************************/
/** Clear the ring.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_coe_emerg_ring_clear_ring(
ec_coe_emerg_ring_t *ring /**< Emergency ring. */
@@ -159,6 +164,8 @@ int ec_coe_emerg_ring_clear_ring(
/*****************************************************************************/
/** Read the number of overruns.
*
* \return Number of overruns.
*/
int ec_coe_emerg_ring_overruns(
ec_coe_emerg_ring_t *ring /**< Emergency ring. */
+6 -6
View File
@@ -44,7 +44,7 @@
/** EtherCAT CoE emergency message record.
*/
typedef struct {
u8 data[EC_COE_EMERGENCY_MSG_SIZE];
u8 data[EC_COE_EMERGENCY_MSG_SIZE]; /**< Message data. */
} ec_coe_emerg_msg_t;
/*****************************************************************************/
@@ -54,12 +54,12 @@ typedef struct {
typedef struct {
ec_slave_config_t *sc; /**< Slave configuration owning the ring. */
ec_coe_emerg_msg_t *msgs;
size_t size;
ec_coe_emerg_msg_t *msgs; /**< Message ring. */
size_t size; /**< Ring size. */
unsigned int read_index;
unsigned int write_index;
unsigned int overruns;
unsigned int read_index; /**< Read index. */
unsigned int write_index; /**< Write index. */
unsigned int overruns; /**< Number of overruns since last reset. */
} ec_coe_emerg_ring_t;
/*****************************************************************************/
+2
View File
@@ -636,6 +636,8 @@ void ec_datagram_output_stats(
/*****************************************************************************/
/** Returns a string describing the datagram type.
*
* \return Pointer on a static memory containing the requested string.
*/
const char *ec_datagram_type_string(
const ec_datagram_t *datagram /**< EtherCAT datagram. */
+6 -2
View File
@@ -42,12 +42,14 @@
/*****************************************************************************/
/** Datagram pair constructor.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_datagram_pair_init(
ec_datagram_pair_t *pair, /**< Datagram pair. */
ec_domain_t *domain, /**< Parent domain. */
uint32_t logical_offset,
uint8_t *data,
uint32_t logical_offset, /**< Logical offset. */
uint8_t *data, /**< Data pointer. */
size_t data_size, /**< Data size. */
const unsigned int used[] /**< input/output use count. */
)
@@ -168,6 +170,8 @@ void ec_datagram_pair_clear(
/*****************************************************************************/
/** Process received data.
*
* \return Working counter sum over all devices.
*/
uint16_t ec_datagram_pair_process(
ec_datagram_pair_t *pair, /**< Datagram pair. */
+1 -1
View File
@@ -48,7 +48,7 @@
*/
typedef struct {
struct list_head list; /**< List header. */
ec_domain_t *domain;
ec_domain_t *domain; /**< Parent domain. */
ec_datagram_t datagrams[EC_MAX_NUM_DEVICES]; /**< Datagrams. */
#if EC_MAX_NUM_DEVICES > 1
uint8_t *send_buffer;
+8
View File
@@ -200,6 +200,8 @@ void ec_debug_send(
*****************************************************************************/
/** Opens the virtual network device.
*
* \return Always zero (success).
*/
int ec_dbgdev_open(
struct net_device *dev /**< debug net_device */
@@ -215,6 +217,8 @@ int ec_dbgdev_open(
/*****************************************************************************/
/** Stops the virtual network device.
*
* \return Always zero (success).
*/
int ec_dbgdev_stop(
struct net_device *dev /**< debug net_device */
@@ -230,6 +234,8 @@ int ec_dbgdev_stop(
/*****************************************************************************/
/** Transmits data via the virtual network device.
*
* \return Always zero (success).
*/
int ec_dbgdev_tx(
struct sk_buff *skb, /**< transmit socket buffer */
@@ -246,6 +252,8 @@ int ec_dbgdev_tx(
/*****************************************************************************/
/** Gets statistics about the virtual network device.
*
* \return Statistics.
*/
struct net_device_stats *ec_dbgdev_stats(
struct net_device *dev /**< debug net_device */
+2
View File
@@ -698,6 +698,8 @@ void ecdev_set_link(
/** Reads the link state.
*
* \ingroup DeviceInterface
*
* \return Link state.
*/
uint8_t ecdev_get_link(
const ec_device_t *device /**< EtherCAT device */
+6
View File
@@ -43,6 +43,8 @@
#include "domain.h"
#include "datagram_pair.h"
/** Extra debug output for redundancy functions.
*/
#define DEBUG_REDUNDANCY 0
/*****************************************************************************/
@@ -187,6 +189,8 @@ int ec_domain_add_datagram_pair(
*
* Walks through the list of all FMMU configurations for the current datagram
* and ends before the current datagram.
*
* \return Non-zero if slave connfig was already counted.
*/
int shall_count(
const ec_fmmu_config_t *cur_fmmu, /**< Current FMMU with direction to
@@ -340,6 +344,8 @@ unsigned int ec_domain_fmmu_count(const ec_domain_t *domain)
/*****************************************************************************/
/** Get a certain FMMU configuration via its position in the list.
*
* \return FMMU at position \a pos, or NULL.
*/
const ec_fmmu_config_t *ec_domain_find_fmmu(
const ec_domain_t *domain, /**< EtherCAT domain. */
+14 -2
View File
@@ -98,6 +98,8 @@ static const struct net_device_ops ec_eoedev_ops = {
/** EoE constructor.
*
* Initializes the EoE handler, creates a net_device and registers it.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_eoe_init(
ec_eoe_t *eoe, /**< EoE handler */
@@ -246,6 +248,8 @@ void ec_eoe_flush(ec_eoe_t *eoe /**< EoE handler */)
/*****************************************************************************/
/** Sends a frame or the next fragment.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_eoe_send(ec_eoe_t *eoe /**< EoE handler */)
{
@@ -385,7 +389,7 @@ int ec_eoe_is_idle(const ec_eoe_t *eoe /**< EoE handler */)
* Starts a new receiving sequence by queueing a datagram that checks the
* slave's mailbox for a new EoE datagram.
*
* \fixme Use both devices.
* \todo Use both devices.
*/
void ec_eoe_state_rx_start(ec_eoe_t *eoe /**< EoE handler */)
{
@@ -614,7 +618,7 @@ void ec_eoe_state_rx_fetch(ec_eoe_t *eoe /**< EoE handler */)
* Starts a new transmit sequence. If no data is available, a new receive
* sequence is started instead.
*
* \fixme Use both devices.
* \todo Use both devices.
*/
void ec_eoe_state_tx_start(ec_eoe_t *eoe /**< EoE handler */)
{
@@ -754,6 +758,8 @@ void ec_eoe_state_tx_sent(ec_eoe_t *eoe /**< EoE handler */)
*****************************************************************************/
/** Opens the virtual network device.
*
* \return Always zero (success).
*/
int ec_eoedev_open(struct net_device *dev /**< EoE net_device */)
{
@@ -774,6 +780,8 @@ int ec_eoedev_open(struct net_device *dev /**< EoE net_device */)
/*****************************************************************************/
/** Stops the virtual network device.
*
* \return Always zero (success).
*/
int ec_eoedev_stop(struct net_device *dev /**< EoE net_device */)
{
@@ -794,6 +802,8 @@ int ec_eoedev_stop(struct net_device *dev /**< EoE net_device */)
/*****************************************************************************/
/** Transmits data via the virtual network device.
*
* \return Zero on success, non-zero on failure.
*/
int ec_eoedev_tx(struct sk_buff *skb, /**< transmit socket buffer */
struct net_device *dev /**< EoE net_device */
@@ -844,6 +854,8 @@ int ec_eoedev_tx(struct sk_buff *skb, /**< transmit socket buffer */
/*****************************************************************************/
/** Gets statistics about the virtual network device.
*
* \return Statistics.
*/
struct net_device_stats *ec_eoedev_stats(
struct net_device *dev /**< EoE net_device */
+6 -1
View File
@@ -103,7 +103,10 @@ void ec_foe_request_clear_data(
/** Pre-allocates the data memory.
*
* If the \a buffer_size is already bigger than \a size, nothing is done.
* If the internal \a buffer_size is already bigger than \a size, nothing is
* done.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_foe_request_alloc(
ec_foe_request_t *req, /**< FoE request. */
@@ -131,6 +134,8 @@ int ec_foe_request_alloc(
/** Copies FoE data from an external source.
*
* If the \a buffer_size is to small, new memory is allocated.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_foe_request_copy_data(
ec_foe_request_t *req, /**< FoE request. */
+22 -1
View File
@@ -27,7 +27,8 @@
*
*****************************************************************************/
/** \file EtherCAT CoE state machines.
/** \file
* EtherCAT CoE state machines.
*/
/*****************************************************************************/
@@ -307,6 +308,10 @@ int ec_fsm_coe_check_emergency(
* CoE dictionary state machine
*****************************************************************************/
/** Prepare a dictionary request.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_fsm_coe_prepare_dict(
ec_fsm_coe_t *fsm, /**< Finite state machine. */
ec_datagram_t *datagram /**< Datagram to use. */
@@ -455,6 +460,10 @@ void ec_fsm_coe_dict_check(
/*****************************************************************************/
/** Prepare an object description request.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_fsm_coe_dict_prepare_desc(
ec_fsm_coe_t *fsm, /**< Finite state machine. */
ec_datagram_t *datagram /**< Datagram to use. */
@@ -733,6 +742,10 @@ void ec_fsm_coe_dict_desc_check(
/*****************************************************************************/
/** Prepare an entry description request.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_fsm_coe_dict_prepare_entry(
ec_fsm_coe_t *fsm, /**< Finite state machine */
ec_datagram_t *datagram /**< Datagram to use. */
@@ -1172,6 +1185,10 @@ void ec_fsm_coe_dict_entry_response(
* CoE state machine
*****************************************************************************/
/** Prepare a donwnload request.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_fsm_coe_prepare_down_start(
ec_fsm_coe_t *fsm, /**< Finite state machine. */
ec_datagram_t *datagram /**< Datagram to use. */
@@ -1814,6 +1831,10 @@ void ec_fsm_coe_down_seg_response(
/*****************************************************************************/
/** Prepare an upload request.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_fsm_coe_prepare_up(
ec_fsm_coe_t *fsm, /**< Finite state machine. */
ec_datagram_t *datagram /**< Datagram to use. */
+9 -1
View File
@@ -230,9 +230,11 @@ void ec_fsm_foe_end(
/*****************************************************************************/
/** Sends a file or the next fragment.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_foe_prepare_data_send(
ec_fsm_foe_t *fsm,
ec_fsm_foe_t *fsm, /**< Finite state machine. */
ec_datagram_t *datagram /**< Datagram to use. */
)
{
@@ -270,6 +272,8 @@ int ec_foe_prepare_data_send(
/*****************************************************************************/
/** Prepare a write request (WRQ) with filename
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_foe_prepare_wrq_send(
ec_fsm_foe_t *fsm, /**< Finite state machine. */
@@ -545,6 +549,8 @@ void ec_fsm_foe_state_data_sent(
/*****************************************************************************/
/** Prepare a read request (RRQ) with filename
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_foe_prepare_rrq_send(
ec_fsm_foe_t *fsm, /**< Finite state machine. */
@@ -577,6 +583,8 @@ int ec_foe_prepare_rrq_send(
/*****************************************************************************/
/** Prepare to send an acknowledge.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_foe_prepare_send_ack(
ec_fsm_foe_t *fsm, /**< FoE statemachine. */
+4
View File
@@ -959,6 +959,8 @@ void ec_fsm_master_enter_write_system_times(
/*****************************************************************************/
/** Configure 32 bit time offset.
*
* \return New offset.
*/
u64 ec_fsm_master_dc_offset32(
ec_fsm_master_t *fsm, /**< Master state machine. */
@@ -999,6 +1001,8 @@ u64 ec_fsm_master_dc_offset32(
/*****************************************************************************/
/** Configure 64 bit time offset.
*
* \return New offset.
*/
u64 ec_fsm_master_dc_offset64(
ec_fsm_master_t *fsm, /**< Master state machine. */
+4 -1
View File
@@ -27,7 +27,8 @@
*
*****************************************************************************/
/** \file EtherCAT PDO configuration state machine.
/** \file
* EtherCAT PDO configuration state machine.
*/
/*****************************************************************************/
@@ -396,6 +397,8 @@ void ec_fsm_pdo_conf_state_start(
/*****************************************************************************/
/** Assign next PDO.
*
* \return Next PDO, or NULL.
*/
ec_pdo_t *ec_fsm_pdo_conf_action_next_pdo(
const ec_fsm_pdo_t *fsm, /**< PDO configuration state machine. */
+2
View File
@@ -363,6 +363,8 @@ void ec_fsm_pdo_entry_conf_state_start(
/*****************************************************************************/
/** Process next PDO entry.
*
* \return Next PDO entry, or NULL.
*/
ec_pdo_entry_t *ec_fsm_pdo_entry_conf_next_entry(
const ec_fsm_pdo_entry_t *fsm, /**< PDO mapping state machine. */
+2
View File
@@ -158,6 +158,8 @@ void ec_fsm_slave_set_ready(
/*****************************************************************************/
/** Returns, if the FSM is currently not busy and ready to execute.
*
* \return Non-zero if ready.
*/
int ec_fsm_slave_is_ready(
const ec_fsm_slave_t *fsm /**< Slave state machine. */
+203 -15
View File
File diff suppressed because it is too large Load Diff
+14
View File
@@ -614,6 +614,8 @@ void ec_master_thread_stop(
/*****************************************************************************/
/** Transition function from ORPHANED to IDLE phase.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_master_enter_idle_phase(
ec_master_t *master /**< EtherCAT master */
@@ -669,6 +671,8 @@ void ec_master_leave_idle_phase(ec_master_t *master /**< EtherCAT master */)
/*****************************************************************************/
/** Transition function from IDLE to OPERATION phase.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_master_enter_operation_phase(
ec_master_t *master /**< EtherCAT master */
@@ -897,6 +901,8 @@ void ec_master_set_send_interval(
/*****************************************************************************/
/** Searches for a free datagram in the external datagram ring.
*
* \return Next free datagram, or NULL.
*/
ec_datagram_t *ec_master_get_external_datagram(
ec_master_t *master /**< EtherCAT master */
@@ -1779,6 +1785,8 @@ void ec_master_attach_slave_configs(
} while (0)
/** Finds a slave in the bus, given the alias and position.
*
* \return Search result, or NULL.
*/
ec_slave_t *ec_master_find_slave(
ec_master_t *master, /**< EtherCAT master. */
@@ -1793,6 +1801,8 @@ ec_slave_t *ec_master_find_slave(
/** Finds a slave in the bus, given the alias and position.
*
* Const version.
*
* \return Search result, or NULL.
*/
const ec_slave_t *ec_master_find_slave_const(
const ec_master_t *master, /**< EtherCAT master. */
@@ -2068,6 +2078,8 @@ void ec_master_find_dc_ref_clock(
/*****************************************************************************/
/** Calculates the bus topology; recursion function.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_master_calc_topology_rec(
ec_master_t *master, /**< EtherCAT master. */
@@ -2199,6 +2211,8 @@ void ec_master_request_op(
*****************************************************************************/
/** Same as ecrt_master_create_domain(), but with ERR_PTR() return value.
*
* \return New domain, or ERR_PTR() return value.
*/
ec_domain_t *ecrt_master_create_domain_err(
ec_master_t *master /**< master */
+4
View File
@@ -103,6 +103,8 @@
* where INDEX is the master index.
*
* \param master EtherCAT master
* \param level Debug level. Master's debug level must be >= \a level for
* output.
* \param fmt format string (like in printf())
* \param args arguments (optional)
*/
@@ -318,6 +320,8 @@ int ec_master_init(ec_master_t *, unsigned int, const uint8_t *,
const uint8_t *, dev_t, struct class *, unsigned int);
void ec_master_clear(ec_master_t *);
/** Number of Ethernet devices.
*/
#if EC_MAX_NUM_DEVICES > 1
#define ec_master_num_devices(MASTER) ((MASTER)->num_devices)
#else
+4
View File
@@ -388,6 +388,8 @@ void ec_print_data_diff(const uint8_t *d1, /**< first data */
/*****************************************************************************/
/** Prints slave states in clear text.
*
* \return Size of the created string.
*/
size_t ec_state_string(uint8_t states, /**< slave states */
char *buffer, /**< target buffer
@@ -522,6 +524,8 @@ ec_device_t *ecdev_offer(
/** Request a master.
*
* Same as ecrt_request_master(), but with ERR_PTR() return value.
*
* \return Requested master.
*/
ec_master_t *ecrt_request_master_err(
unsigned int master_index /**< Master index. */
+2
View File
@@ -273,6 +273,8 @@ unsigned int ec_pdo_entry_count(
/** Finds a PDO entry via its position in the list.
*
* Const version.
*
* \return Search result, or NULL.
*/
const ec_pdo_entry_t *ec_pdo_find_entry_by_pos_const(
const ec_pdo_t *pdo, /**< PDO. */
+6
View File
@@ -237,6 +237,8 @@ int ec_pdo_list_equal(
/*****************************************************************************/
/** Finds a PDO with the given index.
*
* \return Search result, or NULL.
*/
ec_pdo_t *ec_pdo_list_find_pdo(
const ec_pdo_list_t *pl, /**< PDO list. */
@@ -257,6 +259,8 @@ ec_pdo_t *ec_pdo_list_find_pdo(
/*****************************************************************************/
/** Finds a PDO with the given index and returns a const pointer.
*
* \return Search result, or NULL.
*/
const ec_pdo_t *ec_pdo_list_find_pdo_const(
const ec_pdo_list_t *pl, /**< PDO list. */
@@ -279,6 +283,8 @@ const ec_pdo_t *ec_pdo_list_find_pdo_const(
/** Finds a PDO via its position in the list.
*
* Const version.
*
* \return Zero on success, otherwise a negative error code.
*/
const ec_pdo_t *ec_pdo_list_find_pdo_by_pos_const(
const ec_pdo_list_t *pl, /**< PDO list. */
+2
View File
@@ -42,6 +42,8 @@
/*****************************************************************************/
/** Register request constructor.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_reg_request_init(
ec_reg_request_t *reg, /**< Register request. */
+1 -1
View File
@@ -52,7 +52,7 @@ struct ec_reg_request {
ec_direction_t dir; /**< Direction. EC_DIR_OUTPUT means writing to the
slave, EC_DIR_INPUT means reading from the slave. */
uint16_t address; /**< Register address. */
size_t transfer_size; /*< Size of the data to transfer. */
size_t transfer_size; /**< Size of the data to transfer. */
ec_internal_request_state_t state; /**< Request state. */
};
+2 -2
View File
@@ -45,8 +45,8 @@
/** Context structure for an open RTDM file handle.
*/
typedef struct {
rtdm_user_info_t *user_info;
ec_ioctl_context_t ioctl_ctx;
rtdm_user_info_t *user_info; /**< RTDM user info. */
ec_ioctl_context_t ioctl_ctx; /**< Context structure. */
} ec_rtdm_context_t;
/****************************************************************************/
+4 -2
View File
@@ -35,9 +35,11 @@ struct rtdm_device;
/*****************************************************************************/
/** EtherCAT RTDM device.
*/
typedef struct ec_rtdm_dev {
ec_master_t *master;
struct rtdm_device *dev;
ec_master_t *master; /**< Master pointer. */
struct rtdm_device *dev; /**< RTDM device. */
} ec_rtdm_dev_t;
/*****************************************************************************/
+2
View File
@@ -85,6 +85,8 @@ void ec_sdo_request_clear(
/** Copy another SDO request.
*
* \attention Only the index subindex and data are copied.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_sdo_request_copy(
ec_sdo_request_t *req, /**< SDO request. */
+8
View File
@@ -797,6 +797,8 @@ void ec_slave_attach_pdo_names(
/*****************************************************************************/
/** Returns the previous connected port of a given port.
*
* \return Port index.
*/
unsigned int ec_slave_get_previous_port(
ec_slave_t *slave, /**< EtherCAT slave. */
@@ -825,6 +827,8 @@ unsigned int ec_slave_get_previous_port(
/*****************************************************************************/
/** Returns the next connected port of a given port.
*
* \return Port index.
*/
unsigned int ec_slave_get_next_port(
ec_slave_t *slave, /**< EtherCAT slave. */
@@ -853,6 +857,8 @@ unsigned int ec_slave_get_next_port(
/*****************************************************************************/
/** Calculates the sum of round-trip-times of connected ports 1-3.
*
* \return Round-trip-time in ns.
*/
uint32_t ec_slave_calc_rtt_sum(
ec_slave_t *slave /**< EtherCAT slave. */
@@ -877,6 +883,8 @@ uint32_t ec_slave_calc_rtt_sum(
/*****************************************************************************/
/** Finds the next slave supporting DC delay measurement.
*
* \return Next DC slave, or NULL.
*/
ec_slave_t *ec_slave_find_next_dc_slave(
ec_slave_t *slave /**< EtherCAT slave. */
+2
View File
@@ -98,6 +98,8 @@
* POSITION is the slave's ring position.
*
* \param slave EtherCAT slave
* \param level Debug level. Master's debug level must be >= \a level for
* output.
* \param fmt format string (like in printf())
* \param args arguments (optional)
*/
+10
View File
@@ -388,6 +388,8 @@ unsigned int ec_slave_config_sdo_count(
/** Finds an SDO configuration via its position in the list.
*
* Const version.
*
* \return Search result, or NULL.
*/
const ec_sdo_request_t *ec_slave_config_get_sdo_by_pos_const(
const ec_slave_config_t *sc, /**< Slave configuration. */
@@ -430,6 +432,8 @@ unsigned int ec_slave_config_idn_count(
/** Finds an IDN configuration via its position in the list.
*
* Const version.
*
* \return Search result, or NULL.
*/
const ec_soe_request_t *ec_slave_config_get_idn_by_pos_const(
const ec_slave_config_t *sc, /**< Slave configuration. */
@@ -450,6 +454,8 @@ const ec_soe_request_t *ec_slave_config_get_idn_by_pos_const(
/*****************************************************************************/
/** Finds a CoE handler via its position in the list.
*
* \return Search result, or NULL.
*/
ec_sdo_request_t *ec_slave_config_find_sdo_request(
ec_slave_config_t *sc, /**< Slave configuration. */
@@ -470,6 +476,8 @@ ec_sdo_request_t *ec_slave_config_find_sdo_request(
/*****************************************************************************/
/** Finds a register handler via its position in the list.
*
* \return Search result, or NULL.
*/
ec_reg_request_t *ec_slave_config_find_reg_request(
ec_slave_config_t *sc, /**< Slave configuration. */
@@ -490,6 +498,8 @@ ec_reg_request_t *ec_slave_config_find_reg_request(
/*****************************************************************************/
/** Finds a VoE handler via its position in the list.
*
* \return Search result, or NULL.
*/
ec_voe_handler_t *ec_slave_config_find_voe_handler(
ec_slave_config_t *sc, /**< Slave configuration. */
+2
View File
@@ -98,6 +98,8 @@
* and ALIAS and POSITION identify the configuration.
*
* \param sc EtherCAT slave configuration
* \param level Debug level. Master's debug level must be >= \a level for
* output.
* \param fmt format string (like in printf())
* \param args arguments (optional)
*/
+2
View File
@@ -84,6 +84,8 @@ void ec_soe_request_clear(
/*****************************************************************************/
/** Copy another SoE request.
*
* \return Zero on success, otherwise a negative error code.
*/
int ec_soe_request_copy(
ec_soe_request_t *req, /**< SoE request. */
+2
View File
@@ -161,6 +161,8 @@ int ec_sync_add_pdo(
/*****************************************************************************/
/** Determines the default direction from the control register.
*
* \return Direction.
*/
ec_direction_t ec_sync_default_direction(
const ec_sync_t *sync /**< EtherCAT sync manager. */
+2
View File
@@ -106,6 +106,8 @@ void ec_voe_handler_clear(
/*****************************************************************************/
/** Get usable memory size.
*
* \return Memory size.
*/
size_t ec_voe_handler_mem_size(
const ec_voe_handler_t *voe /**< VoE handler. */