75 result = (
void *)(descr->
RDES2.
U);
92 buffer = ((
void *)descr->
TDES2.
U);
137 Ifx_ETH_BUS_MODE busMode;
138 busMode.U = ETH_BUS_MODE.U;
143 ETH_BUS_MODE.U = busMode.U;
148 Ifx_ETH_MAC_CONFIGURATION ethMacCfg;
149 ethMacCfg.U = ETH_MAC_CONFIGURATION.U;
151 ethMacCfg.B.PRELEN = 0;
169 ethMacCfg.B.TWOKPE = 0;
171 ETH_MAC_CONFIGURATION.U = ethMacCfg.U;
177 ETH_MMC_CONTROL.B.CNTFREEZ = 1;
180 ETH_STATUS.U = 0x0001e7ff;
181 ETH_MAC_FRAME_FILTER.U = 0x00000010;
183 ETH_INTERRUPT_ENABLE.U = 0x00010041;
222 {0x00, 0x11, 0x22, 0x33, 0x44, 0x55},
235 *config = defaultConfig;
258 #if !IFXETH_RX_BUFFER_BY_USER
302 #if !IFXETH_TX_BUFFER_BY_USER
333 *((
uint32 *)macAddress) = ETH_MAC_ADDRESS_G00_LOW.U;
334 *((
uint16 *)(&macAddress[4])) = (
uint16)(ETH_MAC_ADDRESS_G00_HIGH.U & 0xFFFFU);
347 while (0 == ETH_KRST0.B.RSTSTAT)
351 ETH_KRSTCLR.B.CLR = 1;
381 ETH_MAC_ADDRESS_G00_HIGH.U = 0
382 | ((
uint32)macAddress[4] << 0U)
383 | ((
uint32)macAddress[5] << 8U)
386 ETH_MAC_ADDRESS_G00_LOW.U = 0
387 | ((
uint32)macAddress[0] << 0U)
388 | ((
uint32)macAddress[1] << 8U)
389 | ((
uint32)macAddress[2] << 16U)
390 | ((
uint32)macAddress[3] << 24U)
401 ETH_OPERATION_MODE.B.TSF = 1U;
402 ETH_OPERATION_MODE.B.DT = 0U;
403 ETH_MAC_CONFIGURATION.B.IPC = 1U;
434 ETH_GPCTL.B.ALTI1 = rxClk->
select;
435 ETH_GPCTL.B.ALTI2 = crs->
select;
436 ETH_GPCTL.B.ALTI3 = col->
select;
437 ETH_GPCTL.B.ALTI4 = rxDv->
select;
438 ETH_GPCTL.B.ALTI5 = rxEr->
select;
439 ETH_GPCTL.B.ALTI6 = rxd0->
select;
440 ETH_GPCTL.B.ALTI7 = rxd1->
select;
441 ETH_GPCTL.B.ALTI8 = rxd2->
select;
442 ETH_GPCTL.B.ALTI9 = rxd3->
select;
443 ETH_GPCTL.B.ALTI10 = txClk->
select;
572 ETH_OPERATION_MODE.B.SR = 1;
573 ETH_MAC_CONFIGURATION.B.RE = 1;
574 ETH_RECEIVE_POLL_DEMAND.U = 1;
582 ETH_MAC_CONFIGURATION.B.TE = 1;
583 ETH_OPERATION_MODE.B.ST = 1;
584 ETH_TRANSMIT_POLL_DEMAND.U = 1;
592 ETH_TRANSMIT_POLL_DEMAND.U = 0;
593 ETH_OPERATION_MODE.B.ST = 0;
594 ETH_MAC_CONFIGURATION.B.TE = 0;
600 eth->
status.U = ETH_STATUS.U;
603 if (eth->
status.U & (4U << IFX_ETH_STATUS_RS_OFF))
607 ETH_STATUS.U = (IFX_ETH_STATUS_RU_MSK << IFX_ETH_STATUS_RU_OFF);
617 eth->
status.U = ETH_STATUS.U;
620 if (eth->
status.U & 0x00600000)
625 ETH_STATUS.U = (IFX_ETH_STATUS_TU_MSK << IFX_ETH_STATUS_TU_OFF) |
626 (IFX_ETH_STATUS_UNF_MSK << IFX_ETH_STATUS_UNF_OFF);
640 for (i = 0; i < 6; i++)
642 *txBuffer++ = *destinationAddress++;
646 for (i = 0; i < 6; i++)
648 *txBuffer++ = *sourceAddress++;
652 *txBuffer++ = (
uint8)(packetSize / 256);
653 *txBuffer = (
uint8)(packetSize % 256);