Hi,
Sorry for the delay reply.
I checked <ARM Cortex-m0+ generic user guide> with below description about CONTROL register :
In an OS environment, ARM recommends that threads running in Thread mode use the process stack and the kernel and exception handlers use the main stack.
By default, Thread mode uses the MSP. To switch the stack pointer used in Thread mode to the PSP, use the MSR instruction to set the active stack pointer bit to 1.
So I double check with KL25 MQX_LITE example and K60 MQX example, after the MQX RTOS boots up, it will switch the SP_process.
Below is KL25 MQX_Lite example CPU register info after MQX_Lite RTOS boot up:

And you could find below stack switch code at <boot.s> file, the SP_main and SP_process using the same SRAM address:
/* Prepare process stack pointer */
mrs r0, MSP
msr PSP, r0
/* Switch to proccess stack (PSP) */
mrs r0, CONTROL
movs r1, #0x2
orrs r0, r0, r1
msr CONTROL, r0
isb
Below is TWR-K60D100M board running MQX example CPU registers status:

Here is the stack pointer switch code at <boot.s>
| | /* Prepare process stack pointer */ |
| | mrs r0, MSP |
| | msr PSP, r0 |
| | /* Switch to proccess stack (PSP) */ |
| | mrs r0, CONTROL |
| | orr r0, r0, #2 |
| | msr CONTROL, r0 |
| | isb #15 |
So, the CONTROL_SPSEL bit could be set at all Kinetis product.
The Stack Pointer (SP) is register R13. In Thread mode, bit[1] of the CONTROL register indicates the stack pointer to use:
• 0 = Main Stack Pointer (MSP). This is the reset value.
• 1 = Process Stack Pointer (PSP).
On reset, the processor loads the MSP with the value from address 0x00000000.
Wish it helps.
Have a great day,
best regards,
Ma Hui
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------