slave_config.h File Reference

EtherCAT slave configuration structure. More...

Go to the source code of this file.

Data Structures

struct  ec_slave_config
 EtherCAT slave configuration. More...

Defines

#define EC_CONFIG_INFO(sc, fmt, args...)
 Convenience macro for printing configuration-specific information to syslog.
#define EC_CONFIG_ERR(sc, fmt, args...)
 Convenience macro for printing configuration-specific errors to syslog.
#define EC_CONFIG_WARN(sc, fmt, args...)
 Convenience macro for printing configuration-specific warnings to syslog.
#define EC_CONFIG_DBG(sc, level, fmt, args...)
 Convenience macro for printing configuration-specific debug messages to syslog.

Functions

void ec_slave_config_init (ec_slave_config_t *, ec_master_t *, uint16_t, uint16_t, uint32_t, uint32_t)
 Slave configuration constructor.
void ec_slave_config_clear (ec_slave_config_t *)
 Slave configuration destructor.
int ec_slave_config_attach (ec_slave_config_t *)
 Attaches the configuration to the addressed slave object.
void ec_slave_config_detach (ec_slave_config_t *)
 Detaches the configuration from a slave object.
void ec_slave_config_load_default_sync_config (ec_slave_config_t *)
 Loads the default PDO assignment from the slave object.
unsigned int ec_slave_config_sdo_count (const ec_slave_config_t *)
 Get the number of SDO configurations.
const ec_sdo_request_tec_slave_config_get_sdo_by_pos_const (const ec_slave_config_t *, unsigned int)
 Finds an SDO configuration via its position in the list.
unsigned int ec_slave_config_idn_count (const ec_slave_config_t *)
 Get the number of IDN configurations.
const ec_soe_request_tec_slave_config_get_idn_by_pos_const (const ec_slave_config_t *, unsigned int)
 Finds an IDN configuration via its position in the list.
ec_sdo_request_tec_slave_config_find_sdo_request (ec_slave_config_t *, unsigned int)
 Finds a CoE handler via its position in the list.
ec_reg_request_tec_slave_config_find_reg_request (ec_slave_config_t *, unsigned int)
 Finds a register handler via its position in the list.
ec_voe_handler_tec_slave_config_find_voe_handler (ec_slave_config_t *, unsigned int)
 Finds a VoE handler via its position in the list.
ec_sdo_request_tecrt_slave_config_create_sdo_request_err (ec_slave_config_t *, uint16_t, uint8_t, size_t)
 Same as ecrt_slave_config_create_sdo_request(), but with ERR_PTR() return value.
ec_voe_handler_tecrt_slave_config_create_voe_handler_err (ec_slave_config_t *, size_t)
 Same as ecrt_slave_config_create_voe_handler(), but with ERR_PTR() return value.
ec_reg_request_tecrt_slave_config_create_reg_request_err (ec_slave_config_t *, size_t)
 Same as ecrt_slave_config_create_reg_request(), but with ERR_PTR() return value.


Detailed Description

EtherCAT slave configuration structure.

Definition in file slave_config.h.


Define Documentation

#define EC_CONFIG_INFO ( sc,
fmt,
args...   ) 

Value:

printk(KERN_INFO "EtherCAT %u %u:%u: " fmt, sc->master->index, \
            sc->alias, sc->position, ##args)
Convenience macro for printing configuration-specific information to syslog.

This will print the message in fmt with a prefixed "EtherCAT <INDEX> <ALIAS>:<POSITION>: ", where INDEX is the master index and ALIAS and POSITION identify the configuration.

Parameters:
sc EtherCAT slave configuration
fmt format string (like in printf())
args arguments (optional)

Definition at line 61 of file slave_config.h.

#define EC_CONFIG_ERR ( sc,
fmt,
args...   ) 

Value:

printk(KERN_ERR "EtherCAT ERROR %u %u:%u: " fmt, sc->master->index, \
            sc->alias, sc->position, ##args)
Convenience macro for printing configuration-specific errors to syslog.

This will print the message in fmt with a prefixed "EtherCAT <INDEX> <ALIAS>:<POSITION>: ", where INDEX is the master index and ALIAS and POSITION identify the configuration.

Parameters:
sc EtherCAT slave configuration
fmt format string (like in printf())
args arguments (optional)

Definition at line 75 of file slave_config.h.

#define EC_CONFIG_WARN ( sc,
fmt,
args...   ) 

Value:

