Added --enable-wildcards to use 0xffffffff as wildcard for vendor ID and
product code.
This commit is contained in:
parent
4fce05d24c
commit
3dbe764174
2
NEWS
2
NEWS
|
|
@ -76,6 +76,8 @@ Changes in 1.5:
|
|||
* ethercat tool is now able to handle multiple masters. The --masters option
|
||||
supports ranges like '0,3,8-10'.
|
||||
* A sync manager is always enabled, if it contains registered process data.
|
||||
* Added a configuration switch --enable-wildcards to use 0xffffffff as a
|
||||
* wildcard for vendor ID and product code.
|
||||
|
||||
Changes in 1.4.0:
|
||||
|
||||
|
|
|
|||
25
configure.ac
25
configure.ac
|
|
@ -658,6 +658,31 @@ AC_ARG_ENABLE([tty],
|
|||
AM_CONDITIONAL(ENABLE_TTY, test "x$tty" = "x1")
|
||||
AC_SUBST(ENABLE_TTY,[$tty])
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Slave identification wildcards
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
AC_ARG_ENABLE([wildcards],
|
||||
AS_HELP_STRING([--enable-wildcards],
|
||||
[Enable vendor ID / product code wildcards (default: no)]),
|
||||
[
|
||||
case "${enableval}" in
|
||||
yes) wildcards=1
|
||||
;;
|
||||
no) wildcards=0
|
||||
;;
|
||||
*) AC_MSG_ERROR([Invalid value for --enable-wildcards])
|
||||
;;
|
||||
esac
|
||||
],
|
||||
[wildcards=0]
|
||||
)
|
||||
|
||||
if test "x${wildcards}" = "x1"; then
|
||||
AC_DEFINE([EC_IDENT_WILDCARDS], [1],
|
||||
[Use vendor id / product code wildcards])
|
||||
fi
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
|
|
|
|||
|
|
@ -214,12 +214,28 @@ int ec_slave_config_attach(
|
|||
return -EEXIST;
|
||||
}
|
||||
|
||||
if (slave->sii.vendor_id != sc->vendor_id
|
||||
|| slave->sii.product_code != sc->product_code) {
|
||||
EC_CONFIG_DBG(sc, 1, "Slave %u has an invalid type (0x%08X/0x%08X)"
|
||||
" for configuration (0x%08X/0x%08X).\n",
|
||||
slave->ring_position, slave->sii.vendor_id,
|
||||
slave->sii.product_code, sc->vendor_id, sc->product_code);
|
||||
if (
|
||||
#ifdef EC_IDENT_WILDCARDS
|
||||
sc->vendor_id != 0xffffffff &&
|
||||
#endif
|
||||
slave->sii.vendor_id != sc->vendor_id
|
||||
) {
|
||||
EC_CONFIG_DBG(sc, 1, "Slave %u has no matching vendor ID (0x%08X)"
|
||||
" for configuration (0x%08X).\n",
|
||||
slave->ring_position, slave->sii.vendor_id, sc->vendor_id);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (
|
||||
#ifdef EC_IDENT_WILDCARDS
|
||||
sc->product_code != 0xffffffff &&
|
||||
#endif
|
||||
slave->sii.product_code != sc->product_code
|
||||
) {
|
||||
EC_CONFIG_DBG(sc, 1, "Slave %u has no matching product code (0x%08X)"
|
||||
" for configuration (0x%08X).\n",
|
||||
slave->ring_position, slave->sii.product_code,
|
||||
sc->product_code);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue