serial: Add another instance to the mcux lpuart driver

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
diff --git a/drivers/serial/Kconfig.mcux_lpuart b/drivers/serial/Kconfig.mcux_lpuart
index bd1010a..62a9cee 100644
--- a/drivers/serial/Kconfig.mcux_lpuart
+++ b/drivers/serial/Kconfig.mcux_lpuart
@@ -22,4 +22,10 @@
 	help
 	  Enable UART 0.
 
+menuconfig UART_MCUX_LPUART_1
+	bool "UART 1"
+	default n
+	help
+	  Enable UART 1.
+
 endif # UART_MCUX_LPUART
diff --git a/drivers/serial/uart_mcux_lpuart.c b/drivers/serial/uart_mcux_lpuart.c
index 163459a..763b409 100644
--- a/drivers/serial/uart_mcux_lpuart.c
+++ b/drivers/serial/uart_mcux_lpuart.c
@@ -318,3 +318,41 @@
 #endif
 
 #endif /* CONFIG_UART_MCUX_LPUART_0 */
+
+#ifdef CONFIG_UART_MCUX_LPUART_1
+
+#ifdef CONFIG_UART_INTERRUPT_DRIVEN
+static void mcux_lpuart_config_func_1(struct device *dev);
+#endif
+
+static const struct mcux_lpuart_config mcux_lpuart_1_config = {
+	.base = (LPUART_Type *) CONFIG_UART_MCUX_LPUART_1_BASE_ADDRESS,
+	.clock_name = CONFIG_UART_MCUX_LPUART_1_CLOCK_NAME,
+	.clock_subsys =
+		(clock_control_subsys_t)CONFIG_UART_MCUX_LPUART_1_CLOCK_SUBSYS,
+	.baud_rate = CONFIG_UART_MCUX_LPUART_1_BAUD_RATE,
+#ifdef CONFIG_UART_INTERRUPT_DRIVEN
+	.irq_config_func = mcux_lpuart_config_func_1,
+#endif
+};
+
+static struct mcux_lpuart_data mcux_lpuart_1_data;
+
+DEVICE_AND_API_INIT(uart_1, CONFIG_UART_MCUX_LPUART_1_NAME,
+		    &mcux_lpuart_init,
+		    &mcux_lpuart_1_data, &mcux_lpuart_1_config,
+		    PRE_KERNEL_1, CONFIG_KERNEL_INIT_PRIORITY_DEVICE,
+		    &mcux_lpuart_driver_api);
+
+#ifdef CONFIG_UART_INTERRUPT_DRIVEN
+static void mcux_lpuart_config_func_1(struct device *dev)
+{
+	IRQ_CONNECT(CONFIG_UART_MCUX_LPUART_1_IRQ,
+		    CONFIG_UART_MCUX_LPUART_1_IRQ_PRI,
+		    mcux_lpuart_isr, DEVICE_GET(uart_1), 0);
+
+	irq_enable(CONFIG_UART_MCUX_LPUART_1_IRQ);
+}
+#endif
+
+#endif /* CONFIG_UART_MCUX_LPUART_1 */