# HG changeset patch # User Florian Pose # Date 1256734059 -3600 # Node ID 81a16ba13ae6abb0ce9fb11b4bed50e5192dc71b # Parent 68d2af1503816f2e1c87580ad98fcacd7fc62124 Avoid zeroing mailbox datagram because of VoE handlers. diff -r 68d2af150381 -r 81a16ba13ae6 master/fsm_coe.c --- a/master/fsm_coe.c Wed Oct 28 13:18:07 2009 +0100 +++ b/master/fsm_coe.c Wed Oct 28 13:47:39 2009 +0100 @@ -1526,6 +1526,7 @@ 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 -r 68d2af150381 -r 81a16ba13ae6 master/mailbox.c --- a/master/mailbox.c Wed Oct 28 13:18:07 2009 +0100 +++ b/master/mailbox.c Wed Oct 28 13:47:39 2009 +0100 @@ -71,7 +71,6 @@ 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 -r 68d2af150381 -r 81a16ba13ae6 master/voe_handler.c --- a/master/voe_handler.c Wed Oct 28 13:18:07 2009 +0100 +++ b/master/voe_handler.c Wed Oct 28 13:47:39 2009 +0100 @@ -234,6 +234,7 @@ 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;