From patchwork Tue May 13 21:59:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Judith Mendez X-Patchwork-Id: 889827 Received: from fllvem-ot03.ext.ti.com (fllvem-ot03.ext.ti.com [198.47.19.245]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 282062770B; Tue, 13 May 2025 21:59:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.47.19.245 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747173587; cv=none; b=higyN6/1TDYkDSE3SyRtMTCdFposuwTfsL84t1+8qa6lAH27K0Y44O6EapJX+YlU4+imELJGILpxHhsseUWlgvT0089e/zAyiei8nl/wK79MjWAjPw7ZzXOgQPnaKFKPvDLbvx5zN2T1PtKU54j5Kad776vh4HNdh1Vq8uCBxDM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747173587; c=relaxed/simple; bh=ntDm6nMYwj9nso877Gv0Ll0lYiGUYVC4kTqiZ2cOGrM=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=dhrYqJPLIDt+zCLV7PLrNmm4drkHQkQRFNvRdlZKH69ka3Gfl0vWF11gIandEnv5t9vFcLZoJldH2owBwuiMh9ouE5Lab0u9eYMZZum9q338oZOXDBxY+3Fa2u+DnkY/YZV6wmfL36rlJNvA+yQW/nUosT0w4EJR4DYgRYd5Z9I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com; spf=pass smtp.mailfrom=ti.com; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b=VYO8tJDf; arc=none smtp.client-ip=198.47.19.245 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="VYO8tJDf" Received: from lelvem-sh02.itg.ti.com ([10.180.78.226]) by fllvem-ot03.ext.ti.com (8.15.2/8.15.2) with ESMTP id 54DLxa7l2425893; Tue, 13 May 2025 16:59:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1747173576; bh=qmQfcLpiSyLwy3Zc5zbrGssZMtkDmMAcUwLjz7QJh1g=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=VYO8tJDfkIroqj/Xvx4yPWEaQDxkcQSISNZS4QLwOtrV7lPkoxtGea5Lc8+WeNbov ZuZbj0hZA8xyXfAuSXGX+EytnYg9dnLaqXDVb3hwpRsuM+27CSb4IETYJDFITFs53t xYyW1bqhZGTvTxxFRX13wy1+wHJP5KtFsJCcO3kI= Received: from DLEE108.ent.ti.com (dlee108.ent.ti.com [157.170.170.38]) by lelvem-sh02.itg.ti.com (8.18.1/8.18.1) with ESMTPS id 54DLxZ021005887 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA256 bits=128 verify=FAIL); Tue, 13 May 2025 16:59:35 -0500 Received: from DLEE113.ent.ti.com (157.170.170.24) by DLEE108.ent.ti.com (157.170.170.38) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Tue, 13 May 2025 16:59:34 -0500 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DLEE113.ent.ti.com (157.170.170.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Tue, 13 May 2025 16:59:34 -0500 Received: from judy-hp.dhcp.ti.com (judy-hp.dhcp.ti.com [128.247.81.105]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 54DLxYdC111031; Tue, 13 May 2025 16:59:34 -0500 From: Judith Mendez To: Judith Mendez , Greg Kroah-Hartman , Jiri Slaby CC: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Nishanth Menon , Santosh Shilimkar , Vignesh Raghavendra , Tero Kristo , Bin Liu , Andy Shevchenko , Andrew Davis , , , , Subject: [PATCH 1/7] dt-bindings: serial: add binding documentation for TI PRUSS UART Date: Tue, 13 May 2025 16:59:28 -0500 Message-ID: <20250513215934.933807-2-jm@ti.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250513215934.933807-1-jm@ti.com> References: <20250513215934.933807-1-jm@ti.com> Precedence: bulk X-Mailing-List: linux-serial@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-C2ProcessedOrg: 333ef613-75bf-4e12-a4b1-8e3623f5dcea From: Bin Liu This adds the YAML DT binding for PRUSS UART on TI SoCs. Signed-off-by: Bin Liu Signed-off-by: Judith Mendez --- .../bindings/serial/ti,pruss-uart.yaml | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 Documentation/devicetree/bindings/serial/ti,pruss-uart.yaml diff --git a/Documentation/devicetree/bindings/serial/ti,pruss-uart.yaml b/Documentation/devicetree/bindings/serial/ti,pruss-uart.yaml new file mode 100644 index 000000000000..34a03d572333 --- /dev/null +++ b/Documentation/devicetree/bindings/serial/ti,pruss-uart.yaml @@ -0,0 +1,54 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/serial/ti,pruss-uart.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: TI PRUSS serial UART + +maintainers: + - Bin Liu + +description: | + The PRU subsystem has a serial UART peripheral based on the industry + standard TL16C550, with 16-byte TX/RX FIFOs. + +allOf: + - $ref: /schemas/serial.yaml# + +properties: + compatible: + items: + - const: ti,pruss-uart + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + interrupts: + maxItems: 1 + description: | + PRU UART interrupt mappings, containing an entry of 3 cell-values. + The first is the PRU System Event ID for PRU UART Interrupt Request. + The second is the PRU interrupt channel ID. + The third is the PRU host interrupt ID. + +required: + - compatible + - reg + - clocks + - interrupts + +additionalProperties: false + +examples: + - | + pruss_uart: serial@28000 { + compatible = "ti,pruss-uart"; + reg = <0x28000 0x40>; + clocks = <&k3_clks 81 13>; + interrupt-parent = <&pruss_intc>; + interrupts = <6 4 4>; + }; From patchwork Tue May 13 21:59:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Judith Mendez X-Patchwork-Id: 889825 Received: from fllvem-ot04.ext.ti.com (fllvem-ot04.ext.ti.com [198.47.19.246]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 90C15216386; Tue, 13 May 2025 21:59:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.47.19.246 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747173600; cv=none; b=Qs6PX3CZUuUxz3JkslhGV5/NY3sTMFTbW7vxYSh16Oxh6RJhxqX898JZWFtnmUEOzWhiWrNFytviF6rkafO1432c5xVdOgptcuEtiexdiMtafnPFlilMk7kMdew8XVdKUnMM8NYlvbqhP/3EA70tkIf6Y+rI5p29ucnwgkUSjoA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747173600; c=relaxed/simple; bh=7dM0csk/Le537zRg7Zsum00I82ANCkL4hbXK15kachY=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=hgJq5T/GpwdsmhEdRA39wN/LjjPn4calbf80TAPesj/jGTY7ODYMBYmGiORAV8T7kZsBncQuMSsH4iCjKFmFrp13Vz/dS6bmYA7h2u5hEFvHPFWJ9RAVd2pQmF7jE8m+Os8QtpAHYTTqVo+4LG6zVmCJ4zNRi/wYROQy9XBelNQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com; spf=pass smtp.mailfrom=ti.com; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b=Isxgsznd; arc=none smtp.client-ip=198.47.19.246 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="Isxgsznd" Received: from fllvem-sh03.itg.ti.com ([10.64.41.86]) by fllvem-ot04.ext.ti.com (8.15.2/8.15.2) with ESMTP id 54DLxaFo2965935; Tue, 13 May 2025 16:59:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1747173576; bh=0pISafSJiVZnu+3T2nuCjyIRJYlg9QHOnQKp4Z5jklI=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=IsxgsznddCdPywhjydnyipviNkC9XBG/eWHX1HwWW1Yxyx+q9VoiUjPrBJ4joR0sl R38j/DKlxxOWbdXmYxDaMvOmyZgCUXlpYORjuAV7NHZRpS2E5ITzsylQqvxUy2S2Ee g+3tGGKdfCm9AgljAz8kqyOxUyfrZWeDYw9POvHA= Received: from DLEE109.ent.ti.com (dlee109.ent.ti.com [157.170.170.41]) by fllvem-sh03.itg.ti.com (8.18.1/8.18.1) with ESMTPS id 54DLxZD62966904 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA256 bits=128 verify=FAIL); Tue, 13 May 2025 16:59:35 -0500 Received: from DLEE102.ent.ti.com (157.170.170.32) by DLEE109.ent.ti.com (157.170.170.41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Tue, 13 May 2025 16:59:34 -0500 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DLEE102.ent.ti.com (157.170.170.32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Tue, 13 May 2025 16:59:34 -0500 Received: from judy-hp.dhcp.ti.com (judy-hp.dhcp.ti.com [128.247.81.105]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 54DLxYdE111031; Tue, 13 May 2025 16:59:34 -0500 From: Judith Mendez To: Judith Mendez , Greg Kroah-Hartman , Jiri Slaby CC: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Nishanth Menon , Santosh Shilimkar , Vignesh Raghavendra , Tero Kristo , Bin Liu , Andy Shevchenko , Andrew Davis , , , , Subject: [PATCH 3/7] serial: 8250: Add PRUSS UART driver Date: Tue, 13 May 2025 16:59:30 -0500 Message-ID: <20250513215934.933807-4-jm@ti.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250513215934.933807-1-jm@ti.com> References: <20250513215934.933807-1-jm@ti.com> Precedence: bulk X-Mailing-List: linux-serial@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-C2ProcessedOrg: 333ef613-75bf-4e12-a4b1-8e3623f5dcea From: Bin Liu This adds a new serial 8250 driver that supports the UART in PRUSS or PRU_ICSS*. The UART sub-module is based on the industry standard TL16C550 UART controller, which has 16-bytes FIFO and supports 16x and 13x over samplings. Signed-off-by: Bin Liu Signed-off-by: Judith Mendez --- drivers/tty/serial/8250/8250_pruss.c | 178 +++++++++++++++++++++++++++ drivers/tty/serial/8250/Kconfig | 11 ++ drivers/tty/serial/8250/Makefile | 1 + 3 files changed, 190 insertions(+) create mode 100644 drivers/tty/serial/8250/8250_pruss.c diff --git a/drivers/tty/serial/8250/8250_pruss.c b/drivers/tty/serial/8250/8250_pruss.c new file mode 100644 index 000000000000..04a455580022 --- /dev/null +++ b/drivers/tty/serial/8250/8250_pruss.c @@ -0,0 +1,178 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Serial Port driver for PRUSS UART on TI platforms + * + * Copyright (C) 2025 by Texas Instruments Incorporated - http://www.ti.com/ + * Author: Bin Liu + */ +#include +#include +#include +#include +#include +#include + +#include "8250.h" + +/* PowerManagement and Emulation */ +#define PRUSS_UART_PEREMU_MGMT 12 +#define PRUSS_UART_TX_EN BIT(14) +#define PRUSS_UART_RX_EN BIT(13) +#define PRUSS_UART_FREE_RUN BIT(0) + +/* Oversampling Mode Select */ +#define PRUSS_UART_MDR 13 +#define PRUSS_UART_MDR_OSM_SEL_MASK BIT(0) +#define PRUSS_UART_MDR_16X_MODE 0 +#define PRUSS_UART_MDR_13X_MODE 1 + +struct pruss8250_data { + struct clk *clk; + int line; +}; + +static int pruss8250_startup(struct uart_port *port) +{ + int ret; + + port->serial_out(port, PRUSS_UART_PEREMU_MGMT, 0); + + ret = serial8250_do_startup(port); + if (!ret) + port->serial_out(port, PRUSS_UART_PEREMU_MGMT, PRUSS_UART_TX_EN | + PRUSS_UART_RX_EN | + PRUSS_UART_FREE_RUN); + + return ret; +} + +static unsigned int pruss8250_get_divisor(struct uart_port *port, + unsigned int baud, + unsigned int *frac) +{ + unsigned int uartclk = port->uartclk; + unsigned int div_13, div_16; + unsigned int abs_d13, abs_d16; + u16 quot; + + div_13 = DIV_ROUND_CLOSEST(uartclk, 13 * baud); + div_16 = DIV_ROUND_CLOSEST(uartclk, 16 * baud); + div_13 = div_13 ? : 1; + div_16 = div_16 ? : 1; + + abs_d13 = abs(baud - uartclk / 13 / div_13); + abs_d16 = abs(baud - uartclk / 16 / div_16); + + if (abs_d13 >= abs_d16) { + *frac = PRUSS_UART_MDR_16X_MODE; + quot = div_16; + } else { + *frac = PRUSS_UART_MDR_13X_MODE; + quot = div_13; + } + + return quot; +} + +static void pruss8250_set_divisor(struct uart_port *port, unsigned int baud, + unsigned int quot, unsigned int quot_frac) +{ + serial8250_do_set_divisor(port, baud, quot); + + /* + * quot_frac holds the MDR over-sampling mode + * which is set in pruss8250_get_divisor() + */ + quot_frac &= PRUSS_UART_MDR_OSM_SEL_MASK; + port->serial_out(port, PRUSS_UART_MDR, quot_frac); +} + +static int pruss8250_probe(struct platform_device *pdev) +{ + struct uart_8250_port port8250; + struct uart_port *port = &port8250.port; + struct device *dev = &pdev->dev; + struct pruss8250_data *data; + struct resource *res; + int ret; + + data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL); + if (!data) + return -ENOMEM; + + memset(&port8250, 0, sizeof(port8250)); + + res = platform_get_resource(pdev, IORESOURCE_MEM, 0); + if (!res) { + dev_err(&pdev->dev, "Failed to get resource"); + return -EINVAL; + } + + if (!port->uartclk) { + data->clk = devm_clk_get(dev, NULL); + if (IS_ERR(data->clk)) { + dev_err(dev, "Failed to get clock!\n"); + return -ENODEV; + } else { + port->uartclk = clk_get_rate(data->clk); + devm_clk_put(dev, data->clk); + } + } + + port->dev = dev; + port->mapbase = res->start; + port->mapsize = resource_size(res); + port->type = PORT_16550A; + port->flags = UPF_BOOT_AUTOCONF | UPF_FIXED_PORT | UPF_FIXED_TYPE | + UPF_IOREMAP; + port->startup = pruss8250_startup; + port->rs485_config = serial8250_em485_config; + port->get_divisor = pruss8250_get_divisor; + port->set_divisor = pruss8250_set_divisor; + + ret = uart_read_port_properties(port); + if (ret) + return ret; + + port->iotype = UPIO_MEM32; + port->regshift = 2; + + spin_lock_init(&port8250.port.lock); + port8250.capabilities = UART_CAP_FIFO | UART_CAP_AFE; + + ret = serial8250_register_8250_port(&port8250); + if (ret < 0) + return dev_err_probe(dev, ret, "Unable to register 8250 port.\n"); + + data->line = ret; + platform_set_drvdata(pdev, data); + return 0; +} + +static void pruss8250_remove(struct platform_device *pdev) +{ + struct pruss8250_data *data = platform_get_drvdata(pdev); + + serial8250_unregister_port(data->line); +} + +static const struct of_device_id pruss8250_of_match[] = { + { .compatible = "ti,pruss-uart", .data = (void *)PORT_16550A }, + { /* Sentinel */ } +}; +MODULE_DEVICE_TABLE(of, pruss8250_of_match); + +static struct platform_driver pruss8250_driver = { + .driver = { + .name = "pruss8250", + .of_match_table = pruss8250_of_match, + }, + .probe = pruss8250_probe, + .remove = pruss8250_remove, +}; + +module_platform_driver(pruss8250_driver); + +MODULE_AUTHOR("Bin Liu X-Patchwork-Id: 889826 Received: from fllvem-ot04.ext.ti.com (fllvem-ot04.ext.ti.com [198.47.19.246]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BF6421F76CA; Tue, 13 May 2025 21:59:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.47.19.246 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747173596; cv=none; b=r3V5ZXEwxBRAHPpxvmGgmYgfeyJbRZc/h7LfVK5CbSb8nPnXISoYiqLwUInoJTxXvf4FkcCEOQ1U5YKVZjMRKc8Q2lbvzaEebGKSLpOjIRdKOiF/tkHOzLKITu/cKZ7poGdgqhQbxyxKoU3HvUfzP3lclOsq8w9jxSWpc6cgmdc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747173596; c=relaxed/simple; bh=cXfb+cih4U/jRRz4hX6Tka2QfCFNSWJDDIrmRG8jo14=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Pqbsx2+exDCuKSJli+01N0tf3/4jL+KL5O+OfL+fqZ0ziGfyljcUb70g8M9v/hwpM5XfCE84KMtLe3n20zoanlfbAZdSrhtLKyTV5agdsk7j03Z49qBZH4YLy4QucwdfD29G7wEfWFwZmQgfD/RdJBdsePWvgaeuHZ55+xp1Zwg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com; spf=pass smtp.mailfrom=ti.com; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b=nYtAph87; arc=none smtp.client-ip=198.47.19.246 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="nYtAph87" Received: from lelvem-sh02.itg.ti.com ([10.180.78.226]) by fllvem-ot04.ext.ti.com (8.15.2/8.15.2) with ESMTP id 54DLxa6P2965927; Tue, 13 May 2025 16:59:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1747173576; bh=39lmcsKNJPXEA7+bGUZpLxZ0LoiPG+o0H7csu9OoDfk=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=nYtAph87BWKzTCTR45M7HmYjRXK7Fcu4RzAjf/3lYKHEPvrTZTFhb4U+8ti+WhEmx vNKKbdRgSEohZoQBYBIrQXzwTEXI4DBv4N+UvP7hHWn94aP/THV8eMIrdXA+tdWL7q elw22JHpp8SkcpbopVbtJr2DiOeOg4AqnBGKi9qw= Received: from DLEE113.ent.ti.com (dlee113.ent.ti.com [157.170.170.24]) by lelvem-sh02.itg.ti.com (8.18.1/8.18.1) with ESMTPS id 54DLxZhQ1005886 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA256 bits=128 verify=FAIL); Tue, 13 May 2025 16:59:35 -0500 Received: from DLEE110.ent.ti.com (157.170.170.21) by DLEE113.ent.ti.com (157.170.170.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Tue, 13 May 2025 16:59:35 -0500 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DLEE110.ent.ti.com (157.170.170.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Tue, 13 May 2025 16:59:35 -0500 Received: from judy-hp.dhcp.ti.com (judy-hp.dhcp.ti.com [128.247.81.105]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 54DLxYdF111031; Tue, 13 May 2025 16:59:34 -0500 From: Judith Mendez To: Judith Mendez , Greg Kroah-Hartman , Jiri Slaby CC: Rob Herring , Krzysztof Kozlowski , Conor Dooley , Nishanth Menon , Santosh Shilimkar , Vignesh Raghavendra , Tero Kristo , Bin Liu , Andy Shevchenko , Andrew Davis , , , , Subject: [PATCH 4/7] DONOTMERGE: arm64: dts: ti: k3-am64-main: Add PRU UART nodes Date: Tue, 13 May 2025 16:59:31 -0500 Message-ID: <20250513215934.933807-5-jm@ti.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250513215934.933807-1-jm@ti.com> References: <20250513215934.933807-1-jm@ti.com> Precedence: bulk X-Mailing-List: linux-serial@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-C2ProcessedOrg: 333ef613-75bf-4e12-a4b1-8e3623f5dcea There is one PRU UART module in each PRU_ICSSG for am64 SoC. Add a PRU UART child node in each ICSSG node in am64 main voltage domain .dtsi file for am64x device. Signed-off-by: Judith Mendez --- arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi index c7e5da37486a..5ba7b8a8dbcf 100644 --- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi +++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi @@ -1280,6 +1280,15 @@ icssg0_iepclk_mux: iepclk-mux@30 { }; }; + icssg0_uart: serial@28000 { + compatible = "ti,pruss-uart"; + reg = <0x28000 0x40>; + clocks = <&k3_clks 81 19>; + interrupt-parent = <&icssg0_intc>; + interrupts = <6 7 7>; + status = "disabled"; + }; + icssg0_iep0: iep@2e000 { compatible = "ti,am654-icss-iep"; reg = <0x2e000 0x1000>; @@ -1459,6 +1468,15 @@ icssg1_iepclk_mux: iepclk-mux@30 { }; }; + icssg1_uart: serial@28000 { + compatible = "ti,pruss-uart"; + reg = <0x28000 0x40>; + clocks = <&k3_clks 82 19>; + interrupt-parent = <&icssg1_intc>; + interrupts = <6 7 7>; + status = "disabled"; + }; + icssg1_iep0: iep@2e000 { compatible = "ti,am654-icss-iep"; reg = <0x2e000 0x1000>;