Which version of FreeRTOS-LTS should I use with v2022.2 Vitis Xilinx FreeRTOS port ( v10.4.6 kernel )?

I’m using vitis v2022.2 which provides a xilinx freertos port that’s based on the v10.4.6 freertos kernel. I looked through the list of LTS freertos releases and none of the releases match up with a kernel version of v10.4.6 exactly.

Can I use a freertos lts release that was developed for the v10.4.6 kernel? v10.5.0 kernel perhaps?

I think that should be fine - GitHub - FreeRTOS/FreeRTOS-LTS at 202210-LTS. Let us know if you face any problem.

image

My target hw is a Zynq UltraScale+ MPSoC. Should I use the network interface in the “Zynq” folder or the “Xilinx Ultrascale” folder?

Since you are on a Zynq UltraScale+MPSoC which runs Cortex A53 64Gb , you should be using Xilinx Ultrascale Network interface.
It mentions here in the readme .

1 Like

Would you be able to point me to the section of code that controls how long the DHCP prediscovery phase will last before using the default ip address?

I was able to find the section of code that controls discovery, but not prediscovery. I ended up modifying the xApplicationDHCPHook() function so it returns “eDHCPUseDefaults” after being called 100 times…but I’d rather know how to get dhcp to give up during prediscovery the right way

Are you looking for this - FreeRTOS-Plus-TCP/source/FreeRTOS_DHCP.c at main · FreeRTOS/FreeRTOS-Plus-TCP · GitHub?

@arecksiedler0531

This part of the code sets the initial timer period:

/* Timer parameters */
#ifndef dhcpINITIAL_TIMER_PERIOD
    /** @brief The interval at which the DHCP state handler is called. */
    #define dhcpINITIAL_TIMER_PERIOD    ( pdMS_TO_TICKS( 250U ) )
#endif

it wait till that time before sending the first discover, afterwards, it uses the ipconfigMAXIMUM_DISCOVER_TX_PERIOD period to switch to static IP if the period between un responded discover messages exceeds that time period.

If you dont want to use DHCP at all and default to static IP address you can do that on endpoint basis by disabling bWantDHCP flag of the endpoint or by disabling DHCP (ipconfigUSE_DHCP) all together.

1 Like