/*
 * Copyright 2021, 2023, 2024 NXP
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;

#include <nxp/nxp_imx8m.dtsi>
#include <nxp/nxp_imx/mimx8ml8dvnlz-pinctrl.dtsi>

/ {
	model = "NXP i.MX 8MPLUS Audio DSP";
	compatible = "nxp";

	chosen {
		zephyr,sram = &sram0;

		zephyr,console = &uart4;
		zephyr,shell-uart = &uart4;
	};
};

&pinctrl {
	uart4_default: uart4_default {
		group0 {
			pinmux = <&iomuxc_uart4_rxd_uart_rx_uart4_rx>,
				<&iomuxc_uart4_txd_uart_tx_uart4_tx>;
			bias-pull-up;
			slew-rate = "slow";
			drive-strength = "x1";
		};
	};
};

&uart4 {
	status = "okay";
	current-speed = <115200>;
	pinctrl-0 = <&uart4_default>;
	pinctrl-names = "default";
};
