boolean MACNET_install_isrs( ENET_CONTEXT_STRUCT_PTR enet_ptr, MACNET_INIT_STRUCT const * enet_init_ptr ) { boolean bOK; #if PSP_MQX_CPU_IS_VYBRID bOK = MACNET_install_isr (enet_ptr, 0, ENET_INT_RX_TX, MACNET_RX_TX_ISR, enet_init_ptr->ETX_LEVEL, enet_init_ptr->ETX_SUBLEVEL); #else bOK = MACNET_install_isr(enet_ptr, 0, ENET_INT_TX_INTB, MACNET_TX_ISR, enet_init_ptr->ETX_LEVEL,enet_init_ptr->ETX_SUBLEVEL ) ; if (bOK) { bOK = MACNET_install_isr(enet_ptr, 1, ENET_INT_TX_INTF, MACNET_TX_ISR, enet_init_ptr->ETX_LEVEL,enet_init_ptr->ETX_SUBLEVEL ) ; } if (bOK) { bOK = MACNET_install_isr(enet_ptr, 2, ENET_INT_RX_INTB, MACNET_RX_ISR, enet_init_ptr->ERX_LEVEL,enet_init_ptr->ERX_SUBLEVEL ) ; } if (bOK) { bOK = MACNET_install_isr(enet_ptr, 3, ENET_INT_RX_INTF, MACNET_RX_ISR, enet_init_ptr->ERX_LEVEL,enet_init_ptr->ERX_SUBLEVEL ) ; } #endif // PSP_MQX_CPU_IS_VYBRID #if ENETCFG_SUPPORT_PTP if (bOK) { bOK = MACNET_ptp_install_ts_avail_isr(enet_ptr, enet_init_ptr ) ; } /* Just one MACNET module handles 1588timer and incrementation of seconds */ if (bOK && (enet_ptr->PARAM_PTR->OPTIONS & ENET_OPTION_PTP_MASTER_CLK)) { bOK = MACNET_ptp_install_ts_timer_isr(enet_ptr, enet_init_ptr ) ; } #endif /* ENETCFG_SUPPORT_PTP */ return bOK; }
bool MACNET_ptp_install_ts_timer_isr( ENET_CONTEXT_STRUCT_PTR enet_ptr, MACNET_INIT_STRUCT const * enet_init_ptr) { return (MACNET_install_isr(enet_ptr, 5, ENET_INT_TS_TIMER, MACNET_ptp_increment_seconds, enet_init_ptr->ETX_LEVEL - 1, 0)) ; }