I have a fixed-stack OTA bootloadable project. The current bootloadable does not rotate bonded devices in the bonding list. So the 5th device that attempts to pair fails authentication. I would like to add a feature to remove the oldest bonded device when the list is full, using CyBle_GapRemoveOldestDeviceFromBondedList(). However, that function is not available to the bootloadable. I know that I can rebuild the bootloader, run the mk.bat script, and edit the linker scripts to make it available when I compile the bootloadable; but apparently the resulting bootloadable is incompatible with the old version of the bootloader that is currently flashed to the chip.
It is possible to introduce the desired feature to the bootloadable over the air while still keeping the old version of the bootloader?
For adding the new API (CyBle_GapRemoveOldestDeviceFromBondedList()), you have to include the same in the linker scripts of bootloader as you mentioned. Thus you have to update the bootloader project as well and have to reprogram the chip again.
There is no other way to include the API in bootloadable of Fixed stack.