diff --git a/hal/targets.json b/hal/targets.json index 21c7382adae..123c4d42a62 100644 --- a/hal/targets.json +++ b/hal/targets.json @@ -521,7 +521,7 @@ "default_toolchain": "ARM", "detect_code": ["0261"], "progen_target": {"target": "frdm-kl27z"}, - "device_has": ["ANALOGIN", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"], + "device_has": ["ANALOGIN", "ERROR_RED", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTOUT", "PWMOUT", "RTC", "SERIAL", "SLEEP", "SPI", "SPISLAVE", "STDIO_MESSAGES"], "default_build": "standard" }, "K64F": { diff --git a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_KL27Z/pwmout_api.c b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_KL27Z/pwmout_api.c index dd5e5fd1b3c..a2a90e8b8b2 100644 --- a/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_KL27Z/pwmout_api.c +++ b/hal/targets/hal/TARGET_Freescale/TARGET_KSDK2_MCUS/TARGET_KL27Z/pwmout_api.c @@ -34,6 +34,9 @@ void pwmout_init(pwmout_t* obj, PinName pin) { obj->pwm_name = pwm; uint32_t pwm_base_clock; + + /* Set the TPM clock source to be IRC 48M */ + CLOCK_SetTpmClock(1U); pwm_base_clock = CLOCK_GetFreq(kCLOCK_McgIrc48MClk); float clkval = (float)pwm_base_clock / 1000000.0f; uint32_t clkdiv = 0;