Commit Graph

814 Commits

Author SHA1 Message Date
Florian Pose 24ac60fdcc Fetch Sdo dictionaries and process SII requests in operation mode. 2008-04-25 14:58:33 +00:00
Florian Pose 00d78d2566 Replaced self_configured flag with force_config flag. 2008-04-25 14:32:56 +00:00
Florian Pose ff5dd7fe1c Improved master state machine. 2008-04-25 14:07:38 +00:00
Florian Pose 0b9015848b Removed slave online flag. 2008-04-25 12:45:44 +00:00
Florian Pose ec02b717fa Renamed state sdodict to sdo_dictionary. 2008-04-25 12:23:52 +00:00
Florian Pose f28ee06308 Removed some debugging. 2008-04-25 12:18:46 +00:00
Florian Pose e8f2b80a61 Improved a few debugging outputs. 2008-04-25 12:16:56 +00:00
Florian Pose c294906bbf Moved setting of the allow flags. 2008-04-25 12:13:26 +00:00
Florian Pose 5742847dea Removed ec_master_prepare(). 2008-04-25 12:08:11 +00:00
Florian Pose 80c1bf823d Removed bus validation; slave configuration during realtime operation;
improved scan/config busy flags.
2008-04-25 12:04:23 +00:00
Florian Pose 5a852bc210 Check for emergency requests during CoE transfers. 2008-04-18 11:26:13 +00:00
Florian Pose e9ff403255 Exported ecrt_slave_config_sdo(); added documentation. 2008-04-16 08:33:04 +00:00
Florian Pose 791aa6d3d1 Added vim modelines and properties. 2008-04-08 11:52:51 +00:00
Florian Pose 6053cdedff Avoided duplicate datagram, if Pdo mapping/assignment does not have to
be configured.
2008-04-07 15:58:27 +00:00
Florian Pose 4e876edf62 Debug messaged on configuring assignment and mapping. 2008-04-07 15:47:22 +00:00
Florian Pose 42f0529b05 Moved configuration of Pdo mapping before Pdo assignment. 2008-04-07 15:12:43 +00:00
Florian Pose eeb80bb7b7 Moved Pdo sync manager configuration before Pdo assignment in slave
configuration state machine.
2008-04-07 13:57:41 +00:00
Florian Pose 5cbdbc6d4b Removed unused domain state. 2008-04-07 10:19:59 +00:00
Florian Pose 588cd7dab6 Fixed properties. 2008-04-03 15:50:46 +00:00
Florian Pose 1d70bd0145 Equalized defines against duplicated header inclusion. 2008-04-03 15:49:24 +00:00
Florian Pose 0a6b984c26 Added missing jiffies header. 2008-04-03 15:30:27 +00:00
Florian Pose fc60cae9c7 Implemented Sdo timeout. 2008-04-03 14:08:08 +00:00
Florian Pose 593a5fda9c Changed terms "Pdo mapping" -> "Pdo assignment" and "Pdo configuration"
-> "Pdo mapping"; created ecrt_slave_config_pdo_assign_clear() and
ecrt_slave_config_pdo_mapping_clear().
2008-04-03 13:34:13 +00:00
Florian Pose 208fc51910 Introduced EC_MAP_END. 2008-03-31 09:42:37 +00:00
Florian Pose 059ef14ebe Fixed minor bug. 2008-03-19 10:51:18 +00:00
Florian Pose c543a04c51 Fixed general flags on big-endian archs. 2008-03-18 11:15:22 +00:00
Florian Pose 6286768f75 Fixed access to data pointers in Pdo config and Pdo mapping FSM's. 2008-03-18 10:49:30 +00:00
Florian Pose 486c66f43a Added CoE debugging. 2008-03-18 10:48:55 +00:00
Florian Pose f4199b7f60 Fixed bug in copying sync managers. Now making a deep copy. 2008-03-17 14:16:16 +00:00
Florian Pose f69b21af02 Renamed EEPROM to SII. 2008-03-17 09:38:48 +00:00
Florian Pose 77c29c0418 Added some const's. 2008-03-17 09:06:21 +00:00
Florian Pose dabaab4410 Allow multiple sync manager categories. 2008-03-17 09:05:13 +00:00
Florian Pose 257cc237b9 Added ecrt_sdo_request_data_size(). 2008-03-13 12:52:26 +00:00
Florian Pose 6af7a39cf3 Minor change. 2008-03-04 14:03:45 +00:00
Florian Pose 9b458ac5a6 Added doxygen markers. 2008-03-04 12:52:54 +00:00
Florian Pose 80fc8bff5d Minor changes. 2008-03-04 12:38:51 +00:00
Florian Pose f28f42ceb1 Introduced ec_sdo_request_state_t, making ec_request_t private again;
therefore added EC_REQUEST_INIT and renamed EC_REQUEST_IN_PROGRESS to
EC_REQUEST_BUSY and EC_REQUEST_COMPLETE to EC_REQUEST_SUCCESS.
2008-03-04 11:37:51 +00:00
Florian Pose a5e68a7f60 Minor change: Moved state assign to beginning. 2008-03-04 11:20:48 +00:00
Florian Pose 57094eaf48 Replaced ec_fsm_coe_\(upload\|download\)() with ec_fsm_coe_transfer();
reading and writing access possible.
2008-03-04 10:18:02 +00:00
Florian Pose e90dab2a4e Basic reading realtime Sdo access working. 2008-03-04 09:57:36 +00:00
Florian Pose a0068ca2d4 Improved error messages on EEPROM writing. 2008-03-04 08:52:39 +00:00
Florian Pose 5ea60febf9 Removed ec_sdodata_t; CoE state machines work on ec_sdo_request_t. 2008-03-03 16:22:39 +00:00
Florian Pose 17069bcb70 Fixed bug if scanning is not allowed when link goes up. 2008-03-03 16:17:23 +00:00
Florian Pose 42bed3090f Separated ec_sdo_request_init() and ec_sdo_request_read(). 2008-03-03 13:26:32 +00:00
Florian Pose 0b5b3b9e9b Removed slave pointer from ec_sdo_request_t class. 2008-02-29 16:20:12 +00:00
Florian Pose f621cf2619 Saparated ec_sdo_t, ec_sdo_entry_t and ec_sdo_request_t. 2008-02-29 12:19:48 +00:00
Florian Pose f8dfda2b19 Fixed 2 bugs in new Pdo mapping function. 2008-02-28 15:28:10 +00:00
Florian Pose 7338f88b5f Added some debugging and fixed a bug, when Pdo was not found. 2008-02-28 14:46:24 +00:00
Florian Pose ea501996b2 Added ecrt_slave_config_pdo() and ecrt_slave_config_pdo_entry(). 2008-02-28 14:29:50 +00:00
Florian Pose 338dbf2a27 Added documentation. 2008-02-28 14:18:37 +00:00
Florian Pose 267a4ddaa2 Added documentation. 2008-02-28 14:18:18 +00:00
Florian Pose 6b62545584 Renamed ec_pdo_mapping_find_pdo() to ec_pdo_mapping_find_pdo_const(). 2008-02-28 13:41:02 +00:00
Florian Pose e3be6cf8be Renamed ec_pdo_mapping_add_pdo() to ec_pdo_mapping_add_pdo_copy(). 2008-02-28 11:23:34 +00:00
Florian Pose c26c91c4a0 Display notLRW flag. 2008-02-28 11:06:14 +00:00
Florian Pose 95e6dc8d2b Evaluate CoE details from general category; moved current consumption
into general category info.
2008-02-28 10:58:43 +00:00
Florian Pose a4095b4201 Separated SII data from slave. 2008-02-27 15:24:00 +00:00
Florian Pose 397b5bf0cc Reading of Pdo mapping via CoE during scan. 2008-02-26 16:58:20 +00:00
Florian Pose 5e22bcec73 Separated slave state machines. 2008-02-26 13:20:32 +00:00
Florian Pose 3309784438 Fixed bug in Pdo mapping. 2008-02-22 18:41:24 +00:00
Florian Pose 508bb9d91e Minor changes. 2008-02-22 18:40:41 +00:00
Florian Pose 7341a1973c CoE state machines raising error, if the slave does not support CoE. 2008-02-22 18:25:44 +00:00
Florian Pose d4ccd3a2b6 Minor change. 2008-02-22 18:22:05 +00:00
Florian Pose 52e1a21be2 Check for FMMU limits. 2008-02-22 18:11:18 +00:00
Florian Pose 4d6ae02275 Fixed missing slave_error flag. 2008-02-22 18:07:47 +00:00
Florian Pose 06705a51cb Fixed warning about missing sync managers during Pdo mapping. 2008-02-22 17:49:28 +00:00
Florian Pose b4322990e2 Calculate expected working counter for domains. 2008-02-22 17:23:05 +00:00
Florian Pose 49baa165af Support for slaves that don't support the LRW datagram type. 2008-02-22 16:04:23 +00:00
Florian Pose 1bb9697a15 Introduced ec_datagram_type_string(). 2008-02-22 16:03:08 +00:00
Florian Pose 39f4da4d4f Implemented missing datagram types. 2008-02-22 15:35:39 +00:00
Florian Pose 350c159a9d Renamed [PS]DO to [PS]do. 2008-02-22 12:29:30 +00:00
Florian Pose 0921c356a1 Fixed typo SAVEOP -> SAFEOP. 2008-02-22 11:33:49 +00:00
Florian Pose 7db358b508 External domain memory. 2008-02-21 15:49:02 +00:00
Florian Pose 69f702dc92 Fixed Pdo mapping bug. 2008-02-21 12:43:55 +00:00
Florian Pose 873e517741 Moved ecrt_domain_reg_pdo_entry() to
ecrt_slave_config_reg_pdo_entry().
2008-02-21 09:50:54 +00:00
Florian Pose 8e6efae673 Renamed master module parameters, re-formatted code documentation. 2008-02-21 09:24:56 +00:00
Florian Pose 2d0c48dbce Renamed ec_fsm_mapping_t to ec_fsm_pdo_mapping_t. 2008-02-19 16:18:01 +00:00
Florian Pose 5f62803760 Cleaned up Pdo mapping and configuration state machines. 2008-02-19 16:09:58 +00:00
Florian Pose 6be227879d Minor changes. 2008-02-19 16:03:04 +00:00
Florian Pose ea7aa51ed1 Pdo configuration. 2008-02-19 14:06:50 +00:00
Florian Pose 940ab3299c Output AL status code zero. 2008-02-19 14:05:59 +00:00
Florian Pose bd1a70ada6 Minor change. 2008-02-19 14:05:26 +00:00
Florian Pose 375b7a033a Minor changes. 2008-02-19 10:58:08 +00:00
Florian Pose 096a5cd2ce Renamed a few configuration states. 2008-02-19 10:33:26 +00:00
Florian Pose 3a50cd0ff1 Allow bus configuration when link is down. 2008-02-19 09:58:48 +00:00
Florian Pose b955b2d529 Fixed Pdo configuration information providing. 2008-02-19 09:21:13 +00:00
Florian Pose 6189092aed Implemented most realtime interface changes for version 1.4, improved
ec_pdo_t and ec_pdo_entry_t classes, added fmmu_config_t, adjusted
minimal example, etc...
2008-02-19 08:22:20 +00:00
Florian Pose a1ce00effe Fixed typo. 2008-02-14 09:18:55 +00:00
Florian Pose d1d596e64a Updated doxygen docs. 2008-02-01 22:01:59 +00:00
Florian Pose 7c267ee50b Esthetic surgery for slave. 2008-02-01 21:22:22 +00:00
Florian Pose 52e374dd95 Esthetic surgery for domain. 2008-02-01 20:58:57 +00:00
Florian Pose dee00c2095 Small improvement of PDO offset calculation. 2008-02-01 20:44:43 +00:00
Florian Pose ad736d21ca Increased maximum number of EEPROM words from 512 to 1024. 2008-01-08 16:20:02 +00:00
Florian Pose 47f79011a4 Detection of page exceeding slave information file. 2008-01-08 16:19:28 +00:00
Florian Pose aa1baf50a9 Cut off category data on exceeding eeprom size limit. 2008-01-08 15:18:30 +00:00
Florian Pose fac8cc4b73 Improved EoE debugging. 2007-12-21 16:12:30 +00:00
Florian Pose bcf3dfb1ca Fixed normal/expedited bug at CoE upload; more robust behaviour, when
fragments_left is set.
2007-12-18 16:56:52 +00:00
Florian Pose b8b3d9bdf7 Added missing svn properties. 2007-11-22 09:01:41 +00:00
Florian Pose 047bcb6489 Allow gaps in PDO mapping. 2007-11-22 08:40:03 +00:00
Florian Pose 0ef1a10a1f Ouput identity object indented in slave info file. 2007-10-05 08:13:16 +00:00
Florian Pose fbb18a0fab Minor output changes in slave info file. 2007-10-05 07:42:47 +00:00
Florian Pose c650941baf Re-ordered slave info file. 2007-10-04 08:38:05 +00:00
Florian Pose 10655b7db3 Store PDO mapping source in sync manager. 2007-10-04 08:09:41 +00:00
Florian Pose dfc4ea045f merge -r969:970 branches/stable-1.3 -> trunk (fsm_coe_map.[ch] to dist) 2007-10-03 09:19:01 +00:00
Florian Pose 608e64a788 Fixed source MAC address setting bug. 2007-10-02 08:35:01 +00:00
Florian Pose c5b3ade0c0 Updated Doxygen documentation. 2007-09-24 12:12:11 +00:00
Florian Pose 723a67e6f2 SII writing workaround for some slaves, that don't respond correctly;
improved SII code.
2007-09-24 08:56:50 +00:00
Florian Pose 59d245a367 Changed unit of ec_eeprom_write_request_t from word to byte. 2007-09-24 07:54:51 +00:00
Florian Pose 8f31083441 Renamed sii state functions. 2007-09-24 07:39:02 +00:00
Florian Pose aae22904d8 Minor changes. 2007-09-24 07:11:37 +00:00
Florian Pose 028bd21678 Minor: renamed [RT]XPDO to [RT]xPdo. 2007-09-20 13:05:38 +00:00
Florian Pose c5f6c6073f Only exchange sync manager PDOs, if they could completely be read in. 2007-09-20 12:58:35 +00:00
Florian Pose 91f7afa111 Added ec_sync_get_pdo_type(). 2007-09-20 12:57:28 +00:00
Florian Pose 70a945fd7c Minor comment change. 2007-09-20 12:33:58 +00:00
Florian Pose 8986c8b183 Minor: Again moved setting of alternate PDO mapping flag. 2007-09-20 10:15:21 +00:00
Florian Pose 289c68d727 Minor: Moved setting of alternate PDO mapping flag. 2007-09-20 10:05:37 +00:00
Florian Pose 937b457d3e Fixed detection of missing EEPROM category limiter. 2007-09-20 09:44:27 +00:00
Florian Pose 8ee649a8c6 Minor debugging output changes. 2007-09-20 09:43:59 +00:00
Florian Pose 27ebca0d9c Improved checking of EEPROM data while reading. 2007-09-20 09:12:27 +00:00
Florian Pose d7c42088c2 Read PDO mapping from SDO dictionary (working, not finished yet). 2007-09-19 17:44:28 +00:00
Florian Pose 2a9c3f1fd2 Added ec_slave_get_sdo() and ec_sdo_get_entry(). 2007-09-19 17:32:39 +00:00
Florian Pose 0fe3931b47 Removed 'sdo' field from ec_sdo_request_t; Exported
ec_sdo_request_\(init_read|clear\)().
2007-09-19 17:25:48 +00:00
Florian Pose eb6e709e57 Improved handling for spontaneous AL state changes. 2007-09-19 17:17:45 +00:00
Florian Pose 579c49521f Master takes mailbox sync manager configurations from EEPROM words
0x0018-0x001b, if no sync manager configurations are provided.
2007-09-19 11:52:58 +00:00
Florian Pose 0ef6a7360d Calculate checksum when writing EEPROM or alias address. 2007-09-19 09:37:01 +00:00
Florian Pose 3cdf084fdc Minor fix: Set eeprom_size to 0 on unsuccessful memory allocation. 2007-09-19 09:07:36 +00:00
Florian Pose 7be3b11fce Removed config.kbuild and replaced Kbuild files by Kbuild.in files. 2007-09-19 08:22:20 +00:00
Florian Pose 99fc363c4f Debug statement, if slave does not support mailboxing. 2007-09-18 14:19:21 +00:00
Florian Pose fde0c0977f Avoid warnings on some compilers. 2007-09-18 14:18:30 +00:00
Florian Pose 56949fa400 Allow EEPROM writing when slave has error flag set. 2007-09-18 14:17:49 +00:00
Florian Pose 2f2738ccd1 Send frame to debug-if and debug-ring only when transmitted
successfully.
2007-09-17 10:24:13 +00:00
Florian Pose 1c829731ed Improved EoE handling: Avoided skipping of datagrams and release lock
while processing.
2007-09-12 14:48:53 +00:00
Florian Pose 7369f5a5a2 Removed measure_bus_time(). 2007-09-12 14:07:28 +00:00
Florian Pose 7597e2795e Store skipped information in datagrams; name datagrams for statistics
output.
2007-09-12 14:06:35 +00:00
Florian Pose af076a36bc Clear station addresses with broadcast before setting them. 2007-09-12 13:20:29 +00:00
Florian Pose 08c67e8f2e Minor fix. 2007-09-12 13:12:38 +00:00
Florian Pose c4b87f7317 Added --enable-eoe conditional. 2007-09-12 13:10:15 +00:00
Florian Pose 0a99c21c72 Show bus status and PDO slaves status in master info file. 2007-09-12 12:30:48 +00:00
Florian Pose 5bcf9d740f Better handling of unexpected working counters; introduced
ec_datagram_print_wc_error().
2007-09-12 10:07:55 +00:00
Florian Pose fd2c20530e Create network interfaces for EoE devices with alias as eoeXaY. 2007-09-12 10:00:39 +00:00
Florian Pose 9590fc6e37 Fixed EtherCAT addressing problem on big-endian systems. The slaves
address is now a four-byte-array, that is filled with little-endian
(EtherCAT) values on datagram creation.
2007-09-06 09:28:38 +00:00
Florian Pose ce972fd4fc Broadcast MAC address accepts first device. 2007-08-10 15:04:06 +00:00
Florian Pose 808ad3e2f1 Added ecrt_master_get_slave_by_pos(). 2007-08-10 13:46:34 +00:00
Florian Pose 1c2ac14987 Limited EEPROM reading; added EC_FIRST_EEPROM_CATEGORY_HEADER define. 2007-08-10 13:35:11 +00:00
Florian Pose 0d16910def Switched to tx socket buffer ring to avoid race conditions when multiple
instances call ec_device_send() in short intervals.
2007-08-09 15:45:56 +00:00
Florian Pose 68e6dfc108 Implemented debug frame ring to output the last n frames for debugging
reasons.
2007-08-09 15:01:14 +00:00
Florian Pose f76d31ec92 Included datagram queuing in critical section in idle task; added some
debugging and comments.
2007-08-09 14:47:37 +00:00
Florian Pose cc0cee6757 Re-ordered criteria for datagram matching. 2007-08-09 14:40:29 +00:00
Florian Pose 7ddb6848d9 Removed checking for NULL slave pointer in EoE handler; added comments. 2007-08-09 14:38:18 +00:00
Florian Pose 20daa81763 Minor change. 2007-08-09 14:28:54 +00:00
Florian Pose 2ce79f1433 Changed names of debug interfaces. 2007-08-08 13:58:24 +00:00
Florian Pose 480d12021b Added debugging output for unmatched frames and those that timed out. 2007-08-07 13:33:57 +00:00
Florian Pose 2d6ec6ec99 Renamed EoE interfaces to eoe<MASTER>s<SLAVE>. 2007-08-07 13:33:21 +00:00
Florian Pose 47f04dac71 Fixed typo. 2007-08-07 13:22:37 +00:00
Florian Pose a5b9e7b556 Added --enable-dummy; renamed EC_DBG_IF to EC_DEBUG_IF, ENABLE_DEBUG_IF
conditional.
2007-08-07 07:54:51 +00:00
Florian Pose 731377fe79 Improved Makefiles. 2007-08-03 13:31:13 +00:00
Florian Pose e5fc419e45 Replaced ecdev_link_state() with ecdev_set_link(); added
ecdev_get_link().
2007-07-25 12:52:06 +00:00
Florian Pose c9c595f94e Introduced frames_timed_out flag to notice bus failure when link down is
not detected.
2007-05-03 14:29:21 +00:00
Florian Pose f5d3ec538a Completely lock master while an EoE cycle is executing. 2007-03-16 14:42:04 +00:00
Florian Pose 9466d51185 Dynamic creation of EoE handlers. 2007-03-16 14:00:12 +00:00
Florian Pose e17ebc9764 Configure alternative PDO mapping only on slaves that have PDO sync
managers.
2007-03-16 13:39:19 +00:00
Florian Pose 2a1920caaa Removed unecessary clearing of EoE handlers in master init function;
fixed possible bug on failing to initialize or add master kobject.
2007-03-16 11:23:08 +00:00
Florian Pose 8978eb88a6 Respected endianess in sysfs SDO output; Separate message, if data type
does not fit to bit length.
2007-03-16 11:04:50 +00:00
Florian Pose f5a7e78786 Slave configuration exclusively from master thread; removed
ec_master_sync_io(); introduced events in the master state machine;
locking of slave scanning and slave configuration through allow_scan
and allow_config flags.
2007-03-12 18:21:42 +00:00
Florian Pose 8b1ad52b23 Fixed missing semaphore initialization. 2007-03-12 16:40:23 +00:00
Florian Pose d813370220 Added scan time output. 2007-03-12 13:59:23 +00:00
Florian Pose b09000d770 Fixed skipped datagrams when not in FSM idle phase. 2007-03-12 13:59:06 +00:00
Florian Pose 571917dd1a Introduced idle flag in master state machine. 2007-03-12 12:11:43 +00:00
Florian Pose 467dfa260e Renamed names of enum type ec_request_state_t. 2007-03-12 11:02:05 +00:00
Florian Pose 594c3bb715 Made waiting for device semaphore uninterruptible. 2007-03-12 08:47:56 +00:00
Florian Pose 6ef75e4d45 Replaced master variable 'atomic_t available' by integer and used
semaphore in module.c instead.
2007-03-12 08:42:02 +00:00
Florian Pose 2907aebfdf Implemented SDO reading with wait queues. 2007-03-09 15:11:29 +00:00
Florian Pose 8c9fec5ce0 Renamed ec_eeprom_request_state_t enum to ec_request_state_t and made it
global.
2007-03-09 14:00:32 +00:00
Florian Pose b0c1fbaeb0 Removed X:Y addressing scheme, ec_slave_is_coupler(),
ec_master_calc_addressing(), coupler_index and coupler_subindex variables.
Adapted lsec script and examples.
2007-03-09 13:24:15 +00:00
Florian Pose 81524176a8 Correctted resetting topology_change_pending and tainted flags. 2007-03-09 13:16:12 +00:00
Florian Pose 70482be0ac Added parameters for vendor ID and product code to ecrt_get_slave(); PDO
registration functions now take a slave pointer as argument; changed
values for ec_bus_status_t.
2007-03-09 10:24:50 +00:00
Florian Pose 8ac6516b4e Allow only MAC addresses as device identifiers; replaced master list by
master array; hand ober MAC addresses with array module parameters.
2007-03-08 18:15:25 +00:00
Florian Pose 37baf012fb Removed ecrt_master_run(), removed datagram queueing from state
machines, added datagram injection, two different master thread
functions.
2007-03-08 13:02:42 +00:00
Florian Pose d77267e81c Implemented alternative PDO mapping configuration interface. 2007-03-07 17:37:21 +00:00
Florian Pose 4d79363e75 Fixed sync manager freeing bug coming up in r833. 2007-03-07 15:29:02 +00:00
Florian Pose cea235a427 Removed obsolete ec_slave_sync_config(). 2007-03-07 13:56:00 +00:00
Florian Pose e14a82d992 Layed out FMMU structure and methods to own files. 2007-03-07 13:29:29 +00:00
Florian Pose a5eabfa35d Moved a few constants to the files they are needed in. 2007-03-07 13:12:33 +00:00
Florian Pose 89dd4e09b6 Layed out sync manager structures and methods into own files. 2007-03-07 13:06:40 +00:00
Florian Pose ff176f5542 Layed out PDO structures to own files. 2007-03-07 11:46:02 +00:00
Florian Pose 762b0d2cf8 Renamed ec_sii_sync_t to ec_sync_t. 2007-03-07 11:30:09 +00:00
Florian Pose 667e0f3e13 Renamed ec_sii_pdo_t and ec_sii_pdo_entry_t to ec_pdo_t and
ec_pdo_entry_t, respectively.
2007-03-07 11:18:34 +00:00
Florian Pose 0ffba7a923 Simplified handling of EEPROM strings. 2007-03-07 11:11:17 +00:00
Florian Pose bfb1beeb5f Renamed slave configuration states "sync" to "mbox_sync" and "sync2" to
"pdo_sync".
2007-03-06 15:11:44 +00:00
Florian Pose 924ebcd8c6 Renamed SII fetching functions (non-functional). 2007-03-06 10:37:56 +00:00
Florian Pose 71f2050fa4 Introduced ec_slave_get_pdo_sync(). 2007-03-06 09:15:12 +00:00
Florian Pose b75973f27f SII sync managers as array instead of list, removed sync manager
guessing, ignoring base_sync_count.
2007-03-06 09:06:01 +00:00
Florian Pose b0487a7fe4 Removed unnecessary edge in slave configuration FSM graph. 2007-03-05 14:59:23 +00:00
Florian Pose e3afb9e9fb Removed ugly ec_slave_has_subbus() function. 2007-03-05 11:34:52 +00:00
Florian Pose b4bfda2e62 Introduced master status, ecrt_master_get_status(), tainted flag,
pdos_registered flags and pdo_slaves_offline counter.
2007-03-05 10:35:50 +00:00
Florian Pose 43075a1589 Corrected type of online_state. 2007-03-05 10:00:18 +00:00
Florian Pose b0285d88a9 Introduced ec_slave_online_state_t, ec_slave_set_online_state(), renamed
slave->online to ec_online_state and introduced
ec_slave_set_app_state().
2007-03-05 09:55:39 +00:00
Florian Pose 62e1adca17 Moved state request on PDO registration to slave.c. 2007-03-05 09:10:02 +00:00
Florian Pose d8d30c4a1f Implemented alias reading/writing via sysfs. 2007-03-02 15:43:45 +00:00
Florian Pose 94866f4bca Minor changes in EEPROM write code. 2007-03-02 14:47:09 +00:00
Florian Pose 65572b43d7 Fixed signal issue in EEPROM writing code. 2007-03-02 14:35:49 +00:00
Florian Pose 6ad6b0cb0b Fixed possible race with next request pointer again. 2007-03-02 08:45:21 +00:00
Florian Pose d2094a18e5 Fixed possible bug in master FSM concerning unqueueing of EEPROM write
requests.
2007-03-02 07:45:00 +00:00
Florian Pose 2ec4d25fce Introduced EEPROM write requests: EEPROM write operations from user
space are now queued and block until completion. Also, appropriate error
codes are returned.
2007-03-01 21:34:10 +00:00
Florian Pose e1315d14f4 Made data pointer in ec_fsm_sii_write() const. 2007-03-01 21:23:07 +00:00
Florian Pose 04056ce182 ec_slave_write_eeprom now returns certain error codes. 2007-03-01 15:03:08 +00:00
Florian Pose 9afbed92d2 Removed eeprom_write_enable file. 2007-03-01 14:50:53 +00:00
Florian Pose e3412a4c2f Completely removed ecrt_slave_pdo_size() code. 2007-02-28 09:22:03 +00:00
Florian Pose 53c66dad4f Added datagram state to "Failed to receive..." messages. 2007-02-22 13:39:19 +00:00
Florian Pose 7e373ee0c9 Removed faulty polling before device->open(). 2007-02-22 09:19:02 +00:00
Florian Pose 7b59f69823 Destroy slaves when leaving idle mode. 2007-02-21 13:43:47 +00:00
Florian Pose 6c08745e55 Made master devices persistent; added ec_device_attach() and ec_device_detach(). 2007-02-20 17:15:43 +00:00
Florian Pose b1a770729c Removed ktype for module kobject; added backup device for master; device
connection information and IDs in master info file.
2007-02-20 13:42:44 +00:00
Florian Pose 046d9e7cd5 Added ec_device_id_print(). 2007-02-20 13:40:30 +00:00
Florian Pose 27f9a4af2d New module file /sys/ethercat, masters moved to /sys/ethercat/masterX. 2007-02-20 11:28:15 +00:00
Florian Pose 383a1f7631 Layed out device ID functionality in own files. 2007-02-20 09:43:23 +00:00
Florian Pose afd188c829 Minor change in device.c (removed unused header). 2007-02-20 09:37:57 +00:00
Florian Pose 0f53f8fa3e Introduced device IDs; removed comment lines from 8139too; removed
ec_eoeif_count parameter.
2007-02-16 17:13:39 +00:00
Florian Pose cef0cc6409 Removed ec_eoeif_count parameter from master module. 2007-02-16 13:30:46 +00:00
Florian Pose 2cbddbb9d1 Removed XML device from master structure. 2007-02-16 13:23:57 +00:00
Florian Pose e643409867 Made ec_sync_config() and ec_fmmu_config() to methods of ec_slave_t. 2007-02-13 11:48:46 +00:00
Florian Pose 8e2a5258cc Introduced topology_change_pending to delay bus scanning until IDLE mode
has been reached.
2007-02-13 10:51:40 +00:00
Florian Pose 9a5fcf81f7 Minor: Removed warning when EoE interface is up upon master unloading. 2007-02-12 14:42:36 +00:00
Florian Pose 9a9e5d719c Fixed bug causing unloading of realtime module being very slow after topology change. 2007-02-12 11:15:23 +00:00
Florian Pose 6d74555dad schedule() other processes while waiting in ec_master_sync_io(). 2007-02-12 11:12:00 +00:00
Florian Pose 3b4c23a436 Ignore queued datagrams while waiting in ec_master_sync_io(). 2007-02-12 10:39:52 +00:00
Florian Pose 7f322ac764 Added EXPORT macro for ecrt_version_magic(). 2007-02-09 18:29:16 +00:00
Florian Pose 80566cd979 Introduced ECRT version magic. 2007-02-09 10:23:13 +00:00
Florian Pose 5f7ac3aa85 Minor changes in master thread messages. 2007-02-09 10:04:05 +00:00
Florian Pose df9f71f93d Fixed invalid module pointer in device structure. 2007-02-09 09:52:43 +00:00
Florian Pose f2c447a006 Fixed bug that caused the last slave not to be scanned. 2007-02-06 15:13:51 +00:00
Florian Pose 9a53bf1aa6 Fixed modules_install target: create dir before copying. 2007-01-12 15:18:11 +00:00
Florian Pose 291d63856b Replaced ec_isr_t by ec_pollfunc_t; added poll function s in network drivers. 2007-01-12 14:28:33 +00:00
Florian Pose d5cd924844 Warn on duplicate master releasing. 2007-01-12 12:10:09 +00:00
Florian Pose cde396cdc2 Fixed bug in master state machine that came up in r745. 2007-01-12 12:09:38 +00:00
Florian Pose 413fdbb006 Minor fix on master.c (name of master thread). 2007-01-10 16:34:42 +00:00
Florian Pose df1cc1d939 Layed out slave state machines in own files fsm_slave.[ch]; renamed fsm.[ch] to fsm_master.[ch] 2007-01-10 16:32:06 +00:00
Florian Pose ba97994717 Added some documentation. 2007-01-10 10:58:49 +00:00
Florian Pose 16684ccffd Minor changes to slave.c 2007-01-10 10:51:43 +00:00
Florian Pose ea7e0ca982 Master workqueue replaced with kernel thread. 2007-01-10 10:45:57 +00:00
Florian Pose 81acf0c368 Fixed blocking of EoE processing while entering or leaving operational mode. 2007-01-09 14:51:00 +00:00
Florian Pose 9ff5f1348b Re-added slave.configured flag as slave.self_configured. 2007-01-09 14:36:08 +00:00
Florian Pose 3123861960 Removed debug messages again. 2007-01-09 14:19:37 +00:00
Florian Pose cda48ab659 Temporarily added some debug information. 2007-01-09 14:12:37 +00:00
Florian Pose ec252a2df6 Removed slave.configured flag. 2007-01-09 13:57:34 +00:00
Florian Pose 5d927adad9 Display requested state in slave info. 2007-01-09 13:42:38 +00:00
Florian Pose 4dc453ef55 Fixed race: Stop EoE processing when entering or leaving operation mode. 2007-01-09 12:56:03 +00:00
Florian Pose 8f51b59d3e Minor fix in master.c 2007-01-08 15:15:17 +00:00
Florian Pose ed70ae4999 Internal locking callbacks, improved locking. 2007-01-08 15:01:18 +00:00
Florian Pose 680c2146f2 Datagram preallocation with ATOMIC flag, because it is calles in timer context. 2007-01-08 14:24:33 +00:00
Florian Pose 03c3e13bf9 Removed datagram.cycles_queued, needed for "starved" datagrams (deprecated). 2007-01-08 08:23:18 +00:00
Florian Pose 54b06ceb6f State machines re-send datagrams on timeout. 2006-12-18 18:10:52 +00:00
Florian Pose 6fcaaff11b Improved error messages in mailbox.c 2006-12-18 17:53:29 +00:00
Florian Pose 0c3d8c8ce1 Fixed warnings in master.c. 2006-12-18 11:51:43 +00:00
Florian Pose 7edbaa7ec7 Fixed typo in CoE FSM. 2006-12-18 11:48:48 +00:00
Florian Pose fc6917709a Corrected error messages in get_slave(). 2006-12-18 11:00:26 +00:00
Florian Pose b00258a4d8 Current consumption in sysfs; "lsec -c" shows current consumption and remaining current. 2006-12-08 11:52:33 +00:00
Florian Pose 3f8978f998 Re-introduced ecdev_open() and ecdev_close(), to avoid a race condition regarding the link state. 2006-12-08 11:39:56 +00:00
Florian Pose b3de249e28 Fixed lost frames display bug when no frames were sent. 2006-11-24 11:09:36 +00:00
Florian Pose c0f6188104 Interface changes for version 1.2, see NEWS file. 2006-11-24 11:02:35 +00:00
Florian Pose ded638c296 Version 1.2.0-rc1, re-introduced ecrt_domain_queue(). 2006-11-23 20:19:26 +00:00
Florian Pose 2568ef35d1 Added frame counter. 2006-11-21 15:46:21 +00:00
Florian Pose bae7fb4e90 Introduced "starved" datagrams. 2006-11-21 15:13:48 +00:00
Florian Pose daa10ed44a Updated source code documentation. 2006-11-07 13:38:40 +00:00
Florian Pose 026dc769d3 Improved autotools, added config.kbuild, --with-msr-dir, --with-rtai-dir, --with-8139too-kernel. 2006-11-06 16:27:40 +00:00
Florian Pose e3b241a79a kobject_add() in constructors. 2006-11-06 14:22:35 +00:00
Florian Pose 1999d5d4a0 Minor change in master.c. 2006-11-06 14:21:35 +00:00
Florian Pose 286825d02a Added clear function for SDO kobject. 2006-11-06 14:19:03 +00:00
Florian Pose a71ecdabdd Fixed workqueue cancelling. 2006-11-06 14:15:21 +00:00
Florian Pose 05557b7766 Fix: Configuration of process data sync managers now in PREOP. 2006-11-03 15:35:31 +00:00
Florian Pose f9f2b40b65 Improved installation, added quick modules_install target. 2006-11-03 14:18:05 +00:00
Florian Pose 9f6d10e2b8 Fixed CoE Upload Request, now 10 bytes of Mailbox Service Data. 2006-11-03 12:18:37 +00:00
Florian Pose 02c7006f24 Allow CoE requests, even if slave has error flag set. 2006-11-03 12:17:22 +00:00
Florian Pose 2b0041da50 Fixed debug interfaces. 2006-10-31 15:32:57 +00:00
Florian Pose cbe660aa68 Fixed EEPROM writing. 2006-10-31 14:25:01 +00:00
Florian Pose b67bbd398a Fixed state change FSM again. 2006-10-31 11:12:50 +00:00
Florian Pose 9c59a83aca Remove estimated sync manager sizes when leaving operation mode. 2006-10-30 15:39:03 +00:00
Florian Pose d301450949 BUGFIX: Remove SDO configurations when leaving OPERATION mode. 2006-10-27 15:04:12 +00:00
Florian Pose 4b9ee9b959 SDO configurations in Sysfs. 2006-10-27 15:01:32 +00:00
Florian Pose ab80d57c03 New state in slaveconf FSM: Clear FMMU configurations after INIT. 2006-10-27 14:41:09 +00:00
Florian Pose 1f44556083 Print certain warnings only at debug_level. 2006-10-27 13:59:49 +00:00
Florian Pose b53d42b6e3 Minor output changes in ethernet.c 2006-10-27 13:58:14 +00:00
Florian Pose fa99dfa321 Print certain logs only at debug_level. 2006-10-27 13:31:26 +00:00
Florian Pose 7a114fdb9d Added slave flags to Sysfs. 2006-10-27 13:20:16 +00:00
Florian Pose 1154f9294d Explicit use of slave configuration FSM in ecrt_master_activate() and ecrt_master_release(). 2006-10-27 12:45:22 +00:00
Florian Pose dcb9f67263 Minor output changes in master/debug.c. 2006-10-27 12:43:20 +00:00
Florian Pose fb9c619686 State acknowledgement in master state machine. 2006-10-27 11:15:07 +00:00
Florian Pose 2a90bd26da Changed output of ec_state_string() for error flag to "+ ERROR". 2006-10-27 10:41:02 +00:00
Florian Pose 0573bbce4d Moved functionality of ecrt_master_deactivate() (now deprecated) to ecrt_master_release(). 2006-10-27 09:29:46 +00:00
Florian Pose 131589f534 FIX: Introduced destroy() functions for kobject-derived classes and thus fixed memory leak. 2006-10-27 09:19:58 +00:00
Florian Pose b6e88ad403 Persistent slave lists. 2006-10-26 16:29:26 +00:00
Florian Pose 66f345ae29 Minor changes in Kbuild files. 2006-10-25 16:53:17 +00:00
Florian Pose 4fbd230e2b Compiler flag -DSVNREV only for module.c to avoid unnecessary recompiling. 2006-10-25 16:49:53 +00:00
Florian Pose e5a176ba9b Fixes in state change FSM. 2006-10-25 13:32:17 +00:00
Florian Pose 1a75b5c32a SDO dictionary and SDO access only in IDLE mode, because of kmalloc()s. 2006-10-25 07:41:14 +00:00
Florian Pose 5ae68fa1db SDO uploading via Sysfs without master FSM calling wake_up(). 2006-10-24 15:14:25 +00:00
Florian Pose b25fdd525b Increased state change checking timeout to 1s. 2006-10-24 10:37:05 +00:00
Florian Pose 4db2d27655 Output state names instead of codes in change FSM. 2006-10-24 08:41:39 +00:00
Florian Pose 6d7f65a072 Minot output changes in fsm.c 2006-10-24 08:09:42 +00:00
Florian Pose fb556ebefd Layed out CoE state machine. 2006-10-24 08:00:24 +00:00
Florian Pose daf2544626 Removed state machine running() methods. 2006-10-23 14:00:58 +00:00