From 54fed42f23350c8ade29cf812a2b859bf7fbba86 Mon Sep 17 00:00:00 2001 From: Henrik Brix Andersen Date: Mon, 21 Dec 2020 10:32:45 +0100 Subject: [PATCH] boards: arm: frdm_k64f: enable FlexTimer 0 as PWM Enable FlexTimer 0 (FTM0) as PWM and setup PTC1 as FTM0 channel 0 for use in PWM loopback test. Signed-off-by: Henrik Brix Andersen --- boards/arm/frdm_k64f/frdm_k64f.dts | 6 ++++++ boards/arm/frdm_k64f/pinmux.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/boards/arm/frdm_k64f/frdm_k64f.dts b/boards/arm/frdm_k64f/frdm_k64f.dts index 7f717ef336f..f587059e0f0 100644 --- a/boards/arm/frdm_k64f/frdm_k64f.dts +++ b/boards/arm/frdm_k64f/frdm_k64f.dts @@ -134,6 +134,12 @@ arduino_spi: &spi0 { status = "okay"; }; +&ftm0 { + status = "okay"; + compatible = "nxp,kinetis-ftm-pwm"; + #pwm-cells = <3>; +}; + &ftm3 { status = "okay"; compatible = "nxp,kinetis-ftm-pwm"; diff --git a/boards/arm/frdm_k64f/pinmux.c b/boards/arm/frdm_k64f/pinmux.c index f2c83630be4..8ff17d9fcf9 100644 --- a/boards/arm/frdm_k64f/pinmux.c +++ b/boards/arm/frdm_k64f/pinmux.c @@ -122,7 +122,13 @@ static int frdm_k64f_pinmux_init(const struct device *dev) pinmux_pin_set(portb, 10, PORT_PCR_MUX(kPORT_PinDisabledOrAnalog)); #endif -#if DT_NODE_HAS_COMPAT_STATUS(DT_NODELABEL(ftm3), nxp_kinetis_ftm_pwm, okay) && CONFIG_PWM +#if DT_NODE_HAS_COMPAT_STATUS(DT_NODELABEL(ftm0), nxp_kinetis_ftm_pwm, okay) \ + && CONFIG_PWM + pinmux_pin_set(portc, 1, PORT_PCR_MUX(kPORT_MuxAlt4)); +#endif + +#if DT_NODE_HAS_COMPAT_STATUS(DT_NODELABEL(ftm3), nxp_kinetis_ftm_pwm, okay) \ + && CONFIG_PWM pinmux_pin_set(portc, 8, PORT_PCR_MUX(kPORT_MuxAlt3)); pinmux_pin_set(portc, 9, PORT_PCR_MUX(kPORT_MuxAlt3)); #endif