- The ThreadX IAR ports only use the heap when TX_ENABLE_IAR_LIBRARY_SUPPORT is defined. This is because the IAR libraries use the heap.
- You would have to contact IAR support for how to reduce their heap implementation.
- It may be possible to use a ThreadX byte pool instead of the IAR heap; you would need to create a byte pool, redefine the malloc and free functions to tx_byte_allocate and tx_byte_release, and possibly redefine other functions as well. We have not tried to implement this.
- To use the IAR libraries, these extensions need to be defined - this is already done in tx_port.h, e.g. https://github.com/azure-rtos/threadx/blob/54cda6ee9e68cd9701d759df13e3f6e41429b9bc/ports/cortex_m4/iar/inc/tx_port.h#L267-L285
Do you need to use the IAR libraries? If not, then you don't need to do any of the above.