boards: frdm_mcxn947: Add support for dac
Add support for dac
Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
diff --git a/boards/nxp/frdm_mcxn947/board.c b/boards/nxp/frdm_mcxn947/board.c
index ca94058..6f55c21 100644
--- a/boards/nxp/frdm_mcxn947/board.c
+++ b/boards/nxp/frdm_mcxn947/board.c
@@ -132,6 +132,22 @@
CLOCK_EnableClock(kCLOCK_Gpio5);
#endif
+#if DT_NODE_HAS_STATUS(DT_NODELABEL(dac0), okay)
+ SPC_EnableActiveModeAnalogModules(SPC0, kSPC_controlDac0);
+ CLOCK_SetClkDiv(kCLOCK_DivDac0Clk, 1u);
+ CLOCK_AttachClk(kFRO_HF_to_DAC0);
+
+ CLOCK_EnableClock(kCLOCK_Dac0);
+#endif
+
+#if DT_NODE_HAS_STATUS(DT_NODELABEL(dac1), okay)
+ SPC_EnableActiveModeAnalogModules(SPC0, kSPC_controlDac1);
+ CLOCK_SetClkDiv(kCLOCK_DivDac1Clk, 1u);
+ CLOCK_AttachClk(kFRO_HF_to_DAC1);
+
+ CLOCK_EnableClock(kCLOCK_Dac1);
+#endif
+
/* Set SystemCoreClock variable. */
SystemCoreClock = CLOCK_INIT_CORE_CLOCK;
diff --git a/boards/nxp/frdm_mcxn947/doc/index.rst b/boards/nxp/frdm_mcxn947/doc/index.rst
index 06356a4..a11686c 100644
--- a/boards/nxp/frdm_mcxn947/doc/index.rst
+++ b/boards/nxp/frdm_mcxn947/doc/index.rst
@@ -69,6 +69,8 @@
+-----------+------------+-------------------------------------+
| FLEXSPI | on-chip | flash programming |
+-----------+------------+-------------------------------------+
+| DAC | on-chip | dac |
++-----------+------------+-------------------------------------+
Targets available
==================
diff --git a/boards/nxp/frdm_mcxn947/frdm_mcxn947-pinctrl.dtsi b/boards/nxp/frdm_mcxn947/frdm_mcxn947-pinctrl.dtsi
index 55b8bfe..4caf184 100644
--- a/boards/nxp/frdm_mcxn947/frdm_mcxn947-pinctrl.dtsi
+++ b/boards/nxp/frdm_mcxn947/frdm_mcxn947-pinctrl.dtsi
@@ -49,4 +49,12 @@
bias-pull-up;
};
};
+
+ pinmux_dac0: pinmux_dac0 {
+ group0 {
+ pinmux = <DAC0_OUT_PIO4_2>;
+ drive-strength = "low";
+ slew-rate = "fast";
+ };
+ };
};
diff --git a/boards/nxp/frdm_mcxn947/frdm_mcxn947.dtsi b/boards/nxp/frdm_mcxn947/frdm_mcxn947.dtsi
index 326da06..16dcd41 100644
--- a/boards/nxp/frdm_mcxn947/frdm_mcxn947.dtsi
+++ b/boards/nxp/frdm_mcxn947/frdm_mcxn947.dtsi
@@ -131,3 +131,8 @@
};
};
};
+
+&dac0 {
+ pinctrl-0 = <&pinmux_dac0>;
+ pinctrl-names = "default";
+};
diff --git a/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.dts b/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.dts
index 271fe4b..cdb52c6 100644
--- a/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.dts
+++ b/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.dts
@@ -92,3 +92,7 @@
&w25q64jvssiq {
status = "okay";
};
+
+&dac0 {
+ status = "okay";
+};
diff --git a/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.yaml b/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.yaml
index 372b46e..2222a8c 100644
--- a/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.yaml
+++ b/boards/nxp/frdm_mcxn947/frdm_mcxn947_mcxn947_cpu0.yaml
@@ -18,4 +18,5 @@
- dma
- gpio
- spi
+ - dac
vendor: nxp