serial: sh: Add HSCIF support for R-Car SoC
Provide the basic HSCIF support for R-Car SoC.
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
[Marek: Fill in HSSRR offset for Gen2 and SCBRR calculation for Gen2 and Gen3]
Reviewed-by: Simon Glass <sjg@chromium.org>
diff --git a/drivers/serial/serial_sh.c b/drivers/serial/serial_sh.c
index e08bdca..20cda5d 100644
--- a/drivers/serial/serial_sh.c
+++ b/drivers/serial/serial_sh.c
@@ -57,6 +57,9 @@
#if defined(CONFIG_RZA1)
sci_out(port, SCSPTR, 0x0003);
#endif
+
+ if (port->type == PORT_HSCIF)
+ sci_out(port, HSSRR, HSSRR_SRE | HSSRR_SRCYC8);
}
static void
@@ -205,6 +208,7 @@
{.compatible = "renesas,sci", .data = PORT_SCI},
{.compatible = "renesas,scif", .data = PORT_SCIF},
{.compatible = "renesas,scifa", .data = PORT_SCIFA},
+ {.compatible = "renesas,hscif", .data = PORT_HSCIF},
{}
};
@@ -257,6 +261,8 @@
#define SCIF_BASE_PORT PORT_SCIFA
#elif defined(CFG_SCI)
#define SCIF_BASE_PORT PORT_SCI
+#elif defined(CFG_HSCIF)
+ #define SCIF_BASE_PORT PORT_HSCIF
#else
#define SCIF_BASE_PORT PORT_SCIF
#endif