From fdd7e78d3c718d5e1ef0e7ceda68bfcbd0552bcd Mon Sep 17 00:00:00 2001 From: Daniel DeGrasse Date: Fri, 9 Jun 2023 15:07:33 +0000 Subject: [PATCH] boards: arm: mimxrt1060_evk: added additional PWM outputs Added PWM outputs to arduino header, to make testing PWM support with this EVK simpler. These PWM outputs are enabled by the pwm_api test, although they are not used. The user can enable the PWM shell in order to test these PWM outputs. Signed-off-by: Daniel DeGrasse --- .../mimxrt1060_evk-pinctrl.dtsi | 25 ++++++++++++++++++- boards/arm/mimxrt1060_evk/mimxrt1060_evk.dts | 12 ++++++++- .../pwm/pwm_api/boards/mimxrt1060_evk.overlay | 18 +++++++++++++ 3 files changed, 53 insertions(+), 2 deletions(-) create mode 100644 tests/drivers/pwm/pwm_api/boards/mimxrt1060_evk.overlay diff --git a/boards/arm/mimxrt1060_evk/mimxrt1060_evk-pinctrl.dtsi b/boards/arm/mimxrt1060_evk/mimxrt1060_evk-pinctrl.dtsi index 38eb539577b..7d2ff7a43e4 100644 --- a/boards/arm/mimxrt1060_evk/mimxrt1060_evk-pinctrl.dtsi +++ b/boards/arm/mimxrt1060_evk/mimxrt1060_evk-pinctrl.dtsi @@ -98,7 +98,7 @@ }; /* flexpwm output for board LED */ - pinmux_flexpwm2: pinmux_flexpwm2 { + pinmux_flexpwm2_3: pinmux_flexpwm2_3 { group0 { pinmux = <&iomuxc_gpio_ad_b0_09_flexpwm2_pwma3>; drive-strength = "r0-4"; @@ -109,6 +109,29 @@ }; }; + /* Conflicts with SD and SPI pins. Requires R281/R356 be populated */ + pinmux_flexpwm1_0: pinmux_flexpwm1_0 { + group0 { + pinmux = <&iomuxc_gpio_sd_b0_01_flexpwm1_pwmb0>; + drive-strength = "r0-4"; + bias-pull-up; + bias-pull-up-value = "47k"; + slew-rate = "slow"; + nxp,speed = "100-mhz"; + }; + }; + + pinmux_flexpwm1: pinmux_flexpwm1 { + group0 { + pinmux = <&iomuxc_gpio_ad_b0_10_flexpwm1_pwma3>; + drive-strength = "r0-4"; + bias-pull-up; + bias-pull-up-value = "47k"; + slew-rate = "slow"; + nxp,speed = "100-mhz"; + }; + }; + pinmux_flexspi1: pinmux_flexspi1 { group0 { pinmux = <&iomuxc_gpio_sd_b1_05_flexspi_a_dqs>; diff --git a/boards/arm/mimxrt1060_evk/mimxrt1060_evk.dts b/boards/arm/mimxrt1060_evk/mimxrt1060_evk.dts index 2b2f352d1c3..998e942e5a2 100644 --- a/boards/arm/mimxrt1060_evk/mimxrt1060_evk.dts +++ b/boards/arm/mimxrt1060_evk/mimxrt1060_evk.dts @@ -238,7 +238,17 @@ zephyr_udc0: &usb1 { &flexpwm2_pwm3 { status = "okay"; - pinctrl-0 = <&pinmux_flexpwm2>; + pinctrl-0 = <&pinmux_flexpwm2_3>; + pinctrl-names = "default"; +}; + +&flexpwm1_pwm0 { + pinctrl-0 = <&pinmux_flexpwm1_0>; + pinctrl-names = "default"; +}; + +&flexpwm1_pwm3 { + pinctrl-0 = <&pinmux_flexpwm1>; pinctrl-names = "default"; }; diff --git a/tests/drivers/pwm/pwm_api/boards/mimxrt1060_evk.overlay b/tests/drivers/pwm/pwm_api/boards/mimxrt1060_evk.overlay new file mode 100644 index 00000000000..ebd3af9f582 --- /dev/null +++ b/tests/drivers/pwm/pwm_api/boards/mimxrt1060_evk.overlay @@ -0,0 +1,18 @@ +/* + * Copyright 2023 NXP + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/* + * Enable PWM outputs on J24 pin 3 and J22 pin 6. These outputs are not used + * by the test, but can be tested using the PWM shell. + */ + +&flexpwm1_pwm3 { + status = "okay"; +}; + +&flexpwm1_pwm0 { + status = "okay"; +};