boards: frdm_mcxn947: Add support for SPI and DMA

Add support for SPI and DMA

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
This commit is contained in:
Mahesh Mahadevan 2024-03-20 22:16:46 -05:00 committed by Anas Nashif
commit f4bad0a49c
6 changed files with 40 additions and 0 deletions

View file

@ -94,6 +94,11 @@ static int frdm_mcxn947_init(void)
/* Set AHBCLKDIV divider to value 1 */ /* Set AHBCLKDIV divider to value 1 */
CLOCK_SetClkDiv(kCLOCK_DivAhbClk, 1U); CLOCK_SetClkDiv(kCLOCK_DivAhbClk, 1U);
#if DT_NODE_HAS_STATUS(DT_NODELABEL(flexcomm1), okay)
CLOCK_SetClkDiv(kCLOCK_DivFlexcom1Clk, 1u);
CLOCK_AttachClk(kFRO12M_to_FLEXCOMM1);
#endif
#if DT_NODE_HAS_STATUS(DT_NODELABEL(flexcomm4), okay) #if DT_NODE_HAS_STATUS(DT_NODELABEL(flexcomm4), okay)
CLOCK_SetClkDiv(kCLOCK_DivFlexcom4Clk, 1u); CLOCK_SetClkDiv(kCLOCK_DivFlexcom4Clk, 1u);
CLOCK_AttachClk(kFRO12M_to_FLEXCOMM4); CLOCK_AttachClk(kFRO12M_to_FLEXCOMM4);

View file

@ -59,6 +59,10 @@ The FRDM-MCXN947 board configuration supports the following hardware features:
| UART | on-chip | serial port-polling; | | UART | on-chip | serial port-polling; |
| | | serial port-interrupt | | | | serial port-interrupt |
+-----------+------------+-------------------------------------+ +-----------+------------+-------------------------------------+
| SPI | on-chip | spi |
+-----------+------------+-------------------------------------+
| DMA | on-chip | dma |
+-----------+------------+-------------------------------------+
| CLOCK | on-chip | clock_control | | CLOCK | on-chip | clock_control |
+-----------+------------+-------------------------------------+ +-----------+------------+-------------------------------------+
| FLASH | on-chip | soc flash | | FLASH | on-chip | soc flash |

View file

@ -7,6 +7,18 @@
#include <nxp/mcx/MCXN947VDF-pinctrl.h> #include <nxp/mcx/MCXN947VDF-pinctrl.h>
&pinctrl { &pinctrl {
pinmux_flexcomm1_lpspi: pinmux_flexcomm1_lpspi {
group0 {
pinmux = <FC1_P0_PIO0_24>,
<FC1_P1_PIO0_25>,
<FC1_P2_PIO0_26>,
<FC1_P3_PIO0_27>;
slew-rate = "fast";
drive-strength = "low";
input-enable;
};
};
pinmux_flexcomm4_lpuart: pinmux_flexcomm4_lpuart { pinmux_flexcomm4_lpuart: pinmux_flexcomm4_lpuart {
group0 { group0 {
pinmux = <FC4_P0_PIO1_8>, pinmux = <FC4_P0_PIO1_8>,

View file

@ -49,6 +49,11 @@
}; };
}; };
&flexcomm1_lpspi1 {
pinctrl-0 = <&pinmux_flexcomm1_lpspi>;
pinctrl-names = "default";
};
&flexcomm4_lpuart4 { &flexcomm4_lpuart4 {
current-speed = <115200>; current-speed = <115200>;
pinctrl-0 = <&pinmux_flexcomm4_lpuart>; pinctrl-0 = <&pinmux_flexcomm4_lpuart>;

View file

@ -65,6 +65,18 @@
status = "okay"; status = "okay";
}; };
&edma0 {
status = "okay";
};
&flexcomm1 {
status = "okay";
};
&flexcomm1_lpspi1 {
status = "okay";
};
&flexcomm4 { &flexcomm4 {
status = "okay"; status = "okay";
}; };

View file

@ -15,5 +15,7 @@ toolchain:
- gnuarmemb - gnuarmemb
- xtools - xtools
supported: supported:
- dma
- gpio - gpio
- spi
vendor: nxp vendor: nxp