mirror of
https://gitlab.com/etherlab.org/ethercat.git
synced 2026-08-18 17:17:23 +08:00
Reverted default branch to stable-1.5.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
syntax: glob
|
||||
|
||||
**.dirstamp
|
||||
**.ko
|
||||
**.ko.cmd
|
||||
**.lo
|
||||
@@ -7,6 +8,7 @@ syntax: glob
|
||||
**.o
|
||||
**.o.cmd
|
||||
**.swp
|
||||
**/.deps/*.Po
|
||||
**/.tmp_*.gcno
|
||||
**~
|
||||
.tmp_versions
|
||||
@@ -26,7 +28,6 @@ config.h.in
|
||||
config.log
|
||||
config.status
|
||||
configure
|
||||
debuild.log
|
||||
devices/Kbuild
|
||||
devices/Makefile
|
||||
devices/Makefile.in
|
||||
@@ -100,15 +101,20 @@ examples/modules.order
|
||||
examples/rtai/Kbuild
|
||||
examples/rtai/Makefile
|
||||
examples/rtai/Makefile.in
|
||||
examples/rtai_rtdm/.deps
|
||||
examples/rtai_rtdm/.libs
|
||||
examples/rtai_rtdm/ec_rtai_rtdm_example
|
||||
examples/rtai_rtdm_dc/.libs
|
||||
examples/rtai_rtdm_dc/ec_rtai_rtdm_dc_example
|
||||
examples/user/.deps
|
||||
examples/user/.libs
|
||||
examples/user/Makefile
|
||||
examples/user/Makefile.in
|
||||
examples/user/TAGS
|
||||
examples/user/ec_user_example
|
||||
examples/xenomai/.deps
|
||||
examples/xenomai_posix/.deps
|
||||
examples/xenomai/.libs
|
||||
examples/xenomai/ec_xenomai_example
|
||||
examples/xenomai_posix/.libs
|
||||
examples/xenomai_posix/ec_xenomai_posix_example
|
||||
include/Makefile
|
||||
include/Makefile.in
|
||||
include/TAGS
|
||||
@@ -118,6 +124,7 @@ lib/Makefile
|
||||
lib/Makefile.in
|
||||
lib/TAGS
|
||||
lib/libethercat.la
|
||||
lib/libethercat_rtdm.la
|
||||
libtool
|
||||
m4/Makefile
|
||||
m4/Makefile.in
|
||||
|
||||
+1089
-591
File diff suppressed because it is too large
Load Diff
@@ -66,7 +66,7 @@ General Features:
|
||||
and configurable with standard tools.
|
||||
|
||||
* Implementation of the "Vendor-specific over EtherCAT" (VoE) mailbox protocol.
|
||||
- Communication with vendor-specific mailbox protocols via the API.
|
||||
- Communication with vendor-specific mailbox protocols via the API.
|
||||
|
||||
* Implementation of the "File Access over EtherCAT" (FoE) mailbox protocol.
|
||||
- Loading and storing files via the command-line tool.
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
# ---
|
||||
#
|
||||
#
|
||||
# The license mentioned above concerns the source code only. Using the
|
||||
# EtherCAT technology and brand is only permitted in compliance with the
|
||||
# industrial property and similar rights of Beckhoff Automation GmbH.
|
||||
@@ -35,8 +35,4 @@ ifeq (@ENABLE_TTY@,1)
|
||||
obj-m += tty/
|
||||
endif
|
||||
|
||||
ifeq (@ENABLE_RTDM@,1)
|
||||
obj-m += rtdm/
|
||||
endif
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
+16
-18
@@ -20,7 +20,7 @@
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
# ---
|
||||
#
|
||||
#
|
||||
# The license mentioned above concerns the source code only. Using the
|
||||
# EtherCAT technology and brand is only permitted in compliance with the
|
||||
# industrial property and similar rights of Beckhoff Automation GmbH.
|
||||
@@ -30,10 +30,13 @@
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
SUBDIRS = \
|
||||
devices \
|
||||
include \
|
||||
master \
|
||||
script
|
||||
include \
|
||||
script
|
||||
|
||||
if ENABLE_KERNEL
|
||||
SUBDIRS += devices
|
||||
SUBDIRS += master
|
||||
endif
|
||||
|
||||
if BUILD_TOOL
|
||||
SUBDIRS += tool
|
||||
@@ -47,23 +50,18 @@ if ENABLE_TTY
|
||||
SUBDIRS += tty
|
||||
endif
|
||||
|
||||
if ENABLE_RTDM
|
||||
SUBDIRS += rtdm
|
||||
endif
|
||||
|
||||
# userspace example depends on lib/
|
||||
SUBDIRS += examples
|
||||
|
||||
DIST_SUBDIRS = \
|
||||
devices \
|
||||
examples \
|
||||
include \
|
||||
lib \
|
||||
m4 \
|
||||
master \
|
||||
script \
|
||||
tool \
|
||||
rtdm \
|
||||
devices \
|
||||
examples \
|
||||
include \
|
||||
lib \
|
||||
m4 \
|
||||
master \
|
||||
script \
|
||||
tool \
|
||||
tty
|
||||
|
||||
noinst_HEADERS = \
|
||||
|
||||
@@ -2,19 +2,81 @@
|
||||
|
||||
$Id$
|
||||
|
||||
vim: spelllang=en spell
|
||||
vim: spelllang=en spell tw=78
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
Changes since 1.5:
|
||||
Changes since 1.5.2:
|
||||
|
||||
* Added e1000e driver for 2.3.32, 2.6.33, 2.6.34 (thanks to Siwei Zhuang),
|
||||
2.6.35, 2.6.37 (F. Pose), 3.2 (J. Kunz).
|
||||
* Added r8169 driver for 2.6.35 (F. Pose), 2.6.36 (J. Kunz), 3.2 (J. Kunz).
|
||||
* Added e100 driver for 2.6.35, 3.0.
|
||||
* Added e1000 driver for 2.6.35, 3.0.
|
||||
* Fixed FoE timeout calculation bug.
|
||||
|
||||
Changes in 1.5:
|
||||
Changes in 1.5.2:
|
||||
|
||||
* API extensions (find the complete description in include/ecrt.h)
|
||||
* Added redundancy features; enable using --with-devices.
|
||||
* Re-designed and seamlessly integrated RTDM interface.
|
||||
* Added ecrt_sdo_request_index() method to change index and subindex.
|
||||
* Changed the data types of the shift times in ecrt_slave_config_dc()
|
||||
to int32_t to correctly display negative shift times.
|
||||
* Added API for querying CoE emergency requests.
|
||||
* Added interface to read/write register contents; re-worked register
|
||||
requests.
|
||||
* Added interface to select the reference clock and to sync to it.
|
||||
* Exported ecrt_domain_size() to userspace.
|
||||
* Added ecrt_slave_config_reg_so_entry_pos() to register non-unique
|
||||
PDO entries.
|
||||
* Ethernet drivers
|
||||
* Added 8139too driver for 3.0, 3.2, 3.4.
|
||||
* Added r8169 driver for 2.6.36 (J. Kunz), 3.2 (J. Kunz), 3.4 (F. Pose).
|
||||
* Added e1000 driver for 3.0, 3.4.
|
||||
* Added e1000e driver for 3.2 (J. Kunz), 3.4 (F. Pose).
|
||||
* Added e100 driver for 3.0, 3.4.
|
||||
* Fixes regarding 8139too driver for 2.6.36.
|
||||
* Some fixes for all e1000 and e1000e drivers.
|
||||
* General behaviour
|
||||
* Avoided semaphore locking from userspace/rtdm library: Implemented
|
||||
datagram ring instead of queue.
|
||||
* Assign SII to PDI during PREOP transition; Introduced
|
||||
--enable-sii-assign to switch this on.
|
||||
* Avoided re-allocating memory in userspace library implementations of
|
||||
ecrt_sdo_request_state() and in VoE handlers.
|
||||
* Send sync datagrams only if reference clock is found.
|
||||
* Adjusted some DC clock discipline parameters.
|
||||
* Fixed AL status code lookup.
|
||||
* Fixed some ioctl() return values and permissions.
|
||||
* Fixed FoE data OpCode, thanks to R. Roesch.
|
||||
* Fixed and improved cancelling requests when clearing configuration.
|
||||
* Using common wait queue for requests.
|
||||
* Removed some unnecessary request types.
|
||||
* Output slave FSM datagram statistics.
|
||||
* Removed some state-dependent datagram skip messages.
|
||||
* Immediately restart slave FSM on several failed requests.
|
||||
* Reset master state machine when going to orphaned phase.
|
||||
* Command-line tool:
|
||||
* Show complete access flag in config view.
|
||||
* Added EtherLab skin for 'ethercat pdos' command.
|
||||
* Fixed 'String too large' bug.
|
||||
* Infrastructure:
|
||||
* Added AM_PROG_AR necessary for autoconf 1.12.
|
||||
* Avoided use of AM_CFLAGS, which is not used in some situations.
|
||||
* Added vmalloc() include fix for ARM architecture, thanks to Andrea
|
||||
Scian.
|
||||
* Install ethercat service to multi-user target by default.
|
||||
* Fixed COPYING.LESSER to be LGPL 2.1 (like in file headers).
|
||||
* More detailed output of configure script.
|
||||
* Added rtai_rtdm_dc example, thanks to Graeme Foot.
|
||||
|
||||
Changes in 1.5.1:
|
||||
|
||||
* Fixed reset of allow_scanning flag if ecrt_master_activate() was not called.
|
||||
* Fixed missing distribution for r8169 for 2.6.32 and e1000 driver for 2.6.31.
|
||||
* Added e100 for 2.6.35.
|
||||
* Added r8169 driver for 2.6.35 (F. Pose).
|
||||
* Added e1000e driver for 2.6.35 (F. Pose).
|
||||
* Added fix for ESC port order (DC delay calculation).
|
||||
* Added e1000 driver for 2.6.35.
|
||||
|
||||
Changes in 1.5.0:
|
||||
|
||||
* Added a userspace library for accessing the application interface. This
|
||||
library is licensed under LGPLv2.
|
||||
@@ -29,16 +91,23 @@ Changes in 1.5:
|
||||
* Separated datagram initialization from filling the payload with zeros.
|
||||
Introduced new method ec_datagram_zero() for that.
|
||||
* Added phy_read and phy_write commands to ethercat tool.
|
||||
* Added e100 driver for Intel PRO/100 NICs for 2.6.27, 2.6.28 (thanks to
|
||||
Kim. H. Madsen), 2.6.29 (thanks to Andre Puschmann), 2.6.31, 2.6.32, 2.6.33
|
||||
and 2.6.37.
|
||||
* Added e100 driver for Intel PRO/100 NICs.
|
||||
- Added e100 driver for 2.6.27.
|
||||
- Added e100 driver for 2.6.28, thanks to Kim. H. Madsen.
|
||||
- Added e100 driver for 2.6.29, thanks to Andre Puschmann.
|
||||
- Added e100 driver for 2.6.31.
|
||||
- Added e100 driver for 2.6.32.
|
||||
- Added e100 driver for 2.6.33, thanks to J. Kunz.
|
||||
- Added e100 driver for 2.6.37.
|
||||
* Added 8139too driver for kernels 2.6.25 (F. Pose), 2.6.26 (M. Luescher),
|
||||
2.6.27, 2.6.28, 2.6.29 (M. Goetze), 2.6.31 (F. Pose), 2.6.34 (Malcolm
|
||||
Lewis), 2.6.36 (F. Pose) and 2.6.37 (F. Pose).
|
||||
* Added e1000 driver for 2.6.26 (M. Luescher), 2.6.27, 2.6.28, 2.6.29, 2.6.31,
|
||||
2.6.32, 2.6.33 and 2.6.37.
|
||||
2.6.27, 2.6.28, 2.6.29 (M. Goetze), 2.6.31 (F. Pose), 2.6.32 (F. Pose),
|
||||
2.6.33 (J. Kunz), 2.6.34 (Malcolm Lewis), 2.6.35 (B. Benner),
|
||||
2.6.36 (F. Pose) and 2.6.37 (F. Pose).
|
||||
* Added e1000 driver for 2.6.26 (M. Luescher), 2.6.27, 2.6.28, 2.6.29, 2.6.32,
|
||||
2.6.33 (J. Kunz), 2.6.35, 2.6.37.
|
||||
* Added r8169 driver for 2.6.24, 2.6.27, 2.6.28, 2.6.29, 2.6.31, 2.6.32
|
||||
(latter thanks to Robbie K), 2.6.33 and 2.6.37.
|
||||
(Robbie K), 2.6.33 (J. Kunz), 2.6.35, 2.6.37.
|
||||
* Added e1000e driver for 2.6.32, 2.6.33, 2.6.34 (thanks to Siwei Zhuang).
|
||||
* Debug interfaces are created with the Ethernet addresses of the attached
|
||||
physical device.
|
||||
* Improved error case return codes of many functions.
|
||||
@@ -79,7 +148,7 @@ Changes in 1.5:
|
||||
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.
|
||||
wildcard for vendor ID and product code.
|
||||
* Added support for systemd.
|
||||
|
||||
Changes in 1.4.0:
|
||||
|
||||
@@ -10,17 +10,20 @@ vim700: spelllang=en spell
|
||||
|
||||
Future issues:
|
||||
|
||||
* Port port order patch from stable-1.5.
|
||||
• Remove fprintf() calls from user-space library (define return codes).
|
||||
• Move SII request to slave FSM.
|
||||
• Move SDO request to slave FSM.
|
||||
• Simplify slave FSM by introducing a common request state to handle external
|
||||
requests.
|
||||
* Fix link detection in generic driver.
|
||||
* Remove allow_scanning flag.
|
||||
* Check for Enable SDO Complete Access flag.
|
||||
* Do not output 'SDO does not exist' when querying data type.
|
||||
* Read AL status code on spontaneous state change.
|
||||
* recompile tool/CommandVersion.cpp if revision changes.
|
||||
* Log SoE IDNs with real name ([SP]-x-yyyy).
|
||||
* Only output watchdog config if not default.
|
||||
* Implement CompleteAccess for SDO uploads.
|
||||
* Output warning when send_ext() is called in illegal context.
|
||||
* Change SDO index at runtime for SDO request.
|
||||
* Implement ecrt_slave_config_request_state().
|
||||
* Remove default buffer size in SDO upload.
|
||||
* Override sync manager size?
|
||||
@@ -30,15 +33,11 @@ Future issues:
|
||||
- Skip setting system time offset when application detached.
|
||||
- How to use the SYNC1 shift time?
|
||||
- Do not output graph, if topology calculation failed.
|
||||
- Set the "Cyclic Generation Start Time" based on the slave's
|
||||
"System Time" register instead of using the application time.
|
||||
- Check if register 0x0980 is working, to avoid clearing it when
|
||||
configuring.
|
||||
* Mailbox protocol handlers.
|
||||
* Mailbox state machine using toggle bits.
|
||||
* External memory for SDO transfers.
|
||||
* C++ implementation of the library.
|
||||
* Bus simulator interface.
|
||||
* Move master threads, slave handlers and state machines into a user
|
||||
space daemon.
|
||||
* Allow master requesting when in ORPHANED phase
|
||||
@@ -46,7 +45,6 @@ Future issues:
|
||||
* Separate CoE debugging.
|
||||
* Evaluate EEPROM contents after writing.
|
||||
* Optimize alignment of process data.
|
||||
* Redundancy with 2 network adapters.
|
||||
* Interface/buffers for asynchronous domain IO.
|
||||
* Make scanning and configuration run parallel (each).
|
||||
* ethercat tool:
|
||||
@@ -55,18 +53,12 @@ Future issues:
|
||||
- Fix number of digits in negative integer hex output.
|
||||
- Data type abbreviations.
|
||||
- Add -x switch for hex display.
|
||||
- Implement CompleteAccess
|
||||
- Implement --output-file argument in foe_read.
|
||||
- Implement indent in 'ethercat ma'
|
||||
- Implement 0xXXXX:YY format for specifying SDOs.
|
||||
- Implement reading from stream for soe_write.
|
||||
- Output error after usage.
|
||||
* Simplify master fsm by introducing a common request state to handle external
|
||||
requests (replace write_sii, sdo_request, etc).
|
||||
* Remove stdio uses in userspace library?
|
||||
* Fix casting away constness during expected WC calculation.
|
||||
* Fix bus scan hang when calling ecrt_master_deactivate().
|
||||
* Fix link detection in generic driver.
|
||||
|
||||
Smaller issues:
|
||||
|
||||
|
||||
@@ -2,26 +2,26 @@
|
||||
#----------------------------------------------------------------------------
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
#
|
||||
# Copyright (C) 2006-2009 Florian Pose, Ingenieurgemeinschaft IgH
|
||||
#
|
||||
#
|
||||
# This file is part of the IgH EtherCAT Master.
|
||||
#
|
||||
#
|
||||
# The IgH EtherCAT Master is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License version 2, as
|
||||
# published by the Free Software Foundation.
|
||||
#
|
||||
#
|
||||
# The IgH EtherCAT Master is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
# Public License for more details.
|
||||
#
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with the IgH EtherCAT Master; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
#
|
||||
# ---
|
||||
#
|
||||
#
|
||||
# The license mentioned above concerns the source code only. Using the
|
||||
# EtherCAT technology and brand is only permitted in compliance with the
|
||||
# industrial property and similar rights of Beckhoff Automation GmbH.
|
||||
|
||||
+289
-40
File diff suppressed because it is too large
Load Diff
@@ -1145,9 +1145,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -1149,9 +1149,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -644,7 +644,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1068,7 +1068,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1150,9 +1150,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -644,7 +644,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1067,7 +1067,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1149,9 +1149,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -644,7 +644,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1067,7 +1067,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1149,9 +1149,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -1146,9 +1146,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -653,7 +653,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1060,7 +1060,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1139,9 +1139,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -1139,9 +1139,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -653,7 +653,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1060,7 +1060,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1139,9 +1139,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -653,7 +653,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1066,7 +1066,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1145,9 +1145,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -654,7 +654,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1066,7 +1066,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1145,9 +1145,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -1811,24 +1814,24 @@ static int rtl8139_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
} else {
|
||||
spin_lock_irqsave(&tp->lock, flags);
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
|
||||
|
||||
if ((tp->cur_tx - NUM_TX_DESC) == tp->dirty_tx)
|
||||
netif_stop_queue (dev);
|
||||
spin_unlock_irqrestore(&tp->lock, flags);
|
||||
|
||||
|
||||
if (netif_msg_tx_queued(tp))
|
||||
printk (KERN_DEBUG "%s: Queued Tx packet size %u to slot %d.\n",
|
||||
dev->name, len, entry);
|
||||
|
||||
@@ -654,7 +654,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1066,7 +1066,7 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
tp->mii.reg_num_mask = 0x1f;
|
||||
|
||||
/* dev is fully set up and ready to use now */
|
||||
|
||||
|
||||
// offer device to EtherCAT master module
|
||||
tp->ecdev = ecdev_offer(dev, ec_poll, THIS_MODULE);
|
||||
|
||||
@@ -1145,9 +1145,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -1811,24 +1814,24 @@ static int rtl8139_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
} else {
|
||||
spin_lock_irqsave(&tp->lock, flags);
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
|
||||
|
||||
if ((tp->cur_tx - NUM_TX_DESC) == tp->dirty_tx)
|
||||
netif_stop_queue (dev);
|
||||
spin_unlock_irqrestore(&tp->lock, flags);
|
||||
|
||||
|
||||
if (netif_msg_tx_queued(tp))
|
||||
printk (KERN_DEBUG "%s: Queued Tx packet size %u to slot %d.\n",
|
||||
dev->name, len, entry);
|
||||
|
||||
@@ -647,7 +647,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1134,9 +1134,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -1799,9 +1802,9 @@ static int rtl8139_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
} else {
|
||||
spin_lock_irqsave(&tp->lock, flags);
|
||||
|
||||
@@ -647,7 +647,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1134,9 +1134,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -1134,9 +1134,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -648,7 +648,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1135,9 +1135,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -1800,9 +1803,9 @@ static int rtl8139_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
} else {
|
||||
spin_lock_irqsave(&tp->lock, flags);
|
||||
|
||||
@@ -648,7 +648,7 @@ struct rtl8139_private {
|
||||
struct mii_if_info mii;
|
||||
unsigned int regs_len;
|
||||
unsigned long fifo_copy_timeout;
|
||||
|
||||
|
||||
ec_device_t *ecdev;
|
||||
};
|
||||
|
||||
@@ -1136,9 +1136,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -1801,8 +1804,7 @@ static int rtl8139_start_xmit (struct sk_buff *skb, struct net_device *dev)
|
||||
wmb();
|
||||
RTL_W32_F (TxStatus0 + (entry * sizeof (u32)),
|
||||
tp->tx_flag | max(len, (unsigned int)ETH_ZLEN));
|
||||
|
||||
|
||||
|
||||
tp->cur_tx++;
|
||||
} else {
|
||||
spin_lock_irqsave(&tp->lock, flags);
|
||||
|
||||
@@ -1138,9 +1138,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
@@ -1140,9 +1140,12 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
||||
if (rtl_chip_info[tp->chipset].flags & HasHltClk)
|
||||
RTL_W8 (HltClk, 'H'); /* 'R' would leave the clock running. */
|
||||
|
||||
if (tp->ecdev && ecdev_open(tp->ecdev)) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
if (tp->ecdev) {
|
||||
i = ecdev_open(tp->ecdev);
|
||||
if (i) {
|
||||
ecdev_withdraw(tp->ecdev);
|
||||
goto err_out;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+5
-1
@@ -20,7 +20,7 @@
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
# ---
|
||||
#
|
||||
#
|
||||
# The license mentioned above concerns the source code only. Using the
|
||||
# EtherCAT technology and brand is only permitted in compliance with the
|
||||
# industrial property and similar rights of Beckhoff Automation GmbH.
|
||||
@@ -51,6 +51,10 @@ ifeq (@ENABLE_8139TOO@,1)
|
||||
CFLAGS_$(EC_8139TOO_OBJ) = -DREV=$(REV)
|
||||
endif
|
||||
|
||||
ifeq (@ENABLE_CCAT@,1)
|
||||
obj-m += ccat/
|
||||
endif
|
||||
|
||||
ifeq (@ENABLE_E100@,1)
|
||||
EC_E100_OBJ := e100-@KERNEL_E100@-ethercat.o
|
||||
obj-m += ec_e100.o
|
||||
|
||||
+49
-1
@@ -28,10 +28,12 @@
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
SUBDIRS = \
|
||||
ccat \
|
||||
e1000 \
|
||||
e1000e
|
||||
|
||||
DIST_SUBDIRS = \
|
||||
ccat \
|
||||
e1000 \
|
||||
e1000e
|
||||
|
||||
@@ -75,6 +77,24 @@ noinst_HEADERS = \
|
||||
8139too-2.6.36-orig.c \
|
||||
8139too-2.6.37-ethercat.c \
|
||||
8139too-2.6.37-orig.c \
|
||||
8139too-3.0-ethercat.c \
|
||||
8139too-3.0-orig.c \
|
||||
8139too-3.10-ethercat.c \
|
||||
8139too-3.10-orig.c \
|
||||
8139too-3.12-ethercat.c \
|
||||
8139too-3.12-orig.c \
|
||||
8139too-3.14-ethercat.c \
|
||||
8139too-3.14-orig.c \
|
||||
8139too-3.16-ethercat.c \
|
||||
8139too-3.16-orig.c \
|
||||
8139too-3.2-ethercat.c \
|
||||
8139too-3.2-orig.c \
|
||||
8139too-3.4-ethercat.c \
|
||||
8139too-3.4-orig.c \
|
||||
8139too-3.6-ethercat.c \
|
||||
8139too-3.6-orig.c \
|
||||
8139too-3.8-ethercat.c \
|
||||
8139too-3.8-orig.c \
|
||||
e100-2.6.20-ethercat.c \
|
||||
e100-2.6.20-orig.c \
|
||||
e100-2.6.24-ethercat.c \
|
||||
@@ -99,6 +119,20 @@ noinst_HEADERS = \
|
||||
e100-2.6.37-orig.c \
|
||||
e100-3.0-ethercat.c \
|
||||
e100-3.0-orig.c \
|
||||
e100-3.10-ethercat.c \
|
||||
e100-3.10-orig.c \
|
||||
e100-3.12-ethercat.c \
|
||||
e100-3.12-orig.c \
|
||||
e100-3.14-ethercat.c \
|
||||
e100-3.14-orig.c \
|
||||
e100-3.16-ethercat.c \
|
||||
e100-3.16-orig.c \
|
||||
e100-3.4-ethercat.c \
|
||||
e100-3.4-orig.c \
|
||||
e100-3.6-ethercat.c \
|
||||
e100-3.6-orig.c \
|
||||
e100-3.8-ethercat.c \
|
||||
e100-3.8-orig.c \
|
||||
ecdev.h \
|
||||
generic.c \
|
||||
r8169-2.6.24-ethercat.c \
|
||||
@@ -121,8 +155,22 @@ noinst_HEADERS = \
|
||||
r8169-2.6.36-orig.c \
|
||||
r8169-2.6.37-ethercat.c \
|
||||
r8169-2.6.37-orig.c \
|
||||
r8169-3.10-ethercat.c \
|
||||
r8169-3.10-orig.c \
|
||||
r8169-3.12-ethercat.c \
|
||||
r8169-3.12-orig.c \
|
||||
r8169-3.14-ethercat.c \
|
||||
r8169-3.14-orig.c \
|
||||
r8169-3.16-ethercat.c \
|
||||
r8169-3.16-orig.c \
|
||||
r8169-3.2-ethercat.c \
|
||||
r8169-3.2-orig.c
|
||||
r8169-3.2-orig.c \
|
||||
r8169-3.4-ethercat.c \
|
||||
r8169-3.4-orig.c \
|
||||
r8169-3.6-ethercat.c \
|
||||
r8169-3.6-orig.c \
|
||||
r8169-3.8-ethercat.c \
|
||||
r8169-3.8-orig.c
|
||||
|
||||
EXTRA_DIST = \
|
||||
Kbuild.in
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# Copyright (C) 2006-2008 Florian Pose, Ingenieurgemeinschaft IgH
|
||||
#
|
||||
# This file is part of the IgH EtherCAT Master.
|
||||
#
|
||||
# The IgH EtherCAT Master is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License version 2, as
|
||||
# published by the Free Software Foundation.
|
||||
#
|
||||
# The IgH EtherCAT Master is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
||||
# Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with the IgH EtherCAT Master; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
# ---
|
||||
#
|
||||
# The license mentioned above concerns the source code only. Using the
|
||||
# EtherCAT technology and brand is only permitted in compliance with the
|
||||
# industrial property and similar rights of Beckhoff Automation GmbH.
|
||||
#
|
||||
# ---
|
||||
#
|
||||
# vim: syntax=make
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
TOPDIR := $(src)/../..
|
||||
|
||||
ifeq (@ENABLE_CCAT@,1)
|
||||
EC_CCAT_OBJ := \
|
||||
module.o \
|
||||
netdev.o \
|
||||
update.o
|
||||
obj-m += ec_ccat.o
|
||||
ec_ccat-objs := $(EC_CCAT_OBJ)
|
||||
CFLAGS_ccat_main-ethercat.o = -DREV=$(REV)
|
||||
endif
|
||||
|
||||
KBUILD_EXTRA_SYMBOLS := \
|
||||
@abs_top_builddir@/$(LINUX_SYMVERS) \
|
||||
@abs_top_builddir@/master/$(LINUX_SYMVERS)
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -20,20 +20,18 @@
|
||||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
#
|
||||
# ---
|
||||
#
|
||||
#
|
||||
# The license mentioned above concerns the source code only. Using the
|
||||
# EtherCAT technology and brand is only permitted in compliance with the
|
||||
# industrial property and similar rights of Beckhoff Automation GmbH.
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
# using HEADERS to enable tags target
|
||||
noinst_HEADERS = \
|
||||
module.c
|
||||
|
||||
EXTRA_DIST = \
|
||||
Kbuild.in
|
||||
Kbuild.in \
|
||||
module.h \
|
||||
netdev.h \
|
||||
update.h
|
||||
|
||||
BUILT_SOURCES = \
|
||||
Kbuild
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user