/* param base Multi-Rate timer peripheral base address param channel Timer channel number param count Timer period in units of ticks param immediateLoad true: Load the new value immediately into the TIMER register; false: Load the new value at the end of current timer interval  */
void MRT_UpdateTimerPeriod(MRT_Type *base, mrt_chnl_t channel, uint32_t count, bool immediateLoad)
/* param base Multi-Rate timer peripheral base address param channel Timer channel number param count Timer period in units of ticks param immediateLoad true: Load the new value immediately into the TIMER register; false: Load the new value at the end of current timer interval  */
void MRT_UpdateTimerPeriod(MRT_Type *base, mrt_chnl_t channel, uint32_t count, bool immediateLoad)
{
    assert((uint8_t)channel < (uint8_t)FSL_FEATURE_MRT_NUMBER_OF_CHANNELS);
    uint32_t newValue = count;
    if (((base->CHANNEL[channel].CTRL & MRT_CHANNEL_CTRL_MODE_MASK) == (uint8_t)kMRT_OneShotMode) || (immediateLoad))
    {
        newValue |= MRT_CHANNEL_INTVAL_LOAD_MASK;
    }
    base->CHANNEL[channel].INTVAL = newValue;
}