/*\r
-FreeRTOS+TCP V2.0.7\r
+FreeRTOS+TCP V2.0.11\r
Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\r
\r
Permission is hereby granted, free of charge, to any person obtaining a copy of\r
#endif\r
#define TX_OFFSET ipconfigPACKET_FILLER_SIZE\r
\r
+#define RX_BUFFER_ALIGNMENT 14\r
+\r
/* Defined in NetworkInterface.c */\r
extern TaskHandle_t xEMACTaskHandle;\r
\r
XStatus emacps_send_message(xemacpsif_s *xemacpsif, NetworkBufferDescriptor_t *pxBuffer, int iReleaseAfterSend )\r
{\r
int head = xemacpsif->txHead;\r
-int tail = xemacpsif->txTail;\r
int iHasSent = 0;\r
uint32_t ulBaseAddress = xemacpsif->emacps.Config.BaseAddress;\r
TickType_t xBlockTimeTicks = pdMS_TO_TICKS( 5000u );\r
break;\r
}\r
\r
- pxNewBuffer = pxGetNetworkBufferWithDescriptor( ipTOTAL_ETHERNET_FRAME_SIZE, ( TickType_t ) 0 );\r
+ pxNewBuffer = pxGetNetworkBufferWithDescriptor( ipTOTAL_ETHERNET_FRAME_SIZE + RX_BUFFER_ALIGNMENT, ( TickType_t ) 0 );\r
if( pxNewBuffer == NULL )\r
{\r
/* A packet has been received, but there is no replacement for this Network Buffer.\r
{\r
if( ucIsCachedMemory( pxNewBuffer->pucEthernetBuffer ) != 0 )\r
{\r
- Xil_DCacheInvalidateRange( ( ( uint32_t )pxNewBuffer->pucEthernetBuffer ) - ipconfigPACKET_FILLER_SIZE, (unsigned)ipTOTAL_ETHERNET_FRAME_SIZE );\r
+ Xil_DCacheInvalidateRange( ( ( uint32_t )pxNewBuffer->pucEthernetBuffer ) - ipconfigPACKET_FILLER_SIZE, (unsigned)ipTOTAL_ETHERNET_FRAME_SIZE + RX_BUFFER_ALIGNMENT);\r
}\r
{\r
uint32_t addr = ( ( uint32_t )pxNewBuffer->pucEthernetBuffer ) & XEMACPS_RXBUF_ADD_MASK;\r
pxBuffer = pxDMA_rx_buffers[ iIndex ];\r
if( pxBuffer == NULL )\r
{\r
- pxBuffer = pxGetNetworkBufferWithDescriptor( ipTOTAL_ETHERNET_FRAME_SIZE, ( TickType_t ) 0 );\r
+ pxBuffer = pxGetNetworkBufferWithDescriptor( ipTOTAL_ETHERNET_FRAME_SIZE + RX_BUFFER_ALIGNMENT, ( TickType_t ) 0 );\r
if( pxBuffer == NULL )\r
{\r
FreeRTOS_printf( ("Unable to allocate a network buffer in recv_handler\n" ) );\r
if( ucIsCachedMemory( pxBuffer->pucEthernetBuffer ) != 0 )\r
{\r
Xil_DCacheInvalidateRange( ( ( uint32_t )pxBuffer->pucEthernetBuffer ) - ipconfigPACKET_FILLER_SIZE,\r
- (unsigned)ipTOTAL_ETHERNET_FRAME_SIZE );\r
+ (unsigned)ipTOTAL_ETHERNET_FRAME_SIZE + RX_BUFFER_ALIGNMENT);\r
}\r
}\r
\r