39 #ifndef __STM32F7xx_HAL_ETH_H 40 #define __STM32F7xx_HAL_ETH_H 60 #define IS_ETH_PHY_ADDRESS(ADDRESS) ((ADDRESS) <= 0x20) 61 #define IS_ETH_AUTONEGOTIATION(CMD) (((CMD) == ETH_AUTONEGOTIATION_ENABLE) || \ 62 ((CMD) == ETH_AUTONEGOTIATION_DISABLE)) 63 #define IS_ETH_SPEED(SPEED) (((SPEED) == ETH_SPEED_10M) || \ 64 ((SPEED) == ETH_SPEED_100M)) 65 #define IS_ETH_DUPLEX_MODE(MODE) (((MODE) == ETH_MODE_FULLDUPLEX) || \ 66 ((MODE) == ETH_MODE_HALFDUPLEX)) 67 #define IS_ETH_RX_MODE(MODE) (((MODE) == ETH_RXPOLLING_MODE) || \ 68 ((MODE) == ETH_RXINTERRUPT_MODE)) 69 #define IS_ETH_CHECKSUM_MODE(MODE) (((MODE) == ETH_CHECKSUM_BY_HARDWARE) || \ 70 ((MODE) == ETH_CHECKSUM_BY_SOFTWARE)) 71 #define IS_ETH_MEDIA_INTERFACE(MODE) (((MODE) == ETH_MEDIA_INTERFACE_MII) || \ 72 ((MODE) == ETH_MEDIA_INTERFACE_RMII)) 73 #define IS_ETH_WATCHDOG(CMD) (((CMD) == ETH_WATCHDOG_ENABLE) || \ 74 ((CMD) == ETH_WATCHDOG_DISABLE)) 75 #define IS_ETH_JABBER(CMD) (((CMD) == ETH_JABBER_ENABLE) || \ 76 ((CMD) == ETH_JABBER_DISABLE)) 77 #define IS_ETH_INTER_FRAME_GAP(GAP) (((GAP) == ETH_INTERFRAMEGAP_96BIT) || \ 78 ((GAP) == ETH_INTERFRAMEGAP_88BIT) || \ 79 ((GAP) == ETH_INTERFRAMEGAP_80BIT) || \ 80 ((GAP) == ETH_INTERFRAMEGAP_72BIT) || \ 81 ((GAP) == ETH_INTERFRAMEGAP_64BIT) || \ 82 ((GAP) == ETH_INTERFRAMEGAP_56BIT) || \ 83 ((GAP) == ETH_INTERFRAMEGAP_48BIT) || \ 84 ((GAP) == ETH_INTERFRAMEGAP_40BIT)) 85 #define IS_ETH_CARRIER_SENSE(CMD) (((CMD) == ETH_CARRIERSENCE_ENABLE) || \ 86 ((CMD) == ETH_CARRIERSENCE_DISABLE)) 87 #define IS_ETH_RECEIVE_OWN(CMD) (((CMD) == ETH_RECEIVEOWN_ENABLE) || \ 88 ((CMD) == ETH_RECEIVEOWN_DISABLE)) 89 #define IS_ETH_LOOPBACK_MODE(CMD) (((CMD) == ETH_LOOPBACKMODE_ENABLE) || \ 90 ((CMD) == ETH_LOOPBACKMODE_DISABLE)) 91 #define IS_ETH_CHECKSUM_OFFLOAD(CMD) (((CMD) == ETH_CHECKSUMOFFLAOD_ENABLE) || \ 92 ((CMD) == ETH_CHECKSUMOFFLAOD_DISABLE)) 93 #define IS_ETH_RETRY_TRANSMISSION(CMD) (((CMD) == ETH_RETRYTRANSMISSION_ENABLE) || \ 94 ((CMD) == ETH_RETRYTRANSMISSION_DISABLE)) 95 #define IS_ETH_AUTOMATIC_PADCRC_STRIP(CMD) (((CMD) == ETH_AUTOMATICPADCRCSTRIP_ENABLE) || \ 96 ((CMD) == ETH_AUTOMATICPADCRCSTRIP_DISABLE)) 97 #define IS_ETH_BACKOFF_LIMIT(LIMIT) (((LIMIT) == ETH_BACKOFFLIMIT_10) || \ 98 ((LIMIT) == ETH_BACKOFFLIMIT_8) || \ 99 ((LIMIT) == ETH_BACKOFFLIMIT_4) || \ 100 ((LIMIT) == ETH_BACKOFFLIMIT_1)) 101 #define IS_ETH_DEFERRAL_CHECK(CMD) (((CMD) == ETH_DEFFERRALCHECK_ENABLE) || \ 102 ((CMD) == ETH_DEFFERRALCHECK_DISABLE)) 103 #define IS_ETH_RECEIVE_ALL(CMD) (((CMD) == ETH_RECEIVEALL_ENABLE) || \ 104 ((CMD) == ETH_RECEIVEAll_DISABLE)) 105 #define IS_ETH_SOURCE_ADDR_FILTER(CMD) (((CMD) == ETH_SOURCEADDRFILTER_NORMAL_ENABLE) || \ 106 ((CMD) == ETH_SOURCEADDRFILTER_INVERSE_ENABLE) || \ 107 ((CMD) == ETH_SOURCEADDRFILTER_DISABLE)) 108 #define IS_ETH_CONTROL_FRAMES(PASS) (((PASS) == ETH_PASSCONTROLFRAMES_BLOCKALL) || \ 109 ((PASS) == ETH_PASSCONTROLFRAMES_FORWARDALL) || \ 110 ((PASS) == ETH_PASSCONTROLFRAMES_FORWARDPASSEDADDRFILTER)) 111 #define IS_ETH_BROADCAST_FRAMES_RECEPTION(CMD) (((CMD) == ETH_BROADCASTFRAMESRECEPTION_ENABLE) || \ 112 ((CMD) == ETH_BROADCASTFRAMESRECEPTION_DISABLE)) 113 #define IS_ETH_DESTINATION_ADDR_FILTER(FILTER) (((FILTER) == ETH_DESTINATIONADDRFILTER_NORMAL) || \ 114 ((FILTER) == ETH_DESTINATIONADDRFILTER_INVERSE)) 115 #define IS_ETH_PROMISCUOUS_MODE(CMD) (((CMD) == ETH_PROMISCUOUS_MODE_ENABLE) || \ 116 ((CMD) == ETH_PROMISCUOUS_MODE_DISABLE)) 117 #define IS_ETH_MULTICAST_FRAMES_FILTER(FILTER) (((FILTER) == ETH_MULTICASTFRAMESFILTER_PERFECTHASHTABLE) || \ 118 ((FILTER) == ETH_MULTICASTFRAMESFILTER_HASHTABLE) || \ 119 ((FILTER) == ETH_MULTICASTFRAMESFILTER_PERFECT) || \ 120 ((FILTER) == ETH_MULTICASTFRAMESFILTER_NONE)) 121 #define IS_ETH_UNICAST_FRAMES_FILTER(FILTER) (((FILTER) == ETH_UNICASTFRAMESFILTER_PERFECTHASHTABLE) || \ 122 ((FILTER) == ETH_UNICASTFRAMESFILTER_HASHTABLE) || \ 123 ((FILTER) == ETH_UNICASTFRAMESFILTER_PERFECT)) 124 #define IS_ETH_PAUSE_TIME(TIME) ((TIME) <= 0xFFFF) 125 #define IS_ETH_ZEROQUANTA_PAUSE(CMD) (((CMD) == ETH_ZEROQUANTAPAUSE_ENABLE) || \ 126 ((CMD) == ETH_ZEROQUANTAPAUSE_DISABLE)) 127 #define IS_ETH_PAUSE_LOW_THRESHOLD(THRESHOLD) (((THRESHOLD) == ETH_PAUSELOWTHRESHOLD_MINUS4) || \ 128 ((THRESHOLD) == ETH_PAUSELOWTHRESHOLD_MINUS28) || \ 129 ((THRESHOLD) == ETH_PAUSELOWTHRESHOLD_MINUS144) || \ 130 ((THRESHOLD) == ETH_PAUSELOWTHRESHOLD_MINUS256)) 131 #define IS_ETH_UNICAST_PAUSE_FRAME_DETECT(CMD) (((CMD) == ETH_UNICASTPAUSEFRAMEDETECT_ENABLE) || \ 132 ((CMD) == ETH_UNICASTPAUSEFRAMEDETECT_DISABLE)) 133 #define IS_ETH_RECEIVE_FLOWCONTROL(CMD) (((CMD) == ETH_RECEIVEFLOWCONTROL_ENABLE) || \ 134 ((CMD) == ETH_RECEIVEFLOWCONTROL_DISABLE)) 135 #define IS_ETH_TRANSMIT_FLOWCONTROL(CMD) (((CMD) == ETH_TRANSMITFLOWCONTROL_ENABLE) || \ 136 ((CMD) == ETH_TRANSMITFLOWCONTROL_DISABLE)) 137 #define IS_ETH_VLAN_TAG_COMPARISON(COMPARISON) (((COMPARISON) == ETH_VLANTAGCOMPARISON_12BIT) || \ 138 ((COMPARISON) == ETH_VLANTAGCOMPARISON_16BIT)) 139 #define IS_ETH_VLAN_TAG_IDENTIFIER(IDENTIFIER) ((IDENTIFIER) <= 0xFFFF) 140 #define IS_ETH_MAC_ADDRESS0123(ADDRESS) (((ADDRESS) == ETH_MAC_ADDRESS0) || \ 141 ((ADDRESS) == ETH_MAC_ADDRESS1) || \ 142 ((ADDRESS) == ETH_MAC_ADDRESS2) || \ 143 ((ADDRESS) == ETH_MAC_ADDRESS3)) 144 #define IS_ETH_MAC_ADDRESS123(ADDRESS) (((ADDRESS) == ETH_MAC_ADDRESS1) || \ 145 ((ADDRESS) == ETH_MAC_ADDRESS2) || \ 146 ((ADDRESS) == ETH_MAC_ADDRESS3)) 147 #define IS_ETH_MAC_ADDRESS_FILTER(FILTER) (((FILTER) == ETH_MAC_ADDRESSFILTER_SA) || \ 148 ((FILTER) == ETH_MAC_ADDRESSFILTER_DA)) 149 #define IS_ETH_MAC_ADDRESS_MASK(MASK) (((MASK) == ETH_MAC_ADDRESSMASK_BYTE6) || \ 150 ((MASK) == ETH_MAC_ADDRESSMASK_BYTE5) || \ 151 ((MASK) == ETH_MAC_ADDRESSMASK_BYTE4) || \ 152 ((MASK) == ETH_MAC_ADDRESSMASK_BYTE3) || \ 153 ((MASK) == ETH_MAC_ADDRESSMASK_BYTE2) || \ 154 ((MASK) == ETH_MAC_ADDRESSMASK_BYTE1)) 155 #define IS_ETH_DROP_TCPIP_CHECKSUM_FRAME(CMD) (((CMD) == ETH_DROPTCPIPCHECKSUMERRORFRAME_ENABLE) || \ 156 ((CMD) == ETH_DROPTCPIPCHECKSUMERRORFRAME_DISABLE)) 157 #define IS_ETH_RECEIVE_STORE_FORWARD(CMD) (((CMD) == ETH_RECEIVESTOREFORWARD_ENABLE) || \ 158 ((CMD) == ETH_RECEIVESTOREFORWARD_DISABLE)) 159 #define IS_ETH_FLUSH_RECEIVE_FRAME(CMD) (((CMD) == ETH_FLUSHRECEIVEDFRAME_ENABLE) || \ 160 ((CMD) == ETH_FLUSHRECEIVEDFRAME_DISABLE)) 161 #define IS_ETH_TRANSMIT_STORE_FORWARD(CMD) (((CMD) == ETH_TRANSMITSTOREFORWARD_ENABLE) || \ 162 ((CMD) == ETH_TRANSMITSTOREFORWARD_DISABLE)) 163 #define IS_ETH_TRANSMIT_THRESHOLD_CONTROL(THRESHOLD) (((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_64BYTES) || \ 164 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_128BYTES) || \ 165 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_192BYTES) || \ 166 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_256BYTES) || \ 167 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_40BYTES) || \ 168 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_32BYTES) || \ 169 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_24BYTES) || \ 170 ((THRESHOLD) == ETH_TRANSMITTHRESHOLDCONTROL_16BYTES)) 171 #define IS_ETH_FORWARD_ERROR_FRAMES(CMD) (((CMD) == ETH_FORWARDERRORFRAMES_ENABLE) || \ 172 ((CMD) == ETH_FORWARDERRORFRAMES_DISABLE)) 173 #define IS_ETH_FORWARD_UNDERSIZED_GOOD_FRAMES(CMD) (((CMD) == ETH_FORWARDUNDERSIZEDGOODFRAMES_ENABLE) || \ 174 ((CMD) == ETH_FORWARDUNDERSIZEDGOODFRAMES_DISABLE)) 175 #define IS_ETH_RECEIVE_THRESHOLD_CONTROL(THRESHOLD) (((THRESHOLD) == ETH_RECEIVEDTHRESHOLDCONTROL_64BYTES) || \ 176 ((THRESHOLD) == ETH_RECEIVEDTHRESHOLDCONTROL_32BYTES) || \ 177 ((THRESHOLD) == ETH_RECEIVEDTHRESHOLDCONTROL_96BYTES) || \ 178 ((THRESHOLD) == ETH_RECEIVEDTHRESHOLDCONTROL_128BYTES)) 179 #define IS_ETH_SECOND_FRAME_OPERATE(CMD) (((CMD) == ETH_SECONDFRAMEOPERARTE_ENABLE) || \ 180 ((CMD) == ETH_SECONDFRAMEOPERARTE_DISABLE)) 181 #define IS_ETH_ADDRESS_ALIGNED_BEATS(CMD) (((CMD) == ETH_ADDRESSALIGNEDBEATS_ENABLE) || \ 182 ((CMD) == ETH_ADDRESSALIGNEDBEATS_DISABLE)) 183 #define IS_ETH_FIXED_BURST(CMD) (((CMD) == ETH_FIXEDBURST_ENABLE) || \ 184 ((CMD) == ETH_FIXEDBURST_DISABLE)) 185 #define IS_ETH_RXDMA_BURST_LENGTH(LENGTH) (((LENGTH) == ETH_RXDMABURSTLENGTH_1BEAT) || \ 186 ((LENGTH) == ETH_RXDMABURSTLENGTH_2BEAT) || \ 187 ((LENGTH) == ETH_RXDMABURSTLENGTH_4BEAT) || \ 188 ((LENGTH) == ETH_RXDMABURSTLENGTH_8BEAT) || \ 189 ((LENGTH) == ETH_RXDMABURSTLENGTH_16BEAT) || \ 190 ((LENGTH) == ETH_RXDMABURSTLENGTH_32BEAT) || \ 191 ((LENGTH) == ETH_RXDMABURSTLENGTH_4XPBL_4BEAT) || \ 192 ((LENGTH) == ETH_RXDMABURSTLENGTH_4XPBL_8BEAT) || \ 193 ((LENGTH) == ETH_RXDMABURSTLENGTH_4XPBL_16BEAT) || \ 194 ((LENGTH) == ETH_RXDMABURSTLENGTH_4XPBL_32BEAT) || \ 195 ((LENGTH) == ETH_RXDMABURSTLENGTH_4XPBL_64BEAT) || \ 196 ((LENGTH) == ETH_RXDMABURSTLENGTH_4XPBL_128BEAT)) 197 #define IS_ETH_TXDMA_BURST_LENGTH(LENGTH) (((LENGTH) == ETH_TXDMABURSTLENGTH_1BEAT) || \ 198 ((LENGTH) == ETH_TXDMABURSTLENGTH_2BEAT) || \ 199 ((LENGTH) == ETH_TXDMABURSTLENGTH_4BEAT) || \ 200 ((LENGTH) == ETH_TXDMABURSTLENGTH_8BEAT) || \ 201 ((LENGTH) == ETH_TXDMABURSTLENGTH_16BEAT) || \ 202 ((LENGTH) == ETH_TXDMABURSTLENGTH_32BEAT) || \ 203 ((LENGTH) == ETH_TXDMABURSTLENGTH_4XPBL_4BEAT) || \ 204 ((LENGTH) == ETH_TXDMABURSTLENGTH_4XPBL_8BEAT) || \ 205 ((LENGTH) == ETH_TXDMABURSTLENGTH_4XPBL_16BEAT) || \ 206 ((LENGTH) == ETH_TXDMABURSTLENGTH_4XPBL_32BEAT) || \ 207 ((LENGTH) == ETH_TXDMABURSTLENGTH_4XPBL_64BEAT) || \ 208 ((LENGTH) == ETH_TXDMABURSTLENGTH_4XPBL_128BEAT)) 209 #define IS_ETH_DMA_DESC_SKIP_LENGTH(LENGTH) ((LENGTH) <= 0x1F) 210 #define IS_ETH_DMA_ARBITRATION_ROUNDROBIN_RXTX(RATIO) (((RATIO) == ETH_DMAARBITRATION_ROUNDROBIN_RXTX_1_1) || \ 211 ((RATIO) == ETH_DMAARBITRATION_ROUNDROBIN_RXTX_2_1) || \ 212 ((RATIO) == ETH_DMAARBITRATION_ROUNDROBIN_RXTX_3_1) || \ 213 ((RATIO) == ETH_DMAARBITRATION_ROUNDROBIN_RXTX_4_1) || \ 214 ((RATIO) == ETH_DMAARBITRATION_RXPRIORTX)) 215 #define IS_ETH_DMATXDESC_GET_FLAG(FLAG) (((FLAG) == ETH_DMATXDESC_OWN) || \ 216 ((FLAG) == ETH_DMATXDESC_IC) || \ 217 ((FLAG) == ETH_DMATXDESC_LS) || \ 218 ((FLAG) == ETH_DMATXDESC_FS) || \ 219 ((FLAG) == ETH_DMATXDESC_DC) || \ 220 ((FLAG) == ETH_DMATXDESC_DP) || \ 221 ((FLAG) == ETH_DMATXDESC_TTSE) || \ 222 ((FLAG) == ETH_DMATXDESC_TER) || \ 223 ((FLAG) == ETH_DMATXDESC_TCH) || \ 224 ((FLAG) == ETH_DMATXDESC_TTSS) || \ 225 ((FLAG) == ETH_DMATXDESC_IHE) || \ 226 ((FLAG) == ETH_DMATXDESC_ES) || \ 227 ((FLAG) == ETH_DMATXDESC_JT) || \ 228 ((FLAG) == ETH_DMATXDESC_FF) || \ 229 ((FLAG) == ETH_DMATXDESC_PCE) || \ 230 ((FLAG) == ETH_DMATXDESC_LCA) || \ 231 ((FLAG) == ETH_DMATXDESC_NC) || \ 232 ((FLAG) == ETH_DMATXDESC_LCO) || \ 233 ((FLAG) == ETH_DMATXDESC_EC) || \ 234 ((FLAG) == ETH_DMATXDESC_VF) || \ 235 ((FLAG) == ETH_DMATXDESC_CC) || \ 236 ((FLAG) == ETH_DMATXDESC_ED) || \ 237 ((FLAG) == ETH_DMATXDESC_UF) || \ 238 ((FLAG) == ETH_DMATXDESC_DB)) 239 #define IS_ETH_DMA_TXDESC_SEGMENT(SEGMENT) (((SEGMENT) == ETH_DMATXDESC_LASTSEGMENTS) || \ 240 ((SEGMENT) == ETH_DMATXDESC_FIRSTSEGMENT)) 241 #define IS_ETH_DMA_TXDESC_CHECKSUM(CHECKSUM) (((CHECKSUM) == ETH_DMATXDESC_CHECKSUMBYPASS) || \ 242 ((CHECKSUM) == ETH_DMATXDESC_CHECKSUMIPV4HEADER) || \ 243 ((CHECKSUM) == ETH_DMATXDESC_CHECKSUMTCPUDPICMPSEGMENT) || \ 244 ((CHECKSUM) == ETH_DMATXDESC_CHECKSUMTCPUDPICMPFULL)) 245 #define IS_ETH_DMATXDESC_BUFFER_SIZE(SIZE) ((SIZE) <= 0x1FFF) 246 #define IS_ETH_DMARXDESC_GET_FLAG(FLAG) (((FLAG) == ETH_DMARXDESC_OWN) || \ 247 ((FLAG) == ETH_DMARXDESC_AFM) || \ 248 ((FLAG) == ETH_DMARXDESC_ES) || \ 249 ((FLAG) == ETH_DMARXDESC_DE) || \ 250 ((FLAG) == ETH_DMARXDESC_SAF) || \ 251 ((FLAG) == ETH_DMARXDESC_LE) || \ 252 ((FLAG) == ETH_DMARXDESC_OE) || \ 253 ((FLAG) == ETH_DMARXDESC_VLAN) || \ 254 ((FLAG) == ETH_DMARXDESC_FS) || \ 255 ((FLAG) == ETH_DMARXDESC_LS) || \ 256 ((FLAG) == ETH_DMARXDESC_IPV4HCE) || \ 257 ((FLAG) == ETH_DMARXDESC_LC) || \ 258 ((FLAG) == ETH_DMARXDESC_FT) || \ 259 ((FLAG) == ETH_DMARXDESC_RWT) || \ 260 ((FLAG) == ETH_DMARXDESC_RE) || \ 261 ((FLAG) == ETH_DMARXDESC_DBE) || \ 262 ((FLAG) == ETH_DMARXDESC_CE) || \ 263 ((FLAG) == ETH_DMARXDESC_MAMPCE)) 264 #define IS_ETH_DMA_RXDESC_BUFFER(BUFFER) (((BUFFER) == ETH_DMARXDESC_BUFFER1) || \ 265 ((BUFFER) == ETH_DMARXDESC_BUFFER2)) 266 #define IS_ETH_PMT_GET_FLAG(FLAG) (((FLAG) == ETH_PMT_FLAG_WUFR) || \ 267 ((FLAG) == ETH_PMT_FLAG_MPR)) 268 #define IS_ETH_DMA_FLAG(FLAG) ((((FLAG) & (uint32_t)0xC7FE1800) == 0x00) && ((FLAG) != 0x00)) 269 #define IS_ETH_DMA_GET_FLAG(FLAG) (((FLAG) == ETH_DMA_FLAG_TST) || ((FLAG) == ETH_DMA_FLAG_PMT) || \ 270 ((FLAG) == ETH_DMA_FLAG_MMC) || ((FLAG) == ETH_DMA_FLAG_DATATRANSFERERROR) || \ 271 ((FLAG) == ETH_DMA_FLAG_READWRITEERROR) || ((FLAG) == ETH_DMA_FLAG_ACCESSERROR) || \ 272 ((FLAG) == ETH_DMA_FLAG_NIS) || ((FLAG) == ETH_DMA_FLAG_AIS) || \ 273 ((FLAG) == ETH_DMA_FLAG_ER) || ((FLAG) == ETH_DMA_FLAG_FBE) || \ 274 ((FLAG) == ETH_DMA_FLAG_ET) || ((FLAG) == ETH_DMA_FLAG_RWT) || \ 275 ((FLAG) == ETH_DMA_FLAG_RPS) || ((FLAG) == ETH_DMA_FLAG_RBU) || \ 276 ((FLAG) == ETH_DMA_FLAG_R) || ((FLAG) == ETH_DMA_FLAG_TU) || \ 277 ((FLAG) == ETH_DMA_FLAG_RO) || ((FLAG) == ETH_DMA_FLAG_TJT) || \ 278 ((FLAG) == ETH_DMA_FLAG_TBU) || ((FLAG) == ETH_DMA_FLAG_TPS) || \ 279 ((FLAG) == ETH_DMA_FLAG_T)) 280 #define IS_ETH_MAC_IT(IT) ((((IT) & (uint32_t)0xFFFFFDF1) == 0x00) && ((IT) != 0x00)) 281 #define IS_ETH_MAC_GET_IT(IT) (((IT) == ETH_MAC_IT_TST) || ((IT) == ETH_MAC_IT_MMCT) || \ 282 ((IT) == ETH_MAC_IT_MMCR) || ((IT) == ETH_MAC_IT_MMC) || \ 283 ((IT) == ETH_MAC_IT_PMT)) 284 #define IS_ETH_MAC_GET_FLAG(FLAG) (((FLAG) == ETH_MAC_FLAG_TST) || ((FLAG) == ETH_MAC_FLAG_MMCT) || \ 285 ((FLAG) == ETH_MAC_FLAG_MMCR) || ((FLAG) == ETH_MAC_FLAG_MMC) || \ 286 ((FLAG) == ETH_MAC_FLAG_PMT)) 287 #define IS_ETH_DMA_IT(IT) ((((IT) & (uint32_t)0xC7FE1800) == 0x00) && ((IT) != 0x00)) 288 #define IS_ETH_DMA_GET_IT(IT) (((IT) == ETH_DMA_IT_TST) || ((IT) == ETH_DMA_IT_PMT) || \ 289 ((IT) == ETH_DMA_IT_MMC) || ((IT) == ETH_DMA_IT_NIS) || \ 290 ((IT) == ETH_DMA_IT_AIS) || ((IT) == ETH_DMA_IT_ER) || \ 291 ((IT) == ETH_DMA_IT_FBE) || ((IT) == ETH_DMA_IT_ET) || \ 292 ((IT) == ETH_DMA_IT_RWT) || ((IT) == ETH_DMA_IT_RPS) || \ 293 ((IT) == ETH_DMA_IT_RBU) || ((IT) == ETH_DMA_IT_R) || \ 294 ((IT) == ETH_DMA_IT_TU) || ((IT) == ETH_DMA_IT_RO) || \ 295 ((IT) == ETH_DMA_IT_TJT) || ((IT) == ETH_DMA_IT_TBU) || \ 296 ((IT) == ETH_DMA_IT_TPS) || ((IT) == ETH_DMA_IT_T)) 297 #define IS_ETH_DMA_GET_OVERFLOW(OVERFLOW) (((OVERFLOW) == ETH_DMA_OVERFLOW_RXFIFOCOUNTER) || \ 298 ((OVERFLOW) == ETH_DMA_OVERFLOW_MISSEDFRAMECOUNTER)) 299 #define IS_ETH_MMC_IT(IT) (((((IT) & (uint32_t)0xFFDF3FFF) == 0x00) || (((IT) & (uint32_t)0xEFFDFF9F) == 0x00)) && \ 301 #define IS_ETH_MMC_GET_IT(IT) (((IT) == ETH_MMC_IT_TGF) || ((IT) == ETH_MMC_IT_TGFMSC) || \ 302 ((IT) == ETH_MMC_IT_TGFSC) || ((IT) == ETH_MMC_IT_RGUF) || \ 303 ((IT) == ETH_MMC_IT_RFAE) || ((IT) == ETH_MMC_IT_RFCE)) 304 #define IS_ETH_ENHANCED_DESCRIPTOR_FORMAT(CMD) (((CMD) == ETH_DMAENHANCEDDESCRIPTOR_ENABLE) || \ 305 ((CMD) == ETH_DMAENHANCEDDESCRIPTOR_DISABLE)) 316 #define ETH_REG_WRITE_DELAY ((uint32_t)0x00000001U) 319 #define ETH_SUCCESS ((uint32_t)0U) 320 #define ETH_ERROR ((uint32_t)1U) 323 #define ETH_DMATXDESC_COLLISION_COUNTSHIFT ((uint32_t)3U) 326 #define ETH_DMATXDESC_BUFFER2_SIZESHIFT ((uint32_t)16U) 329 #define ETH_DMARXDESC_FRAME_LENGTHSHIFT ((uint32_t)16U) 332 #define ETH_DMARXDESC_BUFFER2_SIZESHIFT ((uint32_t)16U) 335 #define ETH_DMARXDESC_FRAMELENGTHSHIFT ((uint32_t)16) 338 #define ETH_MAC_ADDR_HBASE (uint32_t)(ETH_MAC_BASE + (uint32_t)0x40U) 339 #define ETH_MAC_ADDR_LBASE (uint32_t)(ETH_MAC_BASE + (uint32_t)0x44U) 342 #define ETH_MACMIIAR_CR_MASK ((uint32_t)0xFFFFFFE3U) 345 #define ETH_MACCR_CLEAR_MASK ((uint32_t)0xFF20810FU) 348 #define ETH_MACFCR_CLEAR_MASK ((uint32_t)0x0000FF41U) 351 #define ETH_DMAOMR_CLEAR_MASK ((uint32_t)0xF8DE3F23U) 354 #define ETH_WAKEUP_REGISTER_LENGTH 8U 357 #define ETH_DMA_RX_OVERFLOW_MISSEDFRAMES_COUNTERSHIFT 17U 663 #define ETH_MAX_PACKET_SIZE ((uint32_t)1524U) 664 #define ETH_HEADER ((uint32_t)14U) 665 #define ETH_CRC ((uint32_t)4U) 666 #define ETH_EXTRA ((uint32_t)2U) 667 #define ETH_VLAN_TAG ((uint32_t)4U) 668 #define ETH_MIN_ETH_PAYLOAD ((uint32_t)46U) 669 #define ETH_MAX_ETH_PAYLOAD ((uint32_t)1500U) 670 #define ETH_JUMBO_FRAME_PAYLOAD ((uint32_t)9000U) 689 #ifndef ETH_RX_BUF_SIZE 690 #define ETH_RX_BUF_SIZE ETH_MAX_PACKET_SIZE 695 #define ETH_RXBUFNB ((uint32_t)5U 716 #ifndef ETH_TX_BUF_SIZE 717 #define ETH_TX_BUF_SIZE ETH_MAX_PACKET_SIZE 722 #define ETH_TXBUFNB ((uint32_t)5U 749 #define ETH_DMATXDESC_OWN ((uint32_t)0x80000000U) 750 #define ETH_DMATXDESC_IC ((uint32_t)0x40000000U) 751 #define ETH_DMATXDESC_LS ((uint32_t)0x20000000U) 752 #define ETH_DMATXDESC_FS ((uint32_t)0x10000000U) 753 #define ETH_DMATXDESC_DC ((uint32_t)0x08000000U) 754 #define ETH_DMATXDESC_DP ((uint32_t)0x04000000U) 755 #define ETH_DMATXDESC_TTSE ((uint32_t)0x02000000U) 756 #define ETH_DMATXDESC_CIC ((uint32_t)0x00C00000U) 757 #define ETH_DMATXDESC_CIC_BYPASS ((uint32_t)0x00000000U) 758 #define ETH_DMATXDESC_CIC_IPV4HEADER ((uint32_t)0x00400000U) 759 #define ETH_DMATXDESC_CIC_TCPUDPICMP_SEGMENT ((uint32_t)0x00800000U) 760 #define ETH_DMATXDESC_CIC_TCPUDPICMP_FULL ((uint32_t)0x00C00000U) 761 #define ETH_DMATXDESC_TER ((uint32_t)0x00200000U) 762 #define ETH_DMATXDESC_TCH ((uint32_t)0x00100000U) 763 #define ETH_DMATXDESC_TTSS ((uint32_t)0x00020000U) 764 #define ETH_DMATXDESC_IHE ((uint32_t)0x00010000U) 765 #define ETH_DMATXDESC_ES ((uint32_t)0x00008000U) 766 #define ETH_DMATXDESC_JT ((uint32_t)0x00004000U) 767 #define ETH_DMATXDESC_FF ((uint32_t)0x00002000U) 768 #define ETH_DMATXDESC_PCE ((uint32_t)0x00001000U) 769 #define ETH_DMATXDESC_LCA ((uint32_t)0x00000800U) 770 #define ETH_DMATXDESC_NC ((uint32_t)0x00000400U) 771 #define ETH_DMATXDESC_LCO ((uint32_t)0x00000200U) 772 #define ETH_DMATXDESC_EC ((uint32_t)0x00000100U) 773 #define ETH_DMATXDESC_VF ((uint32_t)0x00000080U) 774 #define ETH_DMATXDESC_CC ((uint32_t)0x00000078U) 775 #define ETH_DMATXDESC_ED ((uint32_t)0x00000004U) 776 #define ETH_DMATXDESC_UF ((uint32_t)0x00000002U) 777 #define ETH_DMATXDESC_DB ((uint32_t)0x00000001U) 782 #define ETH_DMATXDESC_TBS2 ((uint32_t)0x1FFF0000U) 783 #define ETH_DMATXDESC_TBS1 ((uint32_t)0x00001FFFU) 788 #define ETH_DMATXDESC_B1AP ((uint32_t)0xFFFFFFFFU) 793 #define ETH_DMATXDESC_B2AP ((uint32_t)0xFFFFFFFFU) 802 #define ETH_DMAPTPTXDESC_TTSL ((uint32_t)0xFFFFFFFFU) 805 #define ETH_DMAPTPTXDESC_TTSH ((uint32_t)0xFFFFFFFFU) 830 #define ETH_DMARXDESC_OWN ((uint32_t)0x80000000U) 831 #define ETH_DMARXDESC_AFM ((uint32_t)0x40000000U) 832 #define ETH_DMARXDESC_FL ((uint32_t)0x3FFF0000U) 833 #define ETH_DMARXDESC_ES ((uint32_t)0x00008000U) 834 #define ETH_DMARXDESC_DE ((uint32_t)0x00004000U) 835 #define ETH_DMARXDESC_SAF ((uint32_t)0x00002000U) 836 #define ETH_DMARXDESC_LE ((uint32_t)0x00001000U) 837 #define ETH_DMARXDESC_OE ((uint32_t)0x00000800U) 838 #define ETH_DMARXDESC_VLAN ((uint32_t)0x00000400U) 839 #define ETH_DMARXDESC_FS ((uint32_t)0x00000200U) 840 #define ETH_DMARXDESC_LS ((uint32_t)0x00000100U) 841 #define ETH_DMARXDESC_IPV4HCE ((uint32_t)0x00000080U) 842 #define ETH_DMARXDESC_LC ((uint32_t)0x00000040U) 843 #define ETH_DMARXDESC_FT ((uint32_t)0x00000020U) 844 #define ETH_DMARXDESC_RWT ((uint32_t)0x00000010U) 845 #define ETH_DMARXDESC_RE ((uint32_t)0x00000008U) 846 #define ETH_DMARXDESC_DBE ((uint32_t)0x00000004U) 847 #define ETH_DMARXDESC_CE ((uint32_t)0x00000002U) 848 #define ETH_DMARXDESC_MAMPCE ((uint32_t)0x00000001U) 853 #define ETH_DMARXDESC_DIC ((uint32_t)0x80000000U) 854 #define ETH_DMARXDESC_RBS2 ((uint32_t)0x1FFF0000U) 855 #define ETH_DMARXDESC_RER ((uint32_t)0x00008000U) 856 #define ETH_DMARXDESC_RCH ((uint32_t)0x00004000U) 857 #define ETH_DMARXDESC_RBS1 ((uint32_t)0x00001FFFU) 862 #define ETH_DMARXDESC_B1AP ((uint32_t)0xFFFFFFFFU) 867 #define ETH_DMARXDESC_B2AP ((uint32_t)0xFFFFFFFFU) 880 #define ETH_DMAPTPRXDESC_PTPV ((uint32_t)0x00002000U) 881 #define ETH_DMAPTPRXDESC_PTPFT ((uint32_t)0x00001000U) 882 #define ETH_DMAPTPRXDESC_PTPMT ((uint32_t)0x00000F00U) 883 #define ETH_DMAPTPRXDESC_PTPMT_SYNC ((uint32_t)0x00000100U) 884 #define ETH_DMAPTPRXDESC_PTPMT_FOLLOWUP ((uint32_t)0x00000200U) 885 #define ETH_DMAPTPRXDESC_PTPMT_DELAYREQ ((uint32_t)0x00000300U) 886 #define ETH_DMAPTPRXDESC_PTPMT_DELAYRESP ((uint32_t)0x00000400U) 887 #define ETH_DMAPTPRXDESC_PTPMT_PDELAYREQ_ANNOUNCE ((uint32_t)0x00000500U) 888 #define ETH_DMAPTPRXDESC_PTPMT_PDELAYRESP_MANAG ((uint32_t)0x00000600U) 889 #define ETH_DMAPTPRXDESC_PTPMT_PDELAYRESPFOLLOWUP_SIGNAL ((uint32_t)0x00000700U) 890 #define ETH_DMAPTPRXDESC_IPV6PR ((uint32_t)0x00000080U) 891 #define ETH_DMAPTPRXDESC_IPV4PR ((uint32_t)0x00000040U) 892 #define ETH_DMAPTPRXDESC_IPCB ((uint32_t)0x00000020U) 893 #define ETH_DMAPTPRXDESC_IPPE ((uint32_t)0x00000010U) 894 #define ETH_DMAPTPRXDESC_IPHE ((uint32_t)0x00000008U) 895 #define ETH_DMAPTPRXDESC_IPPT ((uint32_t)0x00000007U) 896 #define ETH_DMAPTPRXDESC_IPPT_UDP ((uint32_t)0x00000001U) 897 #define ETH_DMAPTPRXDESC_IPPT_TCP ((uint32_t)0x00000002U) 898 #define ETH_DMAPTPRXDESC_IPPT_ICMP ((uint32_t)0x00000003U) 901 #define ETH_DMAPTPRXDESC_RTSL ((uint32_t)0xFFFFFFFFU) 904 #define ETH_DMAPTPRXDESC_RTSH ((uint32_t)0xFFFFFFFFU) 911 #define ETH_AUTONEGOTIATION_ENABLE ((uint32_t)0x00000001U) 912 #define ETH_AUTONEGOTIATION_DISABLE ((uint32_t)0x00000000U) 920 #define ETH_SPEED_10M ((uint32_t)0x00000000U) 921 #define ETH_SPEED_100M ((uint32_t)0x00004000U) 929 #define ETH_MODE_FULLDUPLEX ((uint32_t)0x00000800U) 930 #define ETH_MODE_HALFDUPLEX ((uint32_t)0x00000000U) 937 #define ETH_RXPOLLING_MODE ((uint32_t)0x00000000U) 938 #define ETH_RXINTERRUPT_MODE ((uint32_t)0x00000001U) 946 #define ETH_CHECKSUM_BY_HARDWARE ((uint32_t)0x00000000U) 947 #define ETH_CHECKSUM_BY_SOFTWARE ((uint32_t)0x00000001U) 955 #define ETH_MEDIA_INTERFACE_MII ((uint32_t)0x00000000U) 956 #define ETH_MEDIA_INTERFACE_RMII ((uint32_t)SYSCFG_PMC_MII_RMII_SEL) 964 #define ETH_WATCHDOG_ENABLE ((uint32_t)0x00000000U) 965 #define ETH_WATCHDOG_DISABLE ((uint32_t)0x00800000U) 973 #define ETH_JABBER_ENABLE ((uint32_t)0x00000000U) 974 #define ETH_JABBER_DISABLE ((uint32_t)0x00400000U) 982 #define ETH_INTERFRAMEGAP_96BIT ((uint32_t)0x00000000U) 983 #define ETH_INTERFRAMEGAP_88BIT ((uint32_t)0x00020000U) 984 #define ETH_INTERFRAMEGAP_80BIT ((uint32_t)0x00040000U) 985 #define ETH_INTERFRAMEGAP_72BIT ((uint32_t)0x00060000U) 986 #define ETH_INTERFRAMEGAP_64BIT ((uint32_t)0x00080000U) 987 #define ETH_INTERFRAMEGAP_56BIT ((uint32_t)0x000A0000U) 988 #define ETH_INTERFRAMEGAP_48BIT ((uint32_t)0x000C0000U) 989 #define ETH_INTERFRAMEGAP_40BIT ((uint32_t)0x000E0000U) 997 #define ETH_CARRIERSENCE_ENABLE ((uint32_t)0x00000000U) 998 #define ETH_CARRIERSENCE_DISABLE ((uint32_t)0x00010000U) 1006 #define ETH_RECEIVEOWN_ENABLE ((uint32_t)0x00000000U) 1007 #define ETH_RECEIVEOWN_DISABLE ((uint32_t)0x00002000U) 1015 #define ETH_LOOPBACKMODE_ENABLE ((uint32_t)0x00001000U) 1016 #define ETH_LOOPBACKMODE_DISABLE ((uint32_t)0x00000000U) 1024 #define ETH_CHECKSUMOFFLAOD_ENABLE ((uint32_t)0x00000400U) 1025 #define ETH_CHECKSUMOFFLAOD_DISABLE ((uint32_t)0x00000000U) 1033 #define ETH_RETRYTRANSMISSION_ENABLE ((uint32_t)0x00000000U) 1034 #define ETH_RETRYTRANSMISSION_DISABLE ((uint32_t)0x00000200U) 1042 #define ETH_AUTOMATICPADCRCSTRIP_ENABLE ((uint32_t)0x00000080U) 1043 #define ETH_AUTOMATICPADCRCSTRIP_DISABLE ((uint32_t)0x00000000U) 1051 #define ETH_BACKOFFLIMIT_10 ((uint32_t)0x00000000U) 1052 #define ETH_BACKOFFLIMIT_8 ((uint32_t)0x00000020U) 1053 #define ETH_BACKOFFLIMIT_4 ((uint32_t)0x00000040U) 1054 #define ETH_BACKOFFLIMIT_1 ((uint32_t)0x00000060U) 1062 #define ETH_DEFFERRALCHECK_ENABLE ((uint32_t)0x00000010U) 1063 #define ETH_DEFFERRALCHECK_DISABLE ((uint32_t)0x00000000U) 1071 #define ETH_RECEIVEALL_ENABLE ((uint32_t)0x80000000U) 1072 #define ETH_RECEIVEALL_DISABLE ((uint32_t)0x00000000U) 1080 #define ETH_SOURCEADDRFILTER_NORMAL_ENABLE ((uint32_t)0x00000200U) 1081 #define ETH_SOURCEADDRFILTER_INVERSE_ENABLE ((uint32_t)0x00000300U) 1082 #define ETH_SOURCEADDRFILTER_DISABLE ((uint32_t)0x00000000U) 1090 #define ETH_PASSCONTROLFRAMES_BLOCKALL ((uint32_t)0x00000040U) 1091 #define ETH_PASSCONTROLFRAMES_FORWARDALL ((uint32_t)0x00000080U) 1092 #define ETH_PASSCONTROLFRAMES_FORWARDPASSEDADDRFILTER ((uint32_t)0x000000C0U) 1100 #define ETH_BROADCASTFRAMESRECEPTION_ENABLE ((uint32_t)0x00000000U) 1101 #define ETH_BROADCASTFRAMESRECEPTION_DISABLE ((uint32_t)0x00000020U) 1109 #define ETH_DESTINATIONADDRFILTER_NORMAL ((uint32_t)0x00000000U) 1110 #define ETH_DESTINATIONADDRFILTER_INVERSE ((uint32_t)0x00000008U) 1118 #define ETH_PROMISCUOUS_MODE_ENABLE ((uint32_t)0x00000001U) 1119 #define ETH_PROMISCUOUS_MODE_DISABLE ((uint32_t)0x00000000U) 1127 #define ETH_MULTICASTFRAMESFILTER_PERFECTHASHTABLE ((uint32_t)0x00000404U) 1128 #define ETH_MULTICASTFRAMESFILTER_HASHTABLE ((uint32_t)0x00000004U) 1129 #define ETH_MULTICASTFRAMESFILTER_PERFECT ((uint32_t)0x00000000U) 1130 #define ETH_MULTICASTFRAMESFILTER_NONE ((uint32_t)0x00000010U) 1138 #define ETH_UNICASTFRAMESFILTER_PERFECTHASHTABLE ((uint32_t)0x00000402U) 1139 #define ETH_UNICASTFRAMESFILTER_HASHTABLE ((uint32_t)0x00000002U) 1140 #define ETH_UNICASTFRAMESFILTER_PERFECT ((uint32_t)0x00000000U) 1148 #define ETH_ZEROQUANTAPAUSE_ENABLE ((uint32_t)0x00000000U) 1149 #define ETH_ZEROQUANTAPAUSE_DISABLE ((uint32_t)0x00000080U) 1157 #define ETH_PAUSELOWTHRESHOLD_MINUS4 ((uint32_t)0x00000000U) 1158 #define ETH_PAUSELOWTHRESHOLD_MINUS28 ((uint32_t)0x00000010U) 1159 #define ETH_PAUSELOWTHRESHOLD_MINUS144 ((uint32_t)0x00000020U) 1160 #define ETH_PAUSELOWTHRESHOLD_MINUS256 ((uint32_t)0x00000030U) 1168 #define ETH_UNICASTPAUSEFRAMEDETECT_ENABLE ((uint32_t)0x00000008U) 1169 #define ETH_UNICASTPAUSEFRAMEDETECT_DISABLE ((uint32_t)0x00000000U) 1177 #define ETH_RECEIVEFLOWCONTROL_ENABLE ((uint32_t)0x00000004U) 1178 #define ETH_RECEIVEFLOWCONTROL_DISABLE ((uint32_t)0x00000000U) 1186 #define ETH_TRANSMITFLOWCONTROL_ENABLE ((uint32_t)0x00000002U) 1187 #define ETH_TRANSMITFLOWCONTROL_DISABLE ((uint32_t)0x00000000U) 1195 #define ETH_VLANTAGCOMPARISON_12BIT ((uint32_t)0x00010000U) 1196 #define ETH_VLANTAGCOMPARISON_16BIT ((uint32_t)0x00000000U) 1204 #define ETH_MAC_ADDRESS0 ((uint32_t)0x00000000U) 1205 #define ETH_MAC_ADDRESS1 ((uint32_t)0x00000008U) 1206 #define ETH_MAC_ADDRESS2 ((uint32_t)0x00000010U) 1207 #define ETH_MAC_ADDRESS3 ((uint32_t)0x00000018U) 1215 #define ETH_MAC_ADDRESSFILTER_SA ((uint32_t)0x00000000U) 1216 #define ETH_MAC_ADDRESSFILTER_DA ((uint32_t)0x00000008U) 1224 #define ETH_MAC_ADDRESSMASK_BYTE6 ((uint32_t)0x20000000U) 1225 #define ETH_MAC_ADDRESSMASK_BYTE5 ((uint32_t)0x10000000U) 1226 #define ETH_MAC_ADDRESSMASK_BYTE4 ((uint32_t)0x08000000U) 1227 #define ETH_MAC_ADDRESSMASK_BYTE3 ((uint32_t)0x04000000U) 1228 #define ETH_MAC_ADDRESSMASK_BYTE2 ((uint32_t)0x02000000U) 1229 #define ETH_MAC_ADDRESSMASK_BYTE1 ((uint32_t)0x01000000U) 1237 #define ETH_DROPTCPIPCHECKSUMERRORFRAME_ENABLE ((uint32_t)0x00000000U) 1238 #define ETH_DROPTCPIPCHECKSUMERRORFRAME_DISABLE ((uint32_t)0x04000000U) 1246 #define ETH_RECEIVESTOREFORWARD_ENABLE ((uint32_t)0x02000000U) 1247 #define ETH_RECEIVESTOREFORWARD_DISABLE ((uint32_t)0x00000000U) 1255 #define ETH_FLUSHRECEIVEDFRAME_ENABLE ((uint32_t)0x00000000U) 1256 #define ETH_FLUSHRECEIVEDFRAME_DISABLE ((uint32_t)0x01000000U) 1264 #define ETH_TRANSMITSTOREFORWARD_ENABLE ((uint32_t)0x00200000U) 1265 #define ETH_TRANSMITSTOREFORWARD_DISABLE ((uint32_t)0x00000000U) 1273 #define ETH_TRANSMITTHRESHOLDCONTROL_64BYTES ((uint32_t)0x00000000U) 1274 #define ETH_TRANSMITTHRESHOLDCONTROL_128BYTES ((uint32_t)0x00004000U) 1275 #define ETH_TRANSMITTHRESHOLDCONTROL_192BYTES ((uint32_t)0x00008000U) 1276 #define ETH_TRANSMITTHRESHOLDCONTROL_256BYTES ((uint32_t)0x0000C000U) 1277 #define ETH_TRANSMITTHRESHOLDCONTROL_40BYTES ((uint32_t)0x00010000U) 1278 #define ETH_TRANSMITTHRESHOLDCONTROL_32BYTES ((uint32_t)0x00014000U) 1279 #define ETH_TRANSMITTHRESHOLDCONTROL_24BYTES ((uint32_t)0x00018000U) 1280 #define ETH_TRANSMITTHRESHOLDCONTROL_16BYTES ((uint32_t)0x0001C000U) 1288 #define ETH_FORWARDERRORFRAMES_ENABLE ((uint32_t)0x00000080U) 1289 #define ETH_FORWARDERRORFRAMES_DISABLE ((uint32_t)0x00000000U) 1297 #define ETH_FORWARDUNDERSIZEDGOODFRAMES_ENABLE ((uint32_t)0x00000040U) 1298 #define ETH_FORWARDUNDERSIZEDGOODFRAMES_DISABLE ((uint32_t)0x00000000U) 1306 #define ETH_RECEIVEDTHRESHOLDCONTROL_64BYTES ((uint32_t)0x00000000U) 1307 #define ETH_RECEIVEDTHRESHOLDCONTROL_32BYTES ((uint32_t)0x00000008U) 1308 #define ETH_RECEIVEDTHRESHOLDCONTROL_96BYTES ((uint32_t)0x00000010U) 1309 #define ETH_RECEIVEDTHRESHOLDCONTROL_128BYTES ((uint32_t)0x00000018U) 1317 #define ETH_SECONDFRAMEOPERARTE_ENABLE ((uint32_t)0x00000004U) 1318 #define ETH_SECONDFRAMEOPERARTE_DISABLE ((uint32_t)0x00000000U) 1326 #define ETH_ADDRESSALIGNEDBEATS_ENABLE ((uint32_t)0x02000000U) 1327 #define ETH_ADDRESSALIGNEDBEATS_DISABLE ((uint32_t)0x00000000U) 1335 #define ETH_FIXEDBURST_ENABLE ((uint32_t)0x00010000U) 1336 #define ETH_FIXEDBURST_DISABLE ((uint32_t)0x00000000U) 1344 #define ETH_RXDMABURSTLENGTH_1BEAT ((uint32_t)0x00020000U) 1345 #define ETH_RXDMABURSTLENGTH_2BEAT ((uint32_t)0x00040000U) 1346 #define ETH_RXDMABURSTLENGTH_4BEAT ((uint32_t)0x00080000U) 1347 #define ETH_RXDMABURSTLENGTH_8BEAT ((uint32_t)0x00100000U) 1348 #define ETH_RXDMABURSTLENGTH_16BEAT ((uint32_t)0x00200000U) 1349 #define ETH_RXDMABURSTLENGTH_32BEAT ((uint32_t)0x00400000U) 1350 #define ETH_RXDMABURSTLENGTH_4XPBL_4BEAT ((uint32_t)0x01020000U) 1351 #define ETH_RXDMABURSTLENGTH_4XPBL_8BEAT ((uint32_t)0x01040000U) 1352 #define ETH_RXDMABURSTLENGTH_4XPBL_16BEAT ((uint32_t)0x01080000U) 1353 #define ETH_RXDMABURSTLENGTH_4XPBL_32BEAT ((uint32_t)0x01100000U) 1354 #define ETH_RXDMABURSTLENGTH_4XPBL_64BEAT ((uint32_t)0x01200000U) 1355 #define ETH_RXDMABURSTLENGTH_4XPBL_128BEAT ((uint32_t)0x01400000U) 1363 #define ETH_TXDMABURSTLENGTH_1BEAT ((uint32_t)0x00000100U) 1364 #define ETH_TXDMABURSTLENGTH_2BEAT ((uint32_t)0x00000200U) 1365 #define ETH_TXDMABURSTLENGTH_4BEAT ((uint32_t)0x00000400U) 1366 #define ETH_TXDMABURSTLENGTH_8BEAT ((uint32_t)0x00000800U) 1367 #define ETH_TXDMABURSTLENGTH_16BEAT ((uint32_t)0x00001000U) 1368 #define ETH_TXDMABURSTLENGTH_32BEAT ((uint32_t)0x00002000U) 1369 #define ETH_TXDMABURSTLENGTH_4XPBL_4BEAT ((uint32_t)0x01000100U) 1370 #define ETH_TXDMABURSTLENGTH_4XPBL_8BEAT ((uint32_t)0x01000200U) 1371 #define ETH_TXDMABURSTLENGTH_4XPBL_16BEAT ((uint32_t)0x01000400U) 1372 #define ETH_TXDMABURSTLENGTH_4XPBL_32BEAT ((uint32_t)0x01000800U) 1373 #define ETH_TXDMABURSTLENGTH_4XPBL_64BEAT ((uint32_t)0x01001000U) 1374 #define ETH_TXDMABURSTLENGTH_4XPBL_128BEAT ((uint32_t)0x01002000U) 1382 #define ETH_DMAENHANCEDDESCRIPTOR_ENABLE ((uint32_t)0x00000080U) 1383 #define ETH_DMAENHANCEDDESCRIPTOR_DISABLE ((uint32_t)0x00000000U) 1391 #define ETH_DMAARBITRATION_ROUNDROBIN_RXTX_1_1 ((uint32_t)0x00000000U) 1392 #define ETH_DMAARBITRATION_ROUNDROBIN_RXTX_2_1 ((uint32_t)0x00004000U) 1393 #define ETH_DMAARBITRATION_ROUNDROBIN_RXTX_3_1 ((uint32_t)0x00008000U) 1394 #define ETH_DMAARBITRATION_ROUNDROBIN_RXTX_4_1 ((uint32_t)0x0000C000U) 1395 #define ETH_DMAARBITRATION_RXPRIORTX ((uint32_t)0x00000002U) 1403 #define ETH_DMATXDESC_LASTSEGMENTS ((uint32_t)0x40000000U) 1404 #define ETH_DMATXDESC_FIRSTSEGMENT ((uint32_t)0x20000000U) 1412 #define ETH_DMATXDESC_CHECKSUMBYPASS ((uint32_t)0x00000000U) 1413 #define ETH_DMATXDESC_CHECKSUMIPV4HEADER ((uint32_t)0x00400000U) 1414 #define ETH_DMATXDESC_CHECKSUMTCPUDPICMPSEGMENT ((uint32_t)0x00800000U) 1415 #define ETH_DMATXDESC_CHECKSUMTCPUDPICMPFULL ((uint32_t)0x00C00000U) 1423 #define ETH_DMARXDESC_BUFFER1 ((uint32_t)0x00000000U) 1424 #define ETH_DMARXDESC_BUFFER2 ((uint32_t)0x00000001U) 1432 #define ETH_PMT_FLAG_WUFFRPR ((uint32_t)0x80000000U) 1433 #define ETH_PMT_FLAG_WUFR ((uint32_t)0x00000040U) 1434 #define ETH_PMT_FLAG_MPR ((uint32_t)0x00000020U) 1442 #define ETH_MMC_IT_TGF ((uint32_t)0x00200000U) 1443 #define ETH_MMC_IT_TGFMSC ((uint32_t)0x00008000U) 1444 #define ETH_MMC_IT_TGFSC ((uint32_t)0x00004000U) 1452 #define ETH_MMC_IT_RGUF ((uint32_t)0x10020000U) 1453 #define ETH_MMC_IT_RFAE ((uint32_t)0x10000040U) 1454 #define ETH_MMC_IT_RFCE ((uint32_t)0x10000020U) 1462 #define ETH_MAC_FLAG_TST ((uint32_t)0x00000200U) 1463 #define ETH_MAC_FLAG_MMCT ((uint32_t)0x00000040U) 1464 #define ETH_MAC_FLAG_MMCR ((uint32_t)0x00000020U) 1465 #define ETH_MAC_FLAG_MMC ((uint32_t)0x00000010U) 1466 #define ETH_MAC_FLAG_PMT ((uint32_t)0x00000008U) 1474 #define ETH_DMA_FLAG_TST ((uint32_t)0x20000000U) 1475 #define ETH_DMA_FLAG_PMT ((uint32_t)0x10000000U) 1476 #define ETH_DMA_FLAG_MMC ((uint32_t)0x08000000U) 1477 #define ETH_DMA_FLAG_DATATRANSFERERROR ((uint32_t)0x00800000U) 1478 #define ETH_DMA_FLAG_READWRITEERROR ((uint32_t)0x01000000U) 1479 #define ETH_DMA_FLAG_ACCESSERROR ((uint32_t)0x02000000U) 1480 #define ETH_DMA_FLAG_NIS ((uint32_t)0x00010000U) 1481 #define ETH_DMA_FLAG_AIS ((uint32_t)0x00008000U) 1482 #define ETH_DMA_FLAG_ER ((uint32_t)0x00004000U) 1483 #define ETH_DMA_FLAG_FBE ((uint32_t)0x00002000U) 1484 #define ETH_DMA_FLAG_ET ((uint32_t)0x00000400U) 1485 #define ETH_DMA_FLAG_RWT ((uint32_t)0x00000200U) 1486 #define ETH_DMA_FLAG_RPS ((uint32_t)0x00000100U) 1487 #define ETH_DMA_FLAG_RBU ((uint32_t)0x00000080U) 1488 #define ETH_DMA_FLAG_R ((uint32_t)0x00000040U) 1489 #define ETH_DMA_FLAG_TU ((uint32_t)0x00000020U) 1490 #define ETH_DMA_FLAG_RO ((uint32_t)0x00000010U) 1491 #define ETH_DMA_FLAG_TJT ((uint32_t)0x00000008U) 1492 #define ETH_DMA_FLAG_TBU ((uint32_t)0x00000004U) 1493 #define ETH_DMA_FLAG_TPS ((uint32_t)0x00000002U) 1494 #define ETH_DMA_FLAG_T ((uint32_t)0x00000001U) 1502 #define ETH_MAC_IT_TST ((uint32_t)0x00000200U) 1503 #define ETH_MAC_IT_MMCT ((uint32_t)0x00000040U) 1504 #define ETH_MAC_IT_MMCR ((uint32_t)0x00000020U) 1505 #define ETH_MAC_IT_MMC ((uint32_t)0x00000010U) 1506 #define ETH_MAC_IT_PMT ((uint32_t)0x00000008U) 1514 #define ETH_DMA_IT_TST ((uint32_t)0x20000000U) 1515 #define ETH_DMA_IT_PMT ((uint32_t)0x10000000U) 1516 #define ETH_DMA_IT_MMC ((uint32_t)0x08000000U) 1517 #define ETH_DMA_IT_NIS ((uint32_t)0x00010000U) 1518 #define ETH_DMA_IT_AIS ((uint32_t)0x00008000U) 1519 #define ETH_DMA_IT_ER ((uint32_t)0x00004000U) 1520 #define ETH_DMA_IT_FBE ((uint32_t)0x00002000U) 1521 #define ETH_DMA_IT_ET ((uint32_t)0x00000400U) 1522 #define ETH_DMA_IT_RWT ((uint32_t)0x00000200U) 1523 #define ETH_DMA_IT_RPS ((uint32_t)0x00000100U) 1524 #define ETH_DMA_IT_RBU ((uint32_t)0x00000080U) 1525 #define ETH_DMA_IT_R ((uint32_t)0x00000040U) 1526 #define ETH_DMA_IT_TU ((uint32_t)0x00000020U) 1527 #define ETH_DMA_IT_RO ((uint32_t)0x00000010U) 1528 #define ETH_DMA_IT_TJT ((uint32_t)0x00000008U) 1529 #define ETH_DMA_IT_TBU ((uint32_t)0x00000004U) 1530 #define ETH_DMA_IT_TPS ((uint32_t)0x00000002U) 1531 #define ETH_DMA_IT_T ((uint32_t)0x00000001U) 1539 #define ETH_DMA_TRANSMITPROCESS_STOPPED ((uint32_t)0x00000000U) 1540 #define ETH_DMA_TRANSMITPROCESS_FETCHING ((uint32_t)0x00100000U) 1541 #define ETH_DMA_TRANSMITPROCESS_WAITING ((uint32_t)0x00200000U) 1542 #define ETH_DMA_TRANSMITPROCESS_READING ((uint32_t)0x00300000U) 1543 #define ETH_DMA_TRANSMITPROCESS_SUSPENDED ((uint32_t)0x00600000U) 1544 #define ETH_DMA_TRANSMITPROCESS_CLOSING ((uint32_t)0x00700000U) 1554 #define ETH_DMA_RECEIVEPROCESS_STOPPED ((uint32_t)0x00000000U) 1555 #define ETH_DMA_RECEIVEPROCESS_FETCHING ((uint32_t)0x00020000U) 1556 #define ETH_DMA_RECEIVEPROCESS_WAITING ((uint32_t)0x00060000U) 1557 #define ETH_DMA_RECEIVEPROCESS_SUSPENDED ((uint32_t)0x00080000U) 1558 #define ETH_DMA_RECEIVEPROCESS_CLOSING ((uint32_t)0x000A0000U) 1559 #define ETH_DMA_RECEIVEPROCESS_QUEUING ((uint32_t)0x000E0000U) 1568 #define ETH_DMA_OVERFLOW_RXFIFOCOUNTER ((uint32_t)0x10000000U) 1569 #define ETH_DMA_OVERFLOW_MISSEDFRAMECOUNTER ((uint32_t)0x00010000U) 1577 #define ETH_EXTI_LINE_WAKEUP ((uint32_t)0x00080000U) 1597 #define __HAL_ETH_RESET_HANDLE_STATE(__HANDLE__) ((__HANDLE__)->State = HAL_ETH_STATE_RESET) 1605 #define __HAL_ETH_DMATXDESC_GET_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->TxDesc->Status & (__FLAG__) == (__FLAG__)) 1613 #define __HAL_ETH_DMARXDESC_GET_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->RxDesc->Status & (__FLAG__) == (__FLAG__)) 1620 #define __HAL_ETH_DMARXDESC_ENABLE_IT(__HANDLE__) ((__HANDLE__)->RxDesc->ControlBufferSize &=(~(uint32_t)ETH_DMARXDESC_DIC)) 1627 #define __HAL_ETH_DMARXDESC_DISABLE_IT(__HANDLE__) ((__HANDLE__)->RxDesc->ControlBufferSize |= ETH_DMARXDESC_DIC) 1634 #define __HAL_ETH_DMARXDESC_SET_OWN_BIT(__HANDLE__) ((__HANDLE__)->RxDesc->Status |= ETH_DMARXDESC_OWN) 1641 #define __HAL_ETH_DMATXDESC_GET_COLLISION_COUNT(__HANDLE__) (((__HANDLE__)->TxDesc->Status & ETH_DMATXDESC_CC) >> ETH_DMATXDESC_COLLISION_COUNTSHIFT) 1648 #define __HAL_ETH_DMATXDESC_SET_OWN_BIT(__HANDLE__) ((__HANDLE__)->TxDesc->Status |= ETH_DMATXDESC_OWN) 1655 #define __HAL_ETH_DMATXDESC_ENABLE_IT(__HANDLE__) ((__HANDLE__)->TxDesc->Status |= ETH_DMATXDESC_IC) 1662 #define __HAL_ETH_DMATXDESC_DISABLE_IT(__HANDLE__) ((__HANDLE__)->TxDesc->Status &= ~ETH_DMATXDESC_IC) 1675 #define __HAL_ETH_DMATXDESC_CHECKSUM_INSERTION(__HANDLE__, __CHECKSUM__) ((__HANDLE__)->TxDesc->Status |= (__CHECKSUM__)) 1682 #define __HAL_ETH_DMATXDESC_CRC_ENABLE(__HANDLE__) ((__HANDLE__)->TxDesc->Status &= ~ETH_DMATXDESC_DC) 1689 #define __HAL_ETH_DMATXDESC_CRC_DISABLE(__HANDLE__) ((__HANDLE__)->TxDesc->Status |= ETH_DMATXDESC_DC) 1696 #define __HAL_ETH_DMATXDESC_SHORT_FRAME_PADDING_ENABLE(__HANDLE__) ((__HANDLE__)->TxDesc->Status &= ~ETH_DMATXDESC_DP) 1703 #define __HAL_ETH_DMATXDESC_SHORT_FRAME_PADDING_DISABLE(__HANDLE__) ((__HANDLE__)->TxDesc->Status |= ETH_DMATXDESC_DP) 1715 #define __HAL_ETH_MAC_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->MACIMR |= (__INTERRUPT__)) 1727 #define __HAL_ETH_MAC_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->MACIMR &= ~(__INTERRUPT__)) 1734 #define __HAL_ETH_INITIATE_PAUSE_CONTROL_FRAME(__HANDLE__) ((__HANDLE__)->Instance->MACFCR |= ETH_MACFCR_FCBBPA) 1741 #define __HAL_ETH_GET_FLOW_CONTROL_BUSY_STATUS(__HANDLE__) (((__HANDLE__)->Instance->MACFCR & ETH_MACFCR_FCBBPA) == ETH_MACFCR_FCBBPA) 1748 #define __HAL_ETH_BACK_PRESSURE_ACTIVATION_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MACFCR |= ETH_MACFCR_FCBBPA) 1755 #define __HAL_ETH_BACK_PRESSURE_ACTIVATION_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MACFCR &= ~ETH_MACFCR_FCBBPA) 1769 #define __HAL_ETH_MAC_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->MACSR &( __FLAG__)) == ( __FLAG__)) 1778 #define __HAL_ETH_DMA_ENABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DMAIER |= (__INTERRUPT__)) 1787 #define __HAL_ETH_DMA_DISABLE_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DMAIER &= ~(__INTERRUPT__)) 1795 #define __HAL_ETH_DMA_CLEAR_IT(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->DMASR =(__INTERRUPT__)) 1803 #define __HAL_ETH_DMA_GET_FLAG(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->DMASR &( __FLAG__)) == ( __FLAG__)) 1811 #define __HAL_ETH_DMA_CLEAR_FLAG(__HANDLE__, __FLAG__) ((__HANDLE__)->Instance->DMASR = (__FLAG__)) 1822 #define __HAL_ETH_GET_DMA_OVERFLOW_STATUS(__HANDLE__, __OVERFLOW__) (((__HANDLE__)->Instance->DMAMFBOCR & (__OVERFLOW__)) == (__OVERFLOW__)) 1830 #define __HAL_ETH_SET_RECEIVE_WATCHDOG_TIMER(__HANDLE__, __VALUE__) ((__HANDLE__)->Instance->DMARSWTR = (__VALUE__)) 1838 #define __HAL_ETH_GLOBAL_UNICAST_WAKEUP_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR |= ETH_MACPMTCSR_GU) 1846 #define __HAL_ETH_GLOBAL_UNICAST_WAKEUP_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR &= ~ETH_MACPMTCSR_GU) 1853 #define __HAL_ETH_WAKEUP_FRAME_DETECTION_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR |= ETH_MACPMTCSR_WFE) 1860 #define __HAL_ETH_WAKEUP_FRAME_DETECTION_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR &= ~ETH_MACPMTCSR_WFE) 1867 #define __HAL_ETH_MAGIC_PACKET_DETECTION_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR |= ETH_MACPMTCSR_MPE) 1874 #define __HAL_ETH_MAGIC_PACKET_DETECTION_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR &= ~ETH_MACPMTCSR_WFE) 1881 #define __HAL_ETH_POWER_DOWN_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR |= ETH_MACPMTCSR_PD) 1888 #define __HAL_ETH_POWER_DOWN_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MACPMTCSR &= ~ETH_MACPMTCSR_PD) 1900 #define __HAL_ETH_GET_PMT_FLAG_STATUS(__HANDLE__, __FLAG__) (((__HANDLE__)->Instance->MACPMTCSR &( __FLAG__)) == ( __FLAG__)) 1907 #define __HAL_ETH_MMC_COUNTER_FULL_PRESET(__HANDLE__) ((__HANDLE__)->Instance->MMCCR |= (ETH_MMCCR_MCFHP | ETH_MMCCR_MCP)) 1914 #define __HAL_ETH_MMC_COUNTER_HALF_PRESET(__HANDLE__) do{(__HANDLE__)->Instance->MMCCR &= ~ETH_MMCCR_MCFHP;\ 1915 (__HANDLE__)->Instance->MMCCR |= ETH_MMCCR_MCP;} while (0) 1922 #define __HAL_ETH_MMC_COUNTER_FREEZE_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MMCCR |= ETH_MMCCR_MCF) 1929 #define __HAL_ETH_MMC_COUNTER_FREEZE_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MMCCR &= ~ETH_MMCCR_MCF) 1936 #define __HAL_ETH_ETH_MMC_RESET_ONREAD_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MMCCR |= ETH_MMCCR_ROR) 1943 #define __HAL_ETH_ETH_MMC_RESET_ONREAD_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MMCCR &= ~ETH_MMCCR_ROR) 1950 #define __HAL_ETH_ETH_MMC_COUNTER_ROLLOVER_ENABLE(__HANDLE__) ((__HANDLE__)->Instance->MMCCR &= ~ETH_MMCCR_CSR) 1957 #define __HAL_ETH_ETH_MMC_COUNTER_ROLLOVER_DISABLE(__HANDLE__) ((__HANDLE__)->Instance->MMCCR |= ETH_MMCCR_CSR) 1964 #define __HAL_ETH_MMC_COUNTERS_RESET(__HANDLE__) ((__HANDLE__)->Instance->MMCCR |= ETH_MMCCR_CR) 1976 #define __HAL_ETH_MMC_RX_IT_ENABLE(__HANDLE__, __INTERRUPT__) (__HANDLE__)->Instance->MMCRIMR &= ~((__INTERRUPT__) & 0xEFFFFFFF) 1987 #define __HAL_ETH_MMC_RX_IT_DISABLE(__HANDLE__, __INTERRUPT__) (__HANDLE__)->Instance->MMCRIMR |= ((__INTERRUPT__) & 0xEFFFFFFF) 1998 #define __HAL_ETH_MMC_TX_IT_ENABLE(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->MMCRIMR &= ~ (__INTERRUPT__)) 2010 #define __HAL_ETH_MMC_TX_IT_DISABLE(__HANDLE__, __INTERRUPT__) ((__HANDLE__)->Instance->MMCRIMR |= (__INTERRUPT__)) 2016 #define __HAL_ETH_WAKEUP_EXTI_ENABLE_IT() EXTI->IMR |= (ETH_EXTI_LINE_WAKEUP) 2022 #define __HAL_ETH_WAKEUP_EXTI_DISABLE_IT() EXTI->IMR &= ~(ETH_EXTI_LINE_WAKEUP) 2028 #define __HAL_ETH_WAKEUP_EXTI_ENABLE_EVENT() EXTI->EMR |= (ETH_EXTI_LINE_WAKEUP) 2034 #define __HAL_ETH_WAKEUP_EXTI_DISABLE_EVENT() EXTI->EMR &= ~(ETH_EXTI_LINE_WAKEUP) 2040 #define __HAL_ETH_WAKEUP_EXTI_GET_FLAG() EXTI->PR & (ETH_EXTI_LINE_WAKEUP) 2046 #define __HAL_ETH_WAKEUP_EXTI_CLEAR_FLAG() EXTI->PR = (ETH_EXTI_LINE_WAKEUP) 2052 #define __HAL_ETH_WAKEUP_EXTI_ENABLE_RISING_EDGE_TRIGGER() EXTI->RTSR |= ETH_EXTI_LINE_WAKEUP 2058 #define __HAL_ETH_WAKEUP_EXTI_DISABLE_RISING_EDGE_TRIGGER() EXTI->RTSR &= ~(ETH_EXTI_LINE_WAKEUP) 2064 #define __HAL_ETH_WAKEUP_EXTI_ENABLE_FALLING_EDGE_TRIGGER() EXTI->FTSR |= (ETH_EXTI_LINE_WAKEUP) 2070 #define __HAL_ETH_WAKEUP_EXTI_DISABLE_FALLING_EDGE_TRIGGER() EXTI->FTSR &= ~(ETH_EXTI_LINE_WAKEUP) 2076 #define __HAL_ETH_WAKEUP_EXTI_ENABLE_FALLINGRISING_TRIGGER() EXTI->RTSR |= ETH_EXTI_LINE_WAKEUP;\ 2077 EXTI->FTSR |= ETH_EXTI_LINE_WAKEUP 2083 #define __HAL_ETH_WAKEUP_EXTI_DISABLE_FALLINGRISING_TRIGGER() EXTI->RTSR &= ~(ETH_EXTI_LINE_WAKEUP);\ 2084 EXTI->FTSR &= ~(ETH_EXTI_LINE_WAKEUP) 2090 #define __HAL_ETH_WAKEUP_EXTI_GENERATE_SWIT() EXTI->SWIER|= ETH_EXTI_LINE_WAKEUP HAL_StatusTypeDef HAL_ETH_GetReceivedFrame(ETH_HandleTypeDef *heth)
uint32_t RxDMABurstLength
ETH_DMADescTypeDef * RxDesc
uint32_t UnicastPauseFrameDetect
HAL_ETH_StateTypeDef
HAL State structures definition.
uint32_t AddressAlignedBeats
void HAL_ETH_ErrorCallback(ETH_HandleTypeDef *heth)
HAL_StatusTypeDef HAL_ETH_Stop(ETH_HandleTypeDef *heth)
HAL_StatusTypeDef HAL_ETH_Start(ETH_HandleTypeDef *heth)
ETH DMA Configuration Structure definition.
ETH_DMADescTypeDef * TxDesc
ETH DMA Descriptors data structure definition.
uint32_t AutomaticPadCRCStrip
void HAL_ETH_MspDeInit(ETH_HandleTypeDef *heth)
uint32_t PassControlFrames
HAL_LockTypeDef
HAL Lock structures definition.
uint32_t DestinationAddrFilter
uint32_t TransmitStoreForward
HAL_StatusTypeDef HAL_ETH_ConfigDMA(ETH_HandleTypeDef *heth, ETH_DMAInitTypeDef *dmaconf)
uint32_t SourceAddrFilter
HAL_StatusTypeDef HAL_ETH_DeInit(ETH_HandleTypeDef *heth)
uint32_t DescriptorSkipLength
HAL_StatusTypeDef HAL_ETH_DMATxDescListInit(ETH_HandleTypeDef *heth, ETH_DMADescTypeDef *DMATxDescTab, uint8_t *TxBuff, uint32_t TxBuffCount)
uint32_t SecondFrameOperate
uint32_t BroadcastFramesReception
uint32_t Buffer2NextDescAddr
ETH_DMADescTypeDef * FSRxDesc
void HAL_ETH_IRQHandler(ETH_HandleTypeDef *heth)
HAL_StatusTypeDef HAL_ETH_TransmitFrame(ETH_HandleTypeDef *heth, uint32_t FrameLength)
uint32_t ForwardUndersizedGoodFrames
HAL_StatusTypeDef HAL_ETH_ReadPHYRegister(ETH_HandleTypeDef *heth, uint16_t PHYReg, uint32_t *RegValue)
ETH_DMADescTypeDef * LSRxDesc
Received Frame Informations structure definition.
ETH MAC Configuration Structure definition.
uint32_t PauseLowThreshold
uint32_t ReceiveFlowControl
uint32_t EnhancedDescriptorFormat
uint32_t ForwardErrorFrames
uint32_t TransmitFlowControl
HAL_ETH_StateTypeDef HAL_ETH_GetState(ETH_HandleTypeDef *heth)
HAL_StatusTypeDef HAL_ETH_ConfigMAC(ETH_HandleTypeDef *heth, ETH_MACInitTypeDef *macconf)
void HAL_ETH_MspInit(ETH_HandleTypeDef *heth)
Initializes the ETH MSP.
ETH_DMARxFrameInfos RxFrameInfos
uint32_t FlushReceivedFrame
uint32_t MulticastFramesFilter
HAL_StatusTypeDef HAL_ETH_DMARxDescListInit(ETH_HandleTypeDef *heth, ETH_DMADescTypeDef *DMARxDescTab, uint8_t *RxBuff, uint32_t RxBuffCount)
HAL_StatusTypeDef HAL_ETH_GetReceivedFrame_IT(ETH_HandleTypeDef *heth)
void HAL_ETH_TxCpltCallback(ETH_HandleTypeDef *heth)
This file contains HAL common defines, enumeration, macros and structures definitions.
void HAL_ETH_RxCpltCallback(ETH_HandleTypeDef *heth)
Ethernet Rx Transfer completed callback.
uint32_t UnicastFramesFilter
uint32_t VLANTagIdentifier
uint32_t DropTCPIPChecksumErrorFrame
uint32_t ReceiveStoreForward
uint32_t RetryTransmission
__IO HAL_ETH_StateTypeDef State
HAL_StatusTypeDef
HAL Status structures definition.
HAL_StatusTypeDef HAL_ETH_WritePHYRegister(ETH_HandleTypeDef *heth, uint16_t PHYReg, uint32_t RegValue)
uint32_t ReceiveThresholdControl
HAL_StatusTypeDef HAL_ETH_Init(ETH_HandleTypeDef *heth)
uint32_t TxDMABurstLength
ETH Handle Structure definition.
ETH Init Structure definition.
uint32_t TransmitThresholdControl
uint32_t ControlBufferSize
uint32_t VLANTagComparison