summaryrefslogtreecommitdiff
path: root/daemons/gptp/common/ap_message.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'daemons/gptp/common/ap_message.cpp')
-rw-r--r--daemons/gptp/common/ap_message.cpp116
1 files changed, 0 insertions, 116 deletions
diff --git a/daemons/gptp/common/ap_message.cpp b/daemons/gptp/common/ap_message.cpp
deleted file mode 100644
index df121838..00000000
--- a/daemons/gptp/common/ap_message.cpp
+++ /dev/null
@@ -1,116 +0,0 @@
-/*************************************************************************************************************
-Copyright (c) 2012-2016, Harman International Industries, Incorporated
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-1. Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS LISTED "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS LISTED BE LIABLE FOR
-ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*************************************************************************************************************/
-
-#include <ieee1588.hpp>
-#include <avbts_clock.hpp>
-#include <avbap_message.hpp>
-#include <ether_port.hpp>
-#include <avbts_ostimer.hpp>
-#include <gptp_log.hpp>
-
-#include <stdio.h>
-#include <string.h>
-#include <math.h>
-
-// Octet based data 2 buffer macros
-#define OCT_D2BMEMCP(d, s) memcpy(d, s, sizeof(s)); d += sizeof(s);
-#define OCT_D2BBUFCP(d, s, len) memcpy(d, s, len); d += len;
-#define OCT_D2BHTONB(d, s) *(U8 *)(d) = s; d += sizeof(s);
-#define OCT_D2BHTONS(d, s) *(U16 *)(d) = PLAT_htons(s); d += sizeof(s);
-#define OCT_D2BHTONL(d, s) *(U32 *)(d) = PLAT_htonl(s); d += sizeof(s);
-
-// Bit based data 2 buffer macros
-#define BIT_D2BHTONB(d, s, shf) *(uint8_t *)(d) |= s << shf;
-#define BIT_D2BHTONS(d, s, shf) *(uint16_t *)(d) |= PLAT_htons((uint16_t)(s << shf));
-#define BIT_D2BHTONL(d, s, shf) *(uint32_t *)(d) |= PLAT_htonl((uint32_t)(s << shf));
-
-
-APMessageTestStatus::APMessageTestStatus()
-{
-}
-
-APMessageTestStatus::~APMessageTestStatus()
-{
-}
-
-APMessageTestStatus::APMessageTestStatus( EtherPort *port )
-{
-}
-
-void APMessageTestStatus::sendPort( EtherPort * port )
-{
- static uint16_t sequenceId = 0;
-
- uint8_t buf_t[256];
- uint8_t *buf_ptr = buf_t + port->getPayloadOffset();
- uint16_t tmp16;
- uint32_t tmp32;
- uint64_t tmp64;
-
- memset(buf_t, 0, 256);
-
- // Create packet in buf
- messageLength = AP_TEST_STATUS_LENGTH;
-
- BIT_D2BHTONB(buf_ptr + AP_TEST_STATUS_AVTP_SUBTYPE(AP_TEST_STATUS_OFFSET), 0xfb, 0);
- BIT_D2BHTONB(buf_ptr + AP_TEST_STATUS_AVTP_VERSION_CONTROL(AP_TEST_STATUS_OFFSET), 0x1, 0);
- BIT_D2BHTONS(buf_ptr + AP_TEST_STATUS_AVTP_STATUS_LENGTH(AP_TEST_STATUS_OFFSET), 148, 0);
-
- port->getLocalAddr()->toOctetArray(buf_ptr + AP_TEST_STATUS_TARGET_ENTITY_ID(AP_TEST_STATUS_OFFSET));
-
- tmp16 = PLAT_htons(sequenceId++);
- memcpy(buf_ptr + AP_TEST_STATUS_SEQUENCE_ID(AP_TEST_STATUS_OFFSET), &tmp16, sizeof(tmp16));
-
- BIT_D2BHTONS(buf_ptr + AP_TEST_STATUS_COMMAND_TYPE(AP_TEST_STATUS_OFFSET), 1, 15);
- BIT_D2BHTONS(buf_ptr + AP_TEST_STATUS_COMMAND_TYPE(AP_TEST_STATUS_OFFSET), 0x29, 0);
-
- tmp16 = PLAT_htons(0x09);
- memcpy(buf_ptr + AP_TEST_STATUS_DESCRIPTOR_TYPE(AP_TEST_STATUS_OFFSET), &tmp16, sizeof(tmp16));
- tmp16 = PLAT_htons(0x00);
- memcpy(buf_ptr + AP_TEST_STATUS_DESCRIPTOR_INDEX(AP_TEST_STATUS_OFFSET), &tmp16, sizeof(tmp16));
-
- tmp32 = PLAT_htonl(0x07000023);
- memcpy(buf_ptr + AP_TEST_STATUS_COUNTERS_VALID(AP_TEST_STATUS_OFFSET), &tmp32, sizeof(tmp32));
-
- tmp32 = PLAT_htonl(port->getLinkUpCount());
- memcpy(buf_ptr + AP_TEST_STATUS_COUNTER_LINKUP(AP_TEST_STATUS_OFFSET), &tmp32, sizeof(tmp32));
-
- tmp32 = PLAT_htonl(port->getLinkDownCount());
- memcpy(buf_ptr + AP_TEST_STATUS_COUNTER_LINKDOWN(AP_TEST_STATUS_OFFSET), &tmp32, sizeof(tmp32));
-
- Timestamp system_time;
- Timestamp device_time;
- uint32_t local_clock, nominal_clock_rate;
- port->getDeviceTime(system_time, device_time, local_clock, nominal_clock_rate);
- tmp64 = PLAT_htonll(TIMESTAMP_TO_NS(system_time));
- memcpy(buf_ptr + AP_TEST_STATUS_MESSAGE_TIMESTAMP(AP_TEST_STATUS_OFFSET), &tmp64, sizeof(tmp64));
-
- BIT_D2BHTONB(buf_ptr + AP_TEST_STATUS_STATION_STATE(AP_TEST_STATUS_OFFSET), (uint8_t)port->getStationState(), 0);
-
- port->sendGeneralPort(AVTP_ETHERTYPE, buf_t, messageLength, MCAST_TEST_STATUS, NULL);
-
- return;
-}
-