Well, then there's a question if it's worth tying up with TI-RTOS and make the code hardly portable to other devices...
You certainly don't need to use TI-RTOS, you could just as easily use FreeRTOS or one of the many other RTOSes out there, or if you don't need the features provided by an RTOS, you could just go bare-metal.
As for portability, well it really depends on what you are developing, and since embedded programming is all about programming for hardware, I don't think the portability argument is the same as those for higher level programming like web development. For example, I need to use a SPI peripheral in my code, some of this code is going to be specific to the MCU and it will not matter if I use an RTOS or not, it just will not be easily ported to another chipset, even another chip of the same family can contain a lot of differences in code. The algorithms on the other hand, that I have created that perform the SPI communication are just C code, and these can be ported to what ever device quite easily, and most of the work is in these algorithms and not the hardware specific code.
From my perspective, if you don't need the code to be portable, it's just quicker and easier to use a completely integrated tool chain.
Anyway, these are just my thoughts, I know there are many arguments for both sides of this debate!