MAX32630 pwmout_api crashes on startup

I’m getting a very frustrating error on a custom target project based on the MAX32630. My colleagues and I are trying to update the BLE UART implementation to function properly with Mbed 6 with limited prior source code and have run into this problem:

++ MbedOS Error Info ++
Error Status: 0x80FF0144 Code: 324 Module: 255
Error Message: Assertion failed: (pin_func < 1) || (pin_func > 3)
Location: 0x273FB
File: ./mbed-os/targets/TARGET_Maxim/TARGET_MAX32630/pwmout_api.c+61
Error Value: 0x0
Current Thread: main Id: 0x2000207C Entry: 0x3C1F StackSize: 0x1000 StackMem: 0x20001058 SP: 0x20001CFC 
main  State: 0x2 Entry: 0x00003C1F Stack Size: 0x00001000 Mem: 0x20001058 SP: 0x20001DA0
rtx_idle  State: 0x1 Entry: 0x00003D69 Stack Size: 0x00000200 Mem: 0x20000AF0 SP: 0x20000C90
rtx_timer  State: 0x83 Entry: 0x00003ABD Stack Size: 0x00000300 Mem: 0x20000CF0 SP: 0x20000F88
application_unnamed_thread  State: 0x43 Entry: 0x00028B2D Stack Size: 0x00001000 Mem: 0x2000A860 SP: 0x2000B780
For more info, visit:
-- MbedOS Error Info --

It appears that the initialisation sequence is finding one of the pins is already in use, or connected to a special function at startup. The line it appears to be referring to is:

    // Check if there is a pulse train already active on this port
    int pin_func = (MXC_GPIO->func_sel[port] & (MXC_GPIO_FUNC_SEL_FIELD_MASK << (port_pin * MXC_GPIO_FUNC_SEL_FIELD_WIDTH))) >>
                   (port_pin * MXC_GPIO_FUNC_SEL_FIELD_WIDTH);
    MBED_ASSERT((pin_func < 1) || (pin_func > 3));

My main questions are;

Has anyone encountered this error before? Are my assumptions accurate or am I actually looking in the wrong direction? Are there pitfalls to the BLE UART implementation in Cordio/Mbed I should be wary of?

Thank you in advance for any support you can give.