[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250204-exynos7870-uart-v1-2-06be6aa96284@disroot.org>
Date: Tue, 04 Feb 2025 02:08:46 +0530
From: Kaustabh Chakraborty <kauschluss@...root.org>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jirislaby@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk@...nel.org>, Conor Dooley <conor@...nel.org>,
Alim Akhtar <alim.akhtar@...sung.com>
Cc: Sergey Lisov <sleirsgoevy@...il.com>, linux-kernel@...r.kernel.org,
linux-serial@...r.kernel.org, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, linux-samsung-soc@...r.kernel.org,
Kaustabh Chakraborty <kauschluss@...root.org>
Subject: [PATCH 2/2] tty: serial: samsung: add support for exynos7870
Add serial UART support for Exynos7870. The FIFO sizes are not defined
in the driver, and they must be provided in the devicetree with the
samsung,uart-fifosize property.
Signed-off-by: Kaustabh Chakraborty <kauschluss@...root.org>
---
drivers/tty/serial/samsung_tty.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/drivers/tty/serial/samsung_tty.c b/drivers/tty/serial/samsung_tty.c
index 210fff7164c138e315d20ccaa4a29ce6a7bb2dfe..c8607633fea40df2ec221cfd3653c726094127cb 100644
--- a/drivers/tty/serial/samsung_tty.c
+++ b/drivers/tty/serial/samsung_tty.c
@@ -2493,6 +2493,12 @@ static const struct s3c24xx_serial_drv_data exynos5433_serial_drv_data = {
.fifosize = { 64, 256, 16, 256 },
};
+static const struct s3c24xx_serial_drv_data exynos7870_serial_drv_data = {
+ EXYNOS_COMMON_SERIAL_DRV_DATA,
+ /* samsung,uart-fifosize must be specified in the device tree. */
+ .fifosize = { 0 },
+};
+
static const struct s3c24xx_serial_drv_data exynos850_serial_drv_data = {
EXYNOS_COMMON_SERIAL_DRV_DATA,
.fifosize = { 256, 64, 64, 64 },
@@ -2533,6 +2539,7 @@ static const struct s3c24xx_serial_drv_data gs101_serial_drv_data = {
#define EXYNOS4210_SERIAL_DRV_DATA (&exynos4210_serial_drv_data)
#define EXYNOS5433_SERIAL_DRV_DATA (&exynos5433_serial_drv_data)
+#define EXYNOS7870_SERIAL_DRV_DATA (&exynos7870_serial_drv_data)
#define EXYNOS850_SERIAL_DRV_DATA (&exynos850_serial_drv_data)
#define EXYNOS8895_SERIAL_DRV_DATA (&exynos8895_serial_drv_data)
#define GS101_SERIAL_DRV_DATA (&gs101_serial_drv_data)
@@ -2540,6 +2547,7 @@ static const struct s3c24xx_serial_drv_data gs101_serial_drv_data = {
#else
#define EXYNOS4210_SERIAL_DRV_DATA NULL
#define EXYNOS5433_SERIAL_DRV_DATA NULL
+#define EXYNOS7870_SERIAL_DRV_DATA NULL
#define EXYNOS850_SERIAL_DRV_DATA NULL
#define EXYNOS8895_SERIAL_DRV_DATA NULL
#define GS101_SERIAL_DRV_DATA NULL
@@ -2622,6 +2630,9 @@ static const struct platform_device_id s3c24xx_serial_driver_ids[] = {
}, {
.name = "s5l-uart",
.driver_data = (kernel_ulong_t)S5L_SERIAL_DRV_DATA,
+ }, {
+ .name = "exynos7870-uart",
+ .driver_data = (kernel_ulong_t)EXYNOS7870_SERIAL_DRV_DATA,
}, {
.name = "exynos850-uart",
.driver_data = (kernel_ulong_t)EXYNOS850_SERIAL_DRV_DATA,
@@ -2651,6 +2662,8 @@ static const struct of_device_id s3c24xx_uart_dt_match[] = {
.data = EXYNOS5433_SERIAL_DRV_DATA },
{ .compatible = "apple,s5l-uart",
.data = S5L_SERIAL_DRV_DATA },
+ { .compatible = "samsung,exynos7870-uart",
+ .data = EXYNOS7870_SERIAL_DRV_DATA },
{ .compatible = "samsung,exynos850-uart",
.data = EXYNOS850_SERIAL_DRV_DATA },
{ .compatible = "axis,artpec8-uart",
--
2.48.1
Powered by blists - more mailing lists