diff options
-rw-r--r-- | include/APE_DEVICE.h | 204 | ||||
-rw-r--r-- | include/APE_DEVICE1.h | 2 | ||||
-rw-r--r-- | include/APE_DEVICE2.h | 2 | ||||
-rw-r--r-- | include/APE_DEVICE3.h | 2 | ||||
-rw-r--r-- | include/bcm5719_DEVICE.h | 204 | ||||
-rw-r--r-- | ipxact/DEVICE.xml | 81 | ||||
-rw-r--r-- | simulator/APE_DEVICE.cpp | 4 | ||||
-rw-r--r-- | simulator/APE_DEVICE1.cpp | 4 | ||||
-rw-r--r-- | simulator/APE_DEVICE1_sim.cpp | 8 | ||||
-rw-r--r-- | simulator/APE_DEVICE2.cpp | 4 | ||||
-rw-r--r-- | simulator/APE_DEVICE2_sim.cpp | 8 | ||||
-rw-r--r-- | simulator/APE_DEVICE3.cpp | 4 | ||||
-rw-r--r-- | simulator/APE_DEVICE3_sim.cpp | 8 | ||||
-rw-r--r-- | simulator/APE_DEVICE_sim.cpp | 8 | ||||
-rw-r--r-- | simulator/bcm5719_DEVICE.cpp | 4 | ||||
-rw-r--r-- | simulator/bcm5719_DEVICE_sim.cpp | 8 |
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); |