printk(KERN_WARNING "EtherCAT WARNING %u %u:%u: " fmt, \
            sc->master->index, sc->alias, sc->position, ##args)
Convenience macro for printing configuration-specific warnings to syslog.

This will print the message in fmt with a prefixed "EtherCAT <INDEX> <ALIAS>:<POSITION>: ", where INDEX is the master index and ALIAS and POSITION identify the configuration.

Parameters:
sc EtherCAT slave configuration
fmt format string (like in printf())
args arguments (optional)

Definition at line 89 of file slave_config.h.

#define EC_CONFIG_DBG ( sc,
level,
fmt,
args...   ) 

Value:

do { \
        if (sc->master->debug_level >= level) { \
            printk(KERN_DEBUG "EtherCAT DEBUG %u %u:%u: " fmt, \
                    sc->master->index, sc->alias, sc->position, ##args); \
        } \
    } while (0)
Convenience macro for printing configuration-specific debug messages to syslog.

This will print the message in fmt with a prefixed "EtherCAT <INDEX> <ALIAS>:<POSITION>: ", where INDEX is the master index and ALIAS and POSITION identify the configuration.

Parameters:
sc EtherCAT slave configuration
level Debug level. Master's debug level must be >= level for output.
fmt format string (like in printf())
args arguments (optional)

Definition at line 106 of file slave_config.h.


Function Documentation

void ec_slave_config_init ( ec_slave_config_t sc,
ec_master_t master,
uint16_t  alias,
uint16_t  position,
uint32_t  vendor_id,
uint32_t  product_code 
)

Slave configuration constructor.

See ecrt_master_slave_config() for the usage of the alias and position parameters.

Parameters:
sc  Slave configuration.
master  EtherCAT master.
alias  Slave alias.
position  Slave position.
vendor_id  Expected vendor ID.
product_code  Expected product code.

Definition at line 55 of file slave_config.c.

void ec_slave_config_clear ( ec_slave_config_t sc  ) 

Slave configuration destructor.

Clears and frees a slave configuration object.

Parameters:
sc  Slave configuration.

Definition at line 102 of file slave_config.c.

int ec_slave_config_attach ( ec_slave_config_t sc  ) 

Attaches the configuration to the addressed slave object.

Return values:
0 Success.
<0 Error code.
Parameters:
sc  Slave configuration.

Definition at line 208 of file slave_config.c.

unsigned int ec_slave_config_sdo_count ( const ec_slave_config_t sc  ) 

Get the number of SDO configurations.

Returns:
Number of SDO configurations.
Parameters:
sc  Slave configuration.

Definition at line 372 of file slave_config.c.

const ec_sdo_request_t* ec_slave_config_get_sdo_by_pos_const ( const ec_slave_config_t sc,
unsigned int  pos 
)

Finds an SDO configuration via its position in the list.

Const version.

Returns:
Search result, or NULL.
Parameters:
sc  Slave configuration.
pos  Position in the list.

Definition at line 394 of file slave_config.c.

unsigned int ec_slave_config_idn_count ( const ec_slave_config_t sc  ) 

Get the number of IDN configurations.

Returns:
Number of SDO configurations.
Parameters:
sc  Slave configuration.

Definition at line 416 of file slave_config.c.

const ec_soe_request_t* ec_slave_config_get_idn_by_pos_const ( const ec_slave_config_t sc,
unsigned int  pos 
)

Finds an IDN configuration via its position in the list.

Const version.

Returns:
Search result, or NULL.
Parameters:
sc  Slave configuration.
pos  Position in the list.

Definition at line 438 of file slave_config.c.

ec_sdo_request_t* ec_slave_config_find_sdo_request ( ec_slave_config_t sc,
unsigned int  pos 
)

Finds a CoE handler via its position in the list.

Returns:
Search result, or NULL.
Parameters:
sc  Slave configuration.
pos  Position in the list.

Definition at line 460 of file slave_config.c.

ec_reg_request_t* ec_slave_config_find_reg_request ( ec_slave_config_t sc,
unsigned int  pos 
)

Finds a register handler via its position in the list.

Returns:
Search result, or NULL.
Parameters:
sc  Slave configuration.
pos  Position in the list.

Definition at line 482 of file slave_config.c.

ec_voe_handler_t* ec_slave_config_find_voe_handler ( ec_slave_config_t sc,
unsigned int  pos 
)

Finds a VoE handler via its position in the list.

Returns:
Search result, or NULL.
Parameters:
sc  Slave configuration.
pos  Position in the list.

Definition at line 504 of file slave_config.c.


Generated on Mon Jun 20 09:31:31 2016 for IgH EtherCAT Master by  doxygen 1.5.6