#include <sys/ioctl.h>
#define PCIBAR 0
-
+
static uint32_t dataBuffer[DMA_BUFFER_NUM_PAGES * 1024];
static unsigned int dataBufferSize = 0; /* Size of dataBuffer in 32bit words */
int i;
/* Adjust endianess ... */
- for (i = 1; i < size; i++) {
- udpBufferS[i] = htons(udpBufferS[i]);
+ for (i = 0; i < size; i++) {
+ udpBuffer[i] = htons(udpBuffer[i]);
}
-
+
+ if (trb3_udp_version == 2) {
+ size++;
+ }
+
while (timeoutCtr < 3) {
if (trb3_udp_version == 2) {
/* Add udp_command_index */
udp_command_index++;
udpBufferS[0] = htons(0x0100 | udp_command_index);
- size++;
}
if (trb_debug > 2) {
fprintf(stderr, "Send UDP request attempt #%d\n", timeoutCtr);
fprintf(stderr, "udp sent:\n");
for (i = 0; i < size; i++) {
- fprintf(stderr, "%d 0x%04x\n", i, udpBufferS[i]);
+ fprintf(stderr, "%d 0x%04x\n", i, ntohs(udpBufferS[i]));
}
}
int status;
int i;
+ /* Adjust endianess ... */
+ for (i = 0; i < size; i++) {
+ udpBuffer[i] = htons(udpBuffer[i]);
+ }
+
if (trb3_udp_version == 2) {
/* Add udp_command_index */
udp_command_index++;
- udpBufferS[0] = 0x0100 | udp_command_index;
+ udpBufferS[0] = htons(0x0100 | udp_command_index);
size++;
}
- /* Adjust endianess ... */
- for (i = 0; i < size; i++) {
- if (trb_debug > 2) {
- if (i == 0) {
- fprintf(stderr, "udp sent:\n");
- }
- fprintf(stderr, "%d 0x%04x\n", i, udpBufferS[i]);
- }
- udpBufferS[i] = htons(udpBufferS[i]);
+ if (trb_debug > 2) {
+ fprintf(stderr, "udp sent:\n");
+ for (i = 0; i < size; i++) {
+ fprintf(stderr, "%d 0x%04x\n", i, ntohs(udpBufferS[i]));
+ }
}
-
+
/* Send request */
status = sendto(trb3_sockfd,
(void*)udpBufferS,
if (trb_debug > 0) {
fprintf(stderr, "Init_Transfer done.\n");
}
-
udpBuffer[0] = HEADER_HDR | 0x8030;
udpBuffer[1] = sender_address;
udpBuffer[2] = 0x0000;
udpBuffer[4] = CMD_NETADMINISTRATION;
status = sendTrbPackage_nowait(5);
-
+
if (status < 0) {
unlockPorts(0);
return -1;