+ tcp complete deinit stm32f7

I have developed a bootloader that uses the FreeRTOS+tcp stack. I don’t find a safe way to de init the stack however, something like FreeRTOS_IP_Deinit.

I am using the stm32f769 and corresponding + tcp code.

Is there a suggested way to deinit the stack? Brute force stopping IP-Task may leave an interrupt in an indetermined state in the network stack.

Hello Erik, you’re raising a good point. The solution to this depends on the hardware.
The only interrupt that is being used by FreeRTOS+TCP is the general EMAC interrupt.
I think that it is enough just to disable mentioned interrupt.
There is a function HAL_ETH_Stop(), that might do the thing you need.

Well, for now I am trying something like:

vTaskSuspendAll();
xNetworkInterfaceDeInit();

//Added to NetworkInterface.c
BaseType_t xNetworkInterfaceDeInit(void) {
  HAL_ETH_Stop(&xETH);
  return HAL_ETH_DeInit(&xETH) == HAL_OK;
}