summaryrefslogtreecommitdiffstats
path: root/libs/Network/include
diff options
context:
space:
mode:
authorLojewski, Evan <github@meklort.com>2019-05-12 10:52:35 -0600
committerLojewski, Evan <github@meklort.com>2019-05-12 10:52:35 -0600
commit2ff175cbf6d3d4be9ff1e05f89020f6516bcc18a (patch)
tree5aa2a6893b7a5a1c26ceb0e43da7b3bb4243d3f7 /libs/Network/include
parente489479f5c9f142b98ac9a44e607c0706fadcd81 (diff)
downloadbcm5719-ortega-2ff175cbf6d3d4be9ff1e05f89020f6516bcc18a.tar.gz
bcm5719-ortega-2ff175cbf6d3d4be9ff1e05f89020f6516bcc18a.zip
Minor cleanup for lib/Network
Diffstat (limited to 'libs/Network/include')
-rw-r--r--libs/Network/include/Network.h35
1 files changed, 25 insertions, 10 deletions
diff --git a/libs/Network/include/Network.h b/libs/Network/include/Network.h
index 70c1140..25dab4b 100644
--- a/libs/Network/include/Network.h
+++ b/libs/Network/include/Network.h
@@ -47,20 +47,21 @@
#include <APE_APE.h>
#include <APE_APE_PERI.h>
-#include <APE_TX_PORT0.h>
#include <APE_RX_PORT0.h>
-#include <APE_TX_PORT1.h>
#include <APE_RX_PORT1.h>
-#include <APE_TX_PORT2.h>
#include <APE_RX_PORT2.h>
-#include <APE_TX_PORT3.h>
#include <APE_RX_PORT3.h>
+#include <APE_TX_PORT0.h>
+#include <APE_TX_PORT1.h>
+#include <APE_TX_PORT2.h>
+#include <APE_TX_PORT3.h>
#include <types.h>
-typedef struct {
+typedef struct
+{
/* TX Registers */
volatile RegAPETxToNetPoolModeStatus_t *tx_mode;
- volatile TX_PORT_t * tx_port;
+ volatile TX_PORT_t *tx_port;
volatile RegAPETxToNetBufferAllocator_t *tx_allocator;
volatile RegAPETxToNetDoorbell_t *tx_doorbell;
@@ -71,6 +72,17 @@ typedef struct {
volatile RegAPERxPoolRetire_t *rx_retire;
} NetworkPort_t;
+typedef union {
+ uint32_t r32;
+ struct
+ {
+ uint32_t payload_length:7;
+ uint32_t next_block:23;
+ uint32_t first:1;
+ uint32_t not_last:1;
+ } bits;
+} network_control_t;
+
extern NetworkPort_t gPort0;
extern NetworkPort_t gPort1;
@@ -82,15 +94,18 @@ void Network_InitTxRx(void);
uint32_t Network_TX_numBlocksNeeded(uint32_t frame_size);
int32_t Network_TX_allocateBlock(NetworkPort_t *port);
-void Network_TX_transmitBePacket(uint8_t *packet, uint32_t length, NetworkPort_t *port);
-void Network_TX_transmitLePacket(uint8_t *packet, uint32_t length, NetworkPort_t *port);
+void Network_TX_transmitBePacket(uint8_t *packet, uint32_t length,
+ NetworkPort_t *port);
+void Network_TX_transmitLePacket(uint8_t *packet, uint32_t length,
+ NetworkPort_t *port);
-void Network_TX_transmitPassthroughPacket(uint32_t length, NetworkPort_t* port);
+void Network_TX_transmitPassthroughPacket(uint32_t length, NetworkPort_t *port);
// void Network_TX_transmitPassthroughPacket(RegAPE_PERIBmcToNcRxStatus_t
// rx_status);
-bool Network_RxLePatcket(uint32_t *buffer, uint32_t *length, NetworkPort_t *port);
+bool Network_RxLePatcket(uint32_t *buffer, uint32_t *length,
+ NetworkPort_t *port);
bool Network_PassthroughRxPatcket(NetworkPort_t *port);
void Network_SetMACAddr(uint16_t high, uint32_t low, uint32_t index,
OpenPOWER on IntegriCloud