From 307384c3b50b68cafebb51986c5faddb9bfbcbf1 Mon Sep 17 00:00:00 2001 From: Florian Pose <fp@igh-essen.com> Date: Wed, 28 Oct 2009 13:47:39 +0100 Subject: [PATCH] Avoid zeroing mailbox datagram because of VoE handlers. --- master/fsm_coe.c | 1 + master/mailbox.c | 1 - master/voe_handler.c | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/master/fsm_coe.c b/master/fsm_coe.c index 978690b6..6f5b216d 100644 --- a/master/fsm_coe.c +++ b/master/fsm_coe.c @@ -1526,6 +1526,7 @@ void ec_fsm_coe_up_prepare_segment_request( EC_WRITE_U16(data, 0x2 << 12); // SDO request EC_WRITE_U8 (data + 2, (fsm->toggle << 4 // toggle | 0x3 << 5)); // upload segment request + memset(data + 3, 0x00, 7); if (fsm->slave->master->debug_level) { EC_DBG("Upload segment request:\n"); diff --git a/master/mailbox.c b/master/mailbox.c index 71ba6e80..57de8a4e 100644 --- a/master/mailbox.c +++ b/master/mailbox.c @@ -71,7 +71,6 @@ uint8_t *ec_slave_mbox_prepare_send(const ec_slave_t *slave, /**< slave */ return ERR_PTR(-EOVERFLOW); } - ec_datagram_zero(datagram); ret = ec_datagram_fpwr(datagram, slave->station_address, slave->configured_rx_mailbox_offset, slave->configured_rx_mailbox_size); diff --git a/master/voe_handler.c b/master/voe_handler.c index 3f62de18..b9271f74 100644 --- a/master/voe_handler.c +++ b/master/voe_handler.c @@ -234,6 +234,7 @@ void ec_voe_handler_state_write_start(ec_voe_handler_t *voe) EC_WRITE_U32(data, voe->vendor_id); EC_WRITE_U16(data + 4, voe->vendor_type); + /* data already in datagram */ voe->retries = EC_FSM_RETRIES; voe->jiffies_start = jiffies; -- GitLab