summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/APE_DEVICE.h204
-rw-r--r--include/APE_DEVICE1.h2
-rw-r--r--include/APE_DEVICE2.h2
-rw-r--r--include/APE_DEVICE3.h2
-rw-r--r--include/bcm5719_DEVICE.h204
-rw-r--r--ipxact/DEVICE.xml81
-rw-r--r--simulator/APE_DEVICE.cpp4
-rw-r--r--simulator/APE_DEVICE1.cpp4
-rw-r--r--simulator/APE_DEVICE1_sim.cpp8
-rw-r--r--simulator/APE_DEVICE2.cpp4
-rw-r--r--simulator/APE_DEVICE2_sim.cpp8
-rw-r--r--simulator/APE_DEVICE3.cpp4
-rw-r--r--simulator/APE_DEVICE3_sim.cpp8
-rw-r--r--simulator/APE_DEVICE_sim.cpp8
-rw-r--r--simulator/bcm5719_DEVICE.cpp4
-rw-r--r--simulator/bcm5719_DEVICE_sim.cpp8
16 files changed, 526 insertions, 29 deletions
diff --git a/include/APE_DEVICE.h b/include/APE_DEVICE.h
index 4a4828b..b75a8b2 100644
--- a/include/APE_DEVICE.h
+++ b/include/APE_DEVICE.h
@@ -2008,10 +2008,10 @@ typedef register_container RegDEVICEMiiMode_t {
#define DEVICE_TRANSMIT_MAC_MODE_RESET_MASK 0x1u
#define GET_DEVICE_TRANSMIT_MAC_MODE_RESET(__reg__) (((__reg__) & 0x1) >> 0u)
#define SET_DEVICE_TRANSMIT_MAC_MODE_RESET(__val__) (((__val__) << 0u) & 0x1u)
-#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE_SHIFT 1u
-#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE_MASK 0x2u
-#define GET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE(__reg__) (((__reg__) & 0x2) >> 1u)
-#define SET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE(__val__) (((__val__) << 1u) & 0x2u)
+#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE_SHIFT 1u
+#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE_MASK 0x2u
+#define GET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE(__reg__) (((__reg__) & 0x2) >> 1u)
+#define SET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE(__val__) (((__val__) << 1u) & 0x2u)
#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_FLOW_CONTROL_SHIFT 4u
#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_FLOW_CONTROL_MASK 0x10u
#define GET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_FLOW_CONTROL(__reg__) (((__reg__) & 0x10) >> 4u)
@@ -2051,7 +2051,7 @@ typedef register_container RegDEVICETransmitMacMode_t {
/** @brief When this bit is set to 1, the Transmit MAC state machine will be reset. This is a self-clearing bit. */
BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, Reset, 0, 1)
/** @brief Used to be enable TDE in legacy-same purpose. */
- BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, EnableTCE, 1, 1)
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, EnableTDE, 1, 1)
/** @brief Padding */
BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, reserved_3_2, 2, 2)
/** @brief MAC will send 802.3x flow control frames. */
@@ -2090,7 +2090,7 @@ typedef register_container RegDEVICETransmitMacMode_t {
/** @brief Padding */
BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, reserved_3_2, 2, 2)
/** @brief Used to be enable TDE in legacy-same purpose. */
- BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, EnableTCE, 1, 1)
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, EnableTDE, 1, 1)
/** @brief When this bit is set to 1, the Transmit MAC state machine will be reset. This is a self-clearing bit. */
BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, Reset, 0, 1)
#else
@@ -2110,8 +2110,8 @@ typedef register_container RegDEVICETransmitMacMode_t {
r32.setName("TransmitMacMode");
bits.Reset.setBaseRegister(&r32);
bits.Reset.setName("Reset");
- bits.EnableTCE.setBaseRegister(&r32);
- bits.EnableTCE.setName("EnableTCE");
+ bits.EnableTDE.setBaseRegister(&r32);
+ bits.EnableTDE.setName("EnableTDE");
bits.EnableFlowControl.setBaseRegister(&r32);
bits.EnableFlowControl.setName("EnableFlowControl");
bits.EnableBigBackoff.setBaseRegister(&r32);
@@ -2135,6 +2135,104 @@ typedef register_container RegDEVICETransmitMacMode_t {
#endif /* CXX_SIMULATOR */
} RegDEVICETransmitMacMode_t;
+#define REG_DEVICE_TRANSMIT_MAC_STATUS ((volatile APE_DEVICE_H_uint32_t*)0xa0040460) /* */
+#define DEVICE_TRANSMIT_MAC_STATUS_XOFFED_SHIFT 0u
+#define DEVICE_TRANSMIT_MAC_STATUS_XOFFED_MASK 0x1u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_XOFFED(__reg__) (((__reg__) & 0x1) >> 0u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_XOFFED(__val__) (((__val__) << 0u) & 0x1u)
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF_SHIFT 1u
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF_MASK 0x2u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF(__reg__) (((__reg__) & 0x2) >> 1u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF(__val__) (((__val__) << 1u) & 0x2u)
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XON_SHIFT 2u
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XON_MASK 0x4u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XON(__reg__) (((__reg__) & 0x4) >> 2u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XON(__val__) (((__val__) << 2u) & 0x4u)
+#define DEVICE_TRANSMIT_MAC_STATUS_LINK_UP_SHIFT 3u
+#define DEVICE_TRANSMIT_MAC_STATUS_LINK_UP_MASK 0x8u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_LINK_UP(__reg__) (((__reg__) & 0x8) >> 3u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_LINK_UP(__val__) (((__val__) << 3u) & 0x8u)
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN_SHIFT 4u
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN_MASK 0x10u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN(__reg__) (((__reg__) & 0x10) >> 4u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN(__val__) (((__val__) << 4u) & 0x10u)
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN_SHIFT 5u
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN_MASK 0x20u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN(__reg__) (((__reg__) & 0x20) >> 5u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN(__val__) (((__val__) << 5u) & 0x20u)
+
+/** @brief Register definition for @ref DEVICE_t.TransmitMacStatus. */
+typedef register_container RegDEVICETransmitMacStatus_t {
+ /** @brief 32bit direct register access. */
+ APE_DEVICE_H_uint32_t r32;
+
+ BITFIELD_BEGIN(APE_DEVICE_H_uint32_t, bits)
+#if defined(__LITTLE_ENDIAN__)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, XOFFED, 0, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, SentXOFF, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, SentXON, 2, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, LinkUp, 3, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, ODIUnderrun, 4, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, ODIOverrun, 5, 1)
+ /** @brief Padding */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, reserved_31_6, 6, 26)
+#elif defined(__BIG_ENDIAN__)
+ /** @brief Padding */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, reserved_31_6, 6, 26)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, ODIOverrun, 5, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, ODIUnderrun, 4, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, LinkUp, 3, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, SentXON, 2, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, SentXOFF, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, XOFFED, 0, 1)
+#else
+#error Unknown Endian
+#endif
+ BITFIELD_END(APE_DEVICE_H_uint32_t, bits)
+#ifdef CXX_SIMULATOR
+ /** @brief Register name for use with the simulator. */
+ const char* getName(void) { return "TransmitMacStatus"; }
+
+ /** @brief Print register value. */
+ void print(void) { r32.print(); }
+
+ RegDEVICETransmitMacStatus_t()
+ {
+ /** @brief constructor for @ref DEVICE_t.TransmitMacStatus. */
+ r32.setName("TransmitMacStatus");
+ bits.XOFFED.setBaseRegister(&r32);
+ bits.XOFFED.setName("XOFFED");
+ bits.SentXOFF.setBaseRegister(&r32);
+ bits.SentXOFF.setName("SentXOFF");
+ bits.SentXON.setBaseRegister(&r32);
+ bits.SentXON.setName("SentXON");
+ bits.LinkUp.setBaseRegister(&r32);
+ bits.LinkUp.setName("LinkUp");
+ bits.ODIUnderrun.setBaseRegister(&r32);
+ bits.ODIUnderrun.setName("ODIUnderrun");
+ bits.ODIOverrun.setBaseRegister(&r32);
+ bits.ODIOverrun.setName("ODIOverrun");
+ }
+ RegDEVICETransmitMacStatus_t& operator=(const RegDEVICETransmitMacStatus_t& other)
+ {
+ r32 = other.r32;
+ return *this;
+ }
+#endif /* CXX_SIMULATOR */
+} RegDEVICETransmitMacStatus_t;
+
#define REG_DEVICE_RECEIVE_MAC_MODE ((volatile APE_DEVICE_H_uint32_t*)0xa0040468) /* */
#define DEVICE_RECEIVE_MAC_MODE_RESET_SHIFT 0u
#define DEVICE_RECEIVE_MAC_MODE_RESET_MASK 0x1u
@@ -2221,6 +2319,74 @@ typedef register_container RegDEVICEReceiveMacMode_t {
#endif /* CXX_SIMULATOR */
} RegDEVICEReceiveMacMode_t;
+#define REG_DEVICE_RECEIVE_MAC_STATUS ((volatile APE_DEVICE_H_uint32_t*)0xa004046c) /* */
+#define DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED_SHIFT 0u
+#define DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED_MASK 0x1u
+#define GET_DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED(__reg__) (((__reg__) & 0x1) >> 0u)
+#define SET_DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED(__val__) (((__val__) << 0u) & 0x1u)
+#define DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED_SHIFT 1u
+#define DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED_MASK 0x2u
+#define GET_DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED(__reg__) (((__reg__) & 0x2) >> 1u)
+#define SET_DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED(__val__) (((__val__) << 1u) & 0x2u)
+#define DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED_SHIFT 2u
+#define DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED_MASK 0x4u
+#define GET_DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED(__reg__) (((__reg__) & 0x4) >> 2u)
+#define SET_DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED(__val__) (((__val__) << 2u) & 0x4u)
+
+/** @brief Register definition for @ref DEVICE_t.ReceiveMacStatus. */
+typedef register_container RegDEVICEReceiveMacStatus_t {
+ /** @brief 32bit direct register access. */
+ APE_DEVICE_H_uint32_t r32;
+
+ BITFIELD_BEGIN(APE_DEVICE_H_uint32_t, bits)
+#if defined(__LITTLE_ENDIAN__)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, RemoteTXXOFFED, 0, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, XOFFReceived, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, XONReceived, 2, 1)
+ /** @brief Padding */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, reserved_31_3, 3, 29)
+#elif defined(__BIG_ENDIAN__)
+ /** @brief Padding */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, reserved_31_3, 3, 29)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, XONReceived, 2, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, XOFFReceived, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(APE_DEVICE_H_uint32_t, RemoteTXXOFFED, 0, 1)
+#else
+#error Unknown Endian
+#endif
+ BITFIELD_END(APE_DEVICE_H_uint32_t, bits)
+#ifdef CXX_SIMULATOR
+ /** @brief Register name for use with the simulator. */
+ const char* getName(void) { return "ReceiveMacStatus"; }
+
+ /** @brief Print register value. */
+ void print(void) { r32.print(); }
+
+ RegDEVICEReceiveMacStatus_t()
+ {
+ /** @brief constructor for @ref DEVICE_t.ReceiveMacStatus. */
+ r32.setName("ReceiveMacStatus");
+ bits.RemoteTXXOFFED.setBaseRegister(&r32);
+ bits.RemoteTXXOFFED.setName("RemoteTXXOFFED");
+ bits.XOFFReceived.setBaseRegister(&r32);
+ bits.XOFFReceived.setName("XOFFReceived");
+ bits.XONReceived.setBaseRegister(&r32);
+ bits.XONReceived.setName("XONReceived");
+ }
+ RegDEVICEReceiveMacStatus_t& operator=(const RegDEVICEReceiveMacStatus_t& other)
+ {
+ r32 = other.r32;
+ return *this;
+ }
+#endif /* CXX_SIMULATOR */
+} RegDEVICEReceiveMacStatus_t;
+
#define REG_DEVICE_PERFECT_MATCH1_HIGH ((volatile APE_DEVICE_H_uint32_t*)0xa0040540) /* */
#define DEVICE_PERFECT_MATCH1_HIGH_HIGH_SHIFT 0u
#define DEVICE_PERFECT_MATCH1_HIGH_HIGH_MASK 0xffffu
@@ -7731,14 +7897,20 @@ typedef struct DEVICE_t {
/** @brief */
RegDEVICETransmitMacMode_t TransmitMacMode;
+ /** @brief */
+ RegDEVICETransmitMacStatus_t TransmitMacStatus;
+
/** @brief Reserved bytes to pad out data structure. */
- APE_DEVICE_H_uint32_t reserved_1120[2];
+ APE_DEVICE_H_uint32_t reserved_1124[1];
/** @brief */
RegDEVICEReceiveMacMode_t ReceiveMacMode;
+ /** @brief */
+ RegDEVICEReceiveMacStatus_t ReceiveMacStatus;
+
/** @brief Reserved bytes to pad out data structure. */
- APE_DEVICE_H_uint32_t reserved_1132[53];
+ APE_DEVICE_H_uint32_t reserved_1136[52];
/** @brief */
RegDEVICEPerfectMatch1High_t PerfectMatch1High;
@@ -8188,7 +8360,9 @@ typedef struct DEVICE_t {
MiiCommunication.r32.setComponentOffset(0x44c);
MiiMode.r32.setComponentOffset(0x454);
TransmitMacMode.r32.setComponentOffset(0x45c);
+ TransmitMacStatus.r32.setComponentOffset(0x460);
ReceiveMacMode.r32.setComponentOffset(0x468);
+ ReceiveMacStatus.r32.setComponentOffset(0x46c);
PerfectMatch1High.r32.setComponentOffset(0x540);
PerfectMatch1Low.r32.setComponentOffset(0x544);
PerfectMatch2High.r32.setComponentOffset(0x548);
@@ -8366,14 +8540,16 @@ typedef struct DEVICE_t {
reserved_1112[i].print();
}
TransmitMacMode.print();
- for(int i = 0; i < 2; i++)
+ TransmitMacStatus.print();
+ for(int i = 0; i < 1; i++)
{
- reserved_1120[i].print();
+ reserved_1124[i].print();
}
ReceiveMacMode.print();
- for(int i = 0; i < 53; i++)
+ ReceiveMacStatus.print();
+ for(int i = 0; i < 52; i++)
{
- reserved_1132[i].print();
+ reserved_1136[i].print();
}
PerfectMatch1High.print();
PerfectMatch1Low.print();
diff --git a/include/APE_DEVICE1.h b/include/APE_DEVICE1.h
index a7e1e0e..3a215e6 100644
--- a/include/APE_DEVICE1.h
+++ b/include/APE_DEVICE1.h
@@ -110,7 +110,9 @@ typedef uint32_t APE_DEVICE1_H_uint32_t;
#define REG_DEVICE1_MII_COMMUNICATION ((volatile APE_DEVICE1_H_uint32_t*)0xa005044c) /* */
#define REG_DEVICE1_MII_MODE ((volatile APE_DEVICE1_H_uint32_t*)0xa0050454) /* */
#define REG_DEVICE1_TRANSMIT_MAC_MODE ((volatile APE_DEVICE1_H_uint32_t*)0xa005045c) /* */
+#define REG_DEVICE1_TRANSMIT_MAC_STATUS ((volatile APE_DEVICE1_H_uint32_t*)0xa0050460) /* */
#define REG_DEVICE1_RECEIVE_MAC_MODE ((volatile APE_DEVICE1_H_uint32_t*)0xa0050468) /* */
+#define REG_DEVICE1_RECEIVE_MAC_STATUS ((volatile APE_DEVICE1_H_uint32_t*)0xa005046c) /* */
#define REG_DEVICE1_PERFECT_MATCH1_HIGH ((volatile APE_DEVICE1_H_uint32_t*)0xa0050540) /* */
#define REG_DEVICE1_PERFECT_MATCH1_LOW ((volatile APE_DEVICE1_H_uint32_t*)0xa0050544) /* */
#define REG_DEVICE1_PERFECT_MATCH2_HIGH ((volatile APE_DEVICE1_H_uint32_t*)0xa0050548) /* */
diff --git a/include/APE_DEVICE2.h b/include/APE_DEVICE2.h
index 89261a7..11427d5 100644
--- a/include/APE_DEVICE2.h
+++ b/include/APE_DEVICE2.h
@@ -110,7 +110,9 @@ typedef uint32_t APE_DEVICE2_H_uint32_t;
#define REG_DEVICE2_MII_COMMUNICATION ((volatile APE_DEVICE2_H_uint32_t*)0xa006044c) /* */
#define REG_DEVICE2_MII_MODE ((volatile APE_DEVICE2_H_uint32_t*)0xa0060454) /* */
#define REG_DEVICE2_TRANSMIT_MAC_MODE ((volatile APE_DEVICE2_H_uint32_t*)0xa006045c) /* */
+#define REG_DEVICE2_TRANSMIT_MAC_STATUS ((volatile APE_DEVICE2_H_uint32_t*)0xa0060460) /* */
#define REG_DEVICE2_RECEIVE_MAC_MODE ((volatile APE_DEVICE2_H_uint32_t*)0xa0060468) /* */
+#define REG_DEVICE2_RECEIVE_MAC_STATUS ((volatile APE_DEVICE2_H_uint32_t*)0xa006046c) /* */
#define REG_DEVICE2_PERFECT_MATCH1_HIGH ((volatile APE_DEVICE2_H_uint32_t*)0xa0060540) /* */
#define REG_DEVICE2_PERFECT_MATCH1_LOW ((volatile APE_DEVICE2_H_uint32_t*)0xa0060544) /* */
#define REG_DEVICE2_PERFECT_MATCH2_HIGH ((volatile APE_DEVICE2_H_uint32_t*)0xa0060548) /* */
diff --git a/include/APE_DEVICE3.h b/include/APE_DEVICE3.h
index 01420be..d72bf50 100644
--- a/include/APE_DEVICE3.h
+++ b/include/APE_DEVICE3.h
@@ -110,7 +110,9 @@ typedef uint32_t APE_DEVICE3_H_uint32_t;
#define REG_DEVICE3_MII_COMMUNICATION ((volatile APE_DEVICE3_H_uint32_t*)0xa007044c) /* */
#define REG_DEVICE3_MII_MODE ((volatile APE_DEVICE3_H_uint32_t*)0xa0070454) /* */
#define REG_DEVICE3_TRANSMIT_MAC_MODE ((volatile APE_DEVICE3_H_uint32_t*)0xa007045c) /* */
+#define REG_DEVICE3_TRANSMIT_MAC_STATUS ((volatile APE_DEVICE3_H_uint32_t*)0xa0070460) /* */
#define REG_DEVICE3_RECEIVE_MAC_MODE ((volatile APE_DEVICE3_H_uint32_t*)0xa0070468) /* */
+#define REG_DEVICE3_RECEIVE_MAC_STATUS ((volatile APE_DEVICE3_H_uint32_t*)0xa007046c) /* */
#define REG_DEVICE3_PERFECT_MATCH1_HIGH ((volatile APE_DEVICE3_H_uint32_t*)0xa0070540) /* */
#define REG_DEVICE3_PERFECT_MATCH1_LOW ((volatile APE_DEVICE3_H_uint32_t*)0xa0070544) /* */
#define REG_DEVICE3_PERFECT_MATCH2_HIGH ((volatile APE_DEVICE3_H_uint32_t*)0xa0070548) /* */
diff --git a/include/bcm5719_DEVICE.h b/include/bcm5719_DEVICE.h
index 9d51b53..52b6908 100644
--- a/include/bcm5719_DEVICE.h
+++ b/include/bcm5719_DEVICE.h
@@ -2008,10 +2008,10 @@ typedef register_container RegDEVICEMiiMode_t {
#define DEVICE_TRANSMIT_MAC_MODE_RESET_MASK 0x1u
#define GET_DEVICE_TRANSMIT_MAC_MODE_RESET(__reg__) (((__reg__) & 0x1) >> 0u)
#define SET_DEVICE_TRANSMIT_MAC_MODE_RESET(__val__) (((__val__) << 0u) & 0x1u)
-#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE_SHIFT 1u
-#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE_MASK 0x2u
-#define GET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE(__reg__) (((__reg__) & 0x2) >> 1u)
-#define SET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TCE(__val__) (((__val__) << 1u) & 0x2u)
+#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE_SHIFT 1u
+#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE_MASK 0x2u
+#define GET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE(__reg__) (((__reg__) & 0x2) >> 1u)
+#define SET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_TDE(__val__) (((__val__) << 1u) & 0x2u)
#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_FLOW_CONTROL_SHIFT 4u
#define DEVICE_TRANSMIT_MAC_MODE_ENABLE_FLOW_CONTROL_MASK 0x10u
#define GET_DEVICE_TRANSMIT_MAC_MODE_ENABLE_FLOW_CONTROL(__reg__) (((__reg__) & 0x10) >> 4u)
@@ -2051,7 +2051,7 @@ typedef register_container RegDEVICETransmitMacMode_t {
/** @brief When this bit is set to 1, the Transmit MAC state machine will be reset. This is a self-clearing bit. */
BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, Reset, 0, 1)
/** @brief Used to be enable TDE in legacy-same purpose. */
- BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, EnableTCE, 1, 1)
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, EnableTDE, 1, 1)
/** @brief Padding */
BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, reserved_3_2, 2, 2)
/** @brief MAC will send 802.3x flow control frames. */
@@ -2090,7 +2090,7 @@ typedef register_container RegDEVICETransmitMacMode_t {
/** @brief Padding */
BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, reserved_3_2, 2, 2)
/** @brief Used to be enable TDE in legacy-same purpose. */
- BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, EnableTCE, 1, 1)
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, EnableTDE, 1, 1)
/** @brief When this bit is set to 1, the Transmit MAC state machine will be reset. This is a self-clearing bit. */
BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, Reset, 0, 1)
#else
@@ -2110,8 +2110,8 @@ typedef register_container RegDEVICETransmitMacMode_t {
r32.setName("TransmitMacMode");
bits.Reset.setBaseRegister(&r32);
bits.Reset.setName("Reset");
- bits.EnableTCE.setBaseRegister(&r32);
- bits.EnableTCE.setName("EnableTCE");
+ bits.EnableTDE.setBaseRegister(&r32);
+ bits.EnableTDE.setName("EnableTDE");
bits.EnableFlowControl.setBaseRegister(&r32);
bits.EnableFlowControl.setName("EnableFlowControl");
bits.EnableBigBackoff.setBaseRegister(&r32);
@@ -2135,6 +2135,104 @@ typedef register_container RegDEVICETransmitMacMode_t {
#endif /* CXX_SIMULATOR */
} RegDEVICETransmitMacMode_t;
+#define REG_DEVICE_TRANSMIT_MAC_STATUS ((volatile BCM5719_DEVICE_H_uint32_t*)0xc0000460) /* */
+#define DEVICE_TRANSMIT_MAC_STATUS_XOFFED_SHIFT 0u
+#define DEVICE_TRANSMIT_MAC_STATUS_XOFFED_MASK 0x1u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_XOFFED(__reg__) (((__reg__) & 0x1) >> 0u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_XOFFED(__val__) (((__val__) << 0u) & 0x1u)
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF_SHIFT 1u
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF_MASK 0x2u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF(__reg__) (((__reg__) & 0x2) >> 1u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XOFF(__val__) (((__val__) << 1u) & 0x2u)
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XON_SHIFT 2u
+#define DEVICE_TRANSMIT_MAC_STATUS_SENT_XON_MASK 0x4u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XON(__reg__) (((__reg__) & 0x4) >> 2u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_SENT_XON(__val__) (((__val__) << 2u) & 0x4u)
+#define DEVICE_TRANSMIT_MAC_STATUS_LINK_UP_SHIFT 3u
+#define DEVICE_TRANSMIT_MAC_STATUS_LINK_UP_MASK 0x8u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_LINK_UP(__reg__) (((__reg__) & 0x8) >> 3u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_LINK_UP(__val__) (((__val__) << 3u) & 0x8u)
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN_SHIFT 4u
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN_MASK 0x10u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN(__reg__) (((__reg__) & 0x10) >> 4u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_ODI_UNDERRUN(__val__) (((__val__) << 4u) & 0x10u)
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN_SHIFT 5u
+#define DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN_MASK 0x20u
+#define GET_DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN(__reg__) (((__reg__) & 0x20) >> 5u)
+#define SET_DEVICE_TRANSMIT_MAC_STATUS_ODI_OVERRUN(__val__) (((__val__) << 5u) & 0x20u)
+
+/** @brief Register definition for @ref DEVICE_t.TransmitMacStatus. */
+typedef register_container RegDEVICETransmitMacStatus_t {
+ /** @brief 32bit direct register access. */
+ BCM5719_DEVICE_H_uint32_t r32;
+
+ BITFIELD_BEGIN(BCM5719_DEVICE_H_uint32_t, bits)
+#if defined(__LITTLE_ENDIAN__)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, XOFFED, 0, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, SentXOFF, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, SentXON, 2, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, LinkUp, 3, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, ODIUnderrun, 4, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, ODIOverrun, 5, 1)
+ /** @brief Padding */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, reserved_31_6, 6, 26)
+#elif defined(__BIG_ENDIAN__)
+ /** @brief Padding */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, reserved_31_6, 6, 26)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, ODIOverrun, 5, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, ODIUnderrun, 4, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, LinkUp, 3, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, SentXON, 2, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, SentXOFF, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, XOFFED, 0, 1)
+#else
+#error Unknown Endian
+#endif
+ BITFIELD_END(BCM5719_DEVICE_H_uint32_t, bits)
+#ifdef CXX_SIMULATOR
+ /** @brief Register name for use with the simulator. */
+ const char* getName(void) { return "TransmitMacStatus"; }
+
+ /** @brief Print register value. */
+ void print(void) { r32.print(); }
+
+ RegDEVICETransmitMacStatus_t()
+ {
+ /** @brief constructor for @ref DEVICE_t.TransmitMacStatus. */
+ r32.setName("TransmitMacStatus");
+ bits.XOFFED.setBaseRegister(&r32);
+ bits.XOFFED.setName("XOFFED");
+ bits.SentXOFF.setBaseRegister(&r32);
+ bits.SentXOFF.setName("SentXOFF");
+ bits.SentXON.setBaseRegister(&r32);
+ bits.SentXON.setName("SentXON");
+ bits.LinkUp.setBaseRegister(&r32);
+ bits.LinkUp.setName("LinkUp");
+ bits.ODIUnderrun.setBaseRegister(&r32);
+ bits.ODIUnderrun.setName("ODIUnderrun");
+ bits.ODIOverrun.setBaseRegister(&r32);
+ bits.ODIOverrun.setName("ODIOverrun");
+ }
+ RegDEVICETransmitMacStatus_t& operator=(const RegDEVICETransmitMacStatus_t& other)
+ {
+ r32 = other.r32;
+ return *this;
+ }
+#endif /* CXX_SIMULATOR */
+} RegDEVICETransmitMacStatus_t;
+
#define REG_DEVICE_RECEIVE_MAC_MODE ((volatile BCM5719_DEVICE_H_uint32_t*)0xc0000468) /* */
#define DEVICE_RECEIVE_MAC_MODE_RESET_SHIFT 0u
#define DEVICE_RECEIVE_MAC_MODE_RESET_MASK 0x1u
@@ -2221,6 +2319,74 @@ typedef register_container RegDEVICEReceiveMacMode_t {
#endif /* CXX_SIMULATOR */
} RegDEVICEReceiveMacMode_t;
+#define REG_DEVICE_RECEIVE_MAC_STATUS ((volatile BCM5719_DEVICE_H_uint32_t*)0xc000046c) /* */
+#define DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED_SHIFT 0u
+#define DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED_MASK 0x1u
+#define GET_DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED(__reg__) (((__reg__) & 0x1) >> 0u)
+#define SET_DEVICE_RECEIVE_MAC_STATUS_REMOTE_TX_XOFFED(__val__) (((__val__) << 0u) & 0x1u)
+#define DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED_SHIFT 1u
+#define DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED_MASK 0x2u
+#define GET_DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED(__reg__) (((__reg__) & 0x2) >> 1u)
+#define SET_DEVICE_RECEIVE_MAC_STATUS_XOFF_RECEIVED(__val__) (((__val__) << 1u) & 0x2u)
+#define DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED_SHIFT 2u
+#define DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED_MASK 0x4u
+#define GET_DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED(__reg__) (((__reg__) & 0x4) >> 2u)
+#define SET_DEVICE_RECEIVE_MAC_STATUS_XON_RECEIVED(__val__) (((__val__) << 2u) & 0x4u)
+
+/** @brief Register definition for @ref DEVICE_t.ReceiveMacStatus. */
+typedef register_container RegDEVICEReceiveMacStatus_t {
+ /** @brief 32bit direct register access. */
+ BCM5719_DEVICE_H_uint32_t r32;
+
+ BITFIELD_BEGIN(BCM5719_DEVICE_H_uint32_t, bits)
+#if defined(__LITTLE_ENDIAN__)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, RemoteTXXOFFED, 0, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, XOFFReceived, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, XONReceived, 2, 1)
+ /** @brief Padding */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, reserved_31_3, 3, 29)
+#elif defined(__BIG_ENDIAN__)
+ /** @brief Padding */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, reserved_31_3, 3, 29)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, XONReceived, 2, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, XOFFReceived, 1, 1)
+ /** @brief */
+ BITFIELD_MEMBER(BCM5719_DEVICE_H_uint32_t, RemoteTXXOFFED, 0, 1)
+#else
+#error Unknown Endian
+#endif
+ BITFIELD_END(BCM5719_DEVICE_H_uint32_t, bits)
+#ifdef CXX_SIMULATOR
+ /** @brief Register name for use with the simulator. */
+ const char* getName(void) { return "ReceiveMacStatus"; }
+
+ /** @brief Print register value. */
+ void print(void) { r32.print(); }
+
+ RegDEVICEReceiveMacStatus_t()
+ {
+ /** @brief constructor for @ref DEVICE_t.ReceiveMacStatus. */
+ r32.setName("ReceiveMacStatus");
+ bits.RemoteTXXOFFED.setBaseRegister(&r32);
+ bits.RemoteTXXOFFED.setName("RemoteTXXOFFED");
+ bits.XOFFReceived.setBaseRegister(&r32);
+ bits.XOFFReceived.setName("XOFFReceived");
+ bits.XONReceived.setBaseRegister(&r32);
+ bits.XONReceived.setName("XONReceived");
+ }
+ RegDEVICEReceiveMacStatus_t& operator=(const RegDEVICEReceiveMacStatus_t& other)
+ {
+ r32 = other.r32;
+ return *this;
+ }
+#endif /* CXX_SIMULATOR */
+} RegDEVICEReceiveMacStatus_t;
+
#define REG_DEVICE_PERFECT_MATCH1_HIGH ((volatile BCM5719_DEVICE_H_uint32_t*)0xc0000540) /* */
#define DEVICE_PERFECT_MATCH1_HIGH_HIGH_SHIFT 0u
#define DEVICE_PERFECT_MATCH1_HIGH_HIGH_MASK 0xffffu
@@ -7731,14 +7897,20 @@ typedef struct DEVICE_t {
/** @brief */
RegDEVICETransmitMacMode_t TransmitMacMode;
+ /** @brief */
+ RegDEVICETransmitMacStatus_t TransmitMacStatus;
+
/** @brief Reserved bytes to pad out data structure. */
- BCM5719_DEVICE_H_uint32_t reserved_1120[2];
+ BCM5719_DEVICE_H_uint32_t reserved_1124[1];
/** @brief */
RegDEVICEReceiveMacMode_t ReceiveMacMode;
+ /** @brief */
+ RegDEVICEReceiveMacStatus_t ReceiveMacStatus;
+
/** @brief Reserved bytes to pad out data structure. */
- BCM5719_DEVICE_H_uint32_t reserved_1132[53];
+ BCM5719_DEVICE_H_uint32_t reserved_1136[52];
/** @brief */
RegDEVICEPerfectMatch1High_t PerfectMatch1High;
@@ -8188,7 +8360,9 @@ typedef struct DEVICE_t {
MiiCommunication.r32.setComponentOffset(0x44c);
MiiMode.r32.setComponentOffset(0x454);
TransmitMacMode.r32.setComponentOffset(0x45c);
+ TransmitMacStatus.r32.setComponentOffset(0x460);
ReceiveMacMode.r32.setComponentOffset(0x468);
+ ReceiveMacStatus.r32.setComponentOffset(0x46c);
PerfectMatch1High.r32.setComponentOffset(0x540);
PerfectMatch1Low.r32.setComponentOffset(0x544);
PerfectMatch2High.r32.setComponentOffset(0x548);
@@ -8366,14 +8540,16 @@ typedef struct DEVICE_t {
reserved_1112[i].print();
}
TransmitMacMode.print();
- for(int i = 0; i < 2; i++)
+ TransmitMacStatus.print();
+ for(int i = 0; i < 1; i++)
{
- reserved_1120[i].print();
+ reserved_1124[i].print();
}
ReceiveMacMode.print();
- for(int i = 0; i < 53; i++)
+ ReceiveMacStatus.print();
+ for(int i = 0; i < 52; i++)
{
- reserved_1132[i].print();
+ reserved_1136[i].print();
}
PerfectMatch1High.print();
PerfectMatch1Low.print();
diff --git a/ipxact/DEVICE.xml b/ipxact/DEVICE.xml
index 36dbc67..be5f4ad 100644
--- a/ipxact/DEVICE.xml
+++ b/ipxact/DEVICE.xml
@@ -1115,7 +1115,7 @@
<ipxact:access>read-write</ipxact:access>
</ipxact:field>
<ipxact:field>
- <ipxact:name>Enable TCE</ipxact:name>
+ <ipxact:name>Enable TDE</ipxact:name>
<ipxact:description>Used to be enable TDE in legacy-same purpose.</ipxact:description>
<ipxact:bitOffset>1</ipxact:bitOffset>
<ipxact:bitWidth>1</ipxact:bitWidth>
@@ -1172,6 +1172,56 @@
</ipxact:field>
</ipxact:register>
<ipxact:register>
+ <ipxact:name>TRANSMIT_MAC_STATUS</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:addressOffset>0x460</ipxact:addressOffset>
+ <!-- LINK: registerDefinitionGroup: see 6.11.3, Register definition group -->
+ <ipxact:size>32</ipxact:size>
+ <ipxact:volatile>true</ipxact:volatile>
+ <ipxact:field>
+ <ipxact:name>XOFFED</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>0</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>Sent XOFF</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>1</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>Sent XON</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>2</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>Link Up</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>3</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>ODI Underrun</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>4</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>ODI Overrun</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>5</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ </ipxact:register>
+ <ipxact:register>
<ipxact:name>RECEIVE_MAC_MODE</ipxact:name>
<ipxact:description></ipxact:description>
<ipxact:addressOffset>0x468</ipxact:addressOffset>
@@ -1208,6 +1258,35 @@
</ipxact:field>
</ipxact:register>
<ipxact:register>
+ <ipxact:name>RECEIVE_MAC_STATUS</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:addressOffset>0x46c</ipxact:addressOffset>
+ <!-- LINK: registerDefinitionGroup: see 6.11.3, Register definition group -->
+ <ipxact:size>32</ipxact:size>
+ <ipxact:volatile>true</ipxact:volatile>
+ <ipxact:field>
+ <ipxact:name>Remote TX XOFFED</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>0</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>XOFF Received</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>1</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ <ipxact:field>
+ <ipxact:name>XON Received</ipxact:name>
+ <ipxact:description></ipxact:description>
+ <ipxact:bitOffset>2</ipxact:bitOffset>
+ <ipxact:bitWidth>1</ipxact:bitWidth>
+ <ipxact:access>read-write</ipxact:access>
+ </ipxact:field>
+ </ipxact:register>
+ <ipxact:register>
<ipxact:name>PERFECT_MATCH1_HIGH</ipxact:name>
<ipxact:description></ipxact:description>
<ipxact:addressOffset>0x540</ipxact:addressOffset>
diff --git a/simulator/APE_DEVICE.cpp b/simulator/APE_DEVICE.cpp
index c5262a6..84a2c69 100644
--- a/simulator/APE_DEVICE.cpp
+++ b/simulator/APE_DEVICE.cpp
@@ -105,8 +105,12 @@ void init_APE_DEVICE(void)
/** @brief Bitmap for @ref DEVICE_t.TransmitMacMode. */
+ /** @brief Bitmap for @ref DEVICE_t.TransmitMacStatus. */
+
/** @brief Bitmap for @ref DEVICE_t.ReceiveMacMode. */
+ /** @brief Bitmap for @ref DEVICE_t.ReceiveMacStatus. */
+
/** @brief Bitmap for @ref DEVICE_t.PerfectMatch1High. */
/** @brief Bitmap for @ref DEVICE_t.PerfectMatch1Low. */
diff --git a/simulator/APE_DEVICE1.cpp b/simulator/APE_DEVICE1.cpp
index b8c591c..bf0e02f 100644
--- a/simulator/APE_DEVICE1.cpp
+++ b/simulator/APE_DEVICE1.cpp
@@ -105,8 +105,12 @@ void init_APE_DEVICE1(void)
/** @brief Bitmap for @ref DEVICE1_t.TransmitMacMode. */
+ /** @brief Bitmap for @ref DEVICE1_t.TransmitMacStatus. */
+
/** @brief Bitmap for @ref DEVICE1_t.ReceiveMacMode. */
+ /** @brief Bitmap for @ref DEVICE1_t.ReceiveMacStatus. */
+
/** @brief Bitmap for @ref DEVICE1_t.PerfectMatch1High. */
/** @brief Bitmap for @ref DEVICE1_t.PerfectMatch1Low. */
diff --git a/simulator/APE_DEVICE1_sim.cpp b/simulator/APE_DEVICE1_sim.cpp
index 7e8f2ee..af1193a 100644
--- a/simulator/APE_DEVICE1_sim.cpp
+++ b/simulator/APE_DEVICE1_sim.cpp
@@ -200,10 +200,18 @@ void init_APE_DEVICE1_sim(void *arg0)
DEVICE1.TransmitMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE1.TransmitMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE1_t.TransmitMacStatus. */
+ DEVICE1.TransmitMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE1.TransmitMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE1_t.ReceiveMacMode. */
DEVICE1.ReceiveMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE1.ReceiveMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE1_t.ReceiveMacStatus. */
+ DEVICE1.ReceiveMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE1.ReceiveMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE1_t.PerfectMatch1High. */
DEVICE1.PerfectMatch1High.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE1.PerfectMatch1High.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
diff --git a/simulator/APE_DEVICE2.cpp b/simulator/APE_DEVICE2.cpp
index 77322d0..df1b149 100644
--- a/simulator/APE_DEVICE2.cpp
+++ b/simulator/APE_DEVICE2.cpp
@@ -105,8 +105,12 @@ void init_APE_DEVICE2(void)
/** @brief Bitmap for @ref DEVICE2_t.TransmitMacMode. */
+ /** @brief Bitmap for @ref DEVICE2_t.TransmitMacStatus. */
+
/** @brief Bitmap for @ref DEVICE2_t.ReceiveMacMode. */
+ /** @brief Bitmap for @ref DEVICE2_t.ReceiveMacStatus. */
+
/** @brief Bitmap for @ref DEVICE2_t.PerfectMatch1High. */
/** @brief Bitmap for @ref DEVICE2_t.PerfectMatch1Low. */
diff --git a/simulator/APE_DEVICE2_sim.cpp b/simulator/APE_DEVICE2_sim.cpp
index b2ff414..0222d7a 100644
--- a/simulator/APE_DEVICE2_sim.cpp
+++ b/simulator/APE_DEVICE2_sim.cpp
@@ -200,10 +200,18 @@ void init_APE_DEVICE2_sim(void *arg0)
DEVICE2.TransmitMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE2.TransmitMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE2_t.TransmitMacStatus. */
+ DEVICE2.TransmitMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE2.TransmitMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE2_t.ReceiveMacMode. */
DEVICE2.ReceiveMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE2.ReceiveMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE2_t.ReceiveMacStatus. */
+ DEVICE2.ReceiveMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE2.ReceiveMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE2_t.PerfectMatch1High. */
DEVICE2.PerfectMatch1High.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE2.PerfectMatch1High.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
diff --git a/simulator/APE_DEVICE3.cpp b/simulator/APE_DEVICE3.cpp
index a8cb69e..c4870f0 100644
--- a/simulator/APE_DEVICE3.cpp
+++ b/simulator/APE_DEVICE3.cpp
@@ -105,8 +105,12 @@ void init_APE_DEVICE3(void)
/** @brief Bitmap for @ref DEVICE3_t.TransmitMacMode. */
+ /** @brief Bitmap for @ref DEVICE3_t.TransmitMacStatus. */
+
/** @brief Bitmap for @ref DEVICE3_t.ReceiveMacMode. */
+ /** @brief Bitmap for @ref DEVICE3_t.ReceiveMacStatus. */
+
/** @brief Bitmap for @ref DEVICE3_t.PerfectMatch1High. */
/** @brief Bitmap for @ref DEVICE3_t.PerfectMatch1Low. */
diff --git a/simulator/APE_DEVICE3_sim.cpp b/simulator/APE_DEVICE3_sim.cpp
index 51d6fde..730e6cb 100644
--- a/simulator/APE_DEVICE3_sim.cpp
+++ b/simulator/APE_DEVICE3_sim.cpp
@@ -200,10 +200,18 @@ void init_APE_DEVICE3_sim(void *arg0)
DEVICE3.TransmitMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE3.TransmitMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE3_t.TransmitMacStatus. */
+ DEVICE3.TransmitMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE3.TransmitMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE3_t.ReceiveMacMode. */
DEVICE3.ReceiveMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE3.ReceiveMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE3_t.ReceiveMacStatus. */
+ DEVICE3.ReceiveMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE3.ReceiveMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE3_t.PerfectMatch1High. */
DEVICE3.PerfectMatch1High.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE3.PerfectMatch1High.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
diff --git a/simulator/APE_DEVICE_sim.cpp b/simulator/APE_DEVICE_sim.cpp
index 9611835..222fab7 100644
--- a/simulator/APE_DEVICE_sim.cpp
+++ b/simulator/APE_DEVICE_sim.cpp
@@ -200,10 +200,18 @@ void init_APE_DEVICE_sim(void *arg0)
DEVICE.TransmitMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE.TransmitMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE_t.TransmitMacStatus. */
+ DEVICE.TransmitMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE.TransmitMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE_t.ReceiveMacMode. */
DEVICE.ReceiveMacMode.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE.ReceiveMacMode.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE_t.ReceiveMacStatus. */
+ DEVICE.ReceiveMacStatus.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
+ DEVICE.ReceiveMacStatus.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE_t.PerfectMatch1High. */
DEVICE.PerfectMatch1High.r32.installReadCallback(loader_read_mem, (uint8_t *)base);
DEVICE.PerfectMatch1High.r32.installWriteCallback(loader_write_mem, (uint8_t *)base);
diff --git a/simulator/bcm5719_DEVICE.cpp b/simulator/bcm5719_DEVICE.cpp
index 84c7420..abb874c 100644
--- a/simulator/bcm5719_DEVICE.cpp
+++ b/simulator/bcm5719_DEVICE.cpp
@@ -105,8 +105,12 @@ void init_bcm5719_DEVICE(void)
/** @brief Bitmap for @ref DEVICE_t.TransmitMacMode. */
+ /** @brief Bitmap for @ref DEVICE_t.TransmitMacStatus. */
+
/** @brief Bitmap for @ref DEVICE_t.ReceiveMacMode. */
+ /** @brief Bitmap for @ref DEVICE_t.ReceiveMacStatus. */
+
/** @brief Bitmap for @ref DEVICE_t.PerfectMatch1High. */
/** @brief Bitmap for @ref DEVICE_t.PerfectMatch1Low. */
diff --git a/simulator/bcm5719_DEVICE_sim.cpp b/simulator/bcm5719_DEVICE_sim.cpp
index a82ef72..cca058e 100644
--- a/simulator/bcm5719_DEVICE_sim.cpp
+++ b/simulator/bcm5719_DEVICE_sim.cpp
@@ -193,10 +193,18 @@ void init_bcm5719_DEVICE_sim(void *base)
DEVICE.TransmitMacMode.r32.installReadCallback(read_from_ram, (uint8_t *)base);
DEVICE.TransmitMacMode.r32.installWriteCallback(write_to_ram, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE_t.TransmitMacStatus. */
+ DEVICE.TransmitMacStatus.r32.installReadCallback(read_from_ram, (uint8_t *)base);
+ DEVICE.TransmitMacStatus.r32.installWriteCallback(write_to_ram, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE_t.ReceiveMacMode. */
DEVICE.ReceiveMacMode.r32.installReadCallback(read_from_ram, (uint8_t *)base);
DEVICE.ReceiveMacMode.r32.installWriteCallback(write_to_ram, (uint8_t *)base);
+ /** @brief Bitmap for @ref DEVICE_t.ReceiveMacStatus. */
+ DEVICE.ReceiveMacStatus.r32.installReadCallback(read_from_ram, (uint8_t *)base);
+ DEVICE.ReceiveMacStatus.r32.installWriteCallback(write_to_ram, (uint8_t *)base);
+
/** @brief Bitmap for @ref DEVICE_t.PerfectMatch1High. */
DEVICE.PerfectMatch1High.r32.installReadCallback(read_from_ram, (uint8_t *)base);
DEVICE.PerfectMatch1High.r32.installWriteCallback(write_to_ram, (uint8_t *)base);
OpenPOWER on IntegriCloud