* Re: [PATCH] xen/serial: scif: add support for HSCIF
[not found] <20220127170008.271723-1-volodymyr_babchuk@epam.com>
@ 2022-01-27 17:18 ` Volodymyr Babchuk
2022-01-27 19:24 ` Oleksandr
0 siblings, 1 reply; 4+ messages in thread
From: Volodymyr Babchuk @ 2022-01-27 17:18 UTC (permalink / raw)
To: xen-devel@lists.xenproject.org, Stefano Stabellini, Julien Grall,
Bertrand Marquis, Oleksandr Tyshchenko
Cc: Volodymyr Babchuk
Hi Julien, Bertrand,
Sorry, I messed up with your e-mail addresses in the previous
email. Adding you correctly.
Volodymyr Babchuk <volodymyr_babchuk@epam.com> writes:
> HSCIF is a high-speed variant of Renesas SCIF serial interface. From
> Xen point of view, they almost the same, only difference is in FIFO
> size.
>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> xen/drivers/char/scif-uart.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/xen/drivers/char/scif-uart.c b/xen/drivers/char/scif-uart.c
> index ee204a11a4..8f4485bdfc 100644
> --- a/xen/drivers/char/scif-uart.c
> +++ b/xen/drivers/char/scif-uart.c
> @@ -47,6 +47,7 @@ enum port_types
> {
> SCIF_PORT,
> SCIFA_PORT,
> + HSCIF_PORT,
> NR_PORTS,
> };
>
> @@ -88,6 +89,17 @@ static const struct port_params port_params[NR_PORTS] =
> SCASCR_BRIE,
> .fifo_size = 64,
> },
> + [HSCIF_PORT] =
> + {
> + .status_reg = SCIF_SCFSR,
> + .tx_fifo_reg = SCIF_SCFTDR,
> + .rx_fifo_reg = SCIF_SCFRDR,
> + .overrun_reg = SCIF_SCLSR,
> + .overrun_mask = SCLSR_ORER,
> + .error_mask = SCFSR_PER | SCFSR_FER | SCFSR_BRK | SCFSR_ER,
> + .irq_flags = SCSCR_RIE | SCSCR_TIE | SCSCR_REIE,
> + .fifo_size = 128,
> + },
> };
>
> static void scif_uart_interrupt(int irq, void *data, struct cpu_user_regs *regs)
> @@ -288,6 +300,7 @@ static const struct dt_device_match scif_uart_dt_match[] __initconst =
> {
> { .compatible = "renesas,scif", .data = &port_params[SCIF_PORT] },
> { .compatible = "renesas,scifa", .data = &port_params[SCIFA_PORT] },
> + { .compatible = "renesas,hscif", .data = &port_params[HSCIF_PORT] },
> { /* sentinel */ },
> };
--
Volodymyr Babchuk at EPAM
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] xen/serial: scif: add support for HSCIF
2022-01-27 17:18 ` [PATCH] xen/serial: scif: add support for HSCIF Volodymyr Babchuk
@ 2022-01-27 19:24 ` Oleksandr
0 siblings, 0 replies; 4+ messages in thread
From: Oleksandr @ 2022-01-27 19:24 UTC (permalink / raw)
To: Volodymyr Babchuk, Julien Grall, Bertrand Marquis,
Oleksandr Tyshchenko
Cc: xen-devel@lists.xenproject.org, Stefano Stabellini
On 27.01.22 19:18, Volodymyr Babchuk wrote:
Hi Volodymyr
> Hi Julien, Bertrand,
>
> Sorry, I messed up with your e-mail addresses in the previous
> email. Adding you correctly.
>
> Volodymyr Babchuk <volodymyr_babchuk@epam.com> writes:
>
>> HSCIF is a high-speed variant of Renesas SCIF serial interface. From
>> Xen point of view, they almost the same, only difference is in FIFO
>> size.
>>
>> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
>> ---
>> xen/drivers/char/scif-uart.c | 13 +++++++++++++
>> 1 file changed, 13 insertions(+)
>>
>> diff --git a/xen/drivers/char/scif-uart.c b/xen/drivers/char/scif-uart.c
>> index ee204a11a4..8f4485bdfc 100644
>> --- a/xen/drivers/char/scif-uart.c
>> +++ b/xen/drivers/char/scif-uart.c
>> @@ -47,6 +47,7 @@ enum port_types
>> {
>> SCIF_PORT,
>> SCIFA_PORT,
>> + HSCIF_PORT,
>> NR_PORTS,
>> };
>>
>> @@ -88,6 +89,17 @@ static const struct port_params port_params[NR_PORTS] =
>> SCASCR_BRIE,
>> .fifo_size = 64,
>> },
>> + [HSCIF_PORT] =
>> + {
>> + .status_reg = SCIF_SCFSR,
>> + .tx_fifo_reg = SCIF_SCFTDR,
>> + .rx_fifo_reg = SCIF_SCFRDR,
>> + .overrun_reg = SCIF_SCLSR,
>> + .overrun_mask = SCLSR_ORER,
>> + .error_mask = SCFSR_PER | SCFSR_FER | SCFSR_BRK | SCFSR_ER,
>> + .irq_flags = SCSCR_RIE | SCSCR_TIE | SCSCR_REIE,
>> + .fifo_size = 128,
>> + },
>> };
>>
>> static void scif_uart_interrupt(int irq, void *data, struct cpu_user_regs *regs)
>> @@ -288,6 +300,7 @@ static const struct dt_device_match scif_uart_dt_match[] __initconst =
>> {
>> { .compatible = "renesas,scif", .data = &port_params[SCIF_PORT] },
>> { .compatible = "renesas,scifa", .data = &port_params[SCIFA_PORT] },
>> + { .compatible = "renesas,hscif", .data = &port_params[HSCIF_PORT] },
>> { /* sentinel */ },
>> };
nit: I would also update description string at the beginning of that file.
Driver for SCIF(A) ... ---> Driver for (H)SCIF(A) ...
With or without that change:
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>
--
Regards,
Oleksandr Tyshchenko
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] xen/serial: scif: add support for HSCIF
@ 2022-02-08 11:23 Volodymyr Babchuk
2022-02-09 12:25 ` Julien Grall
0 siblings, 1 reply; 4+ messages in thread
From: Volodymyr Babchuk @ 2022-02-08 11:23 UTC (permalink / raw)
To: xen-devel@lists.xenproject.org, Stefano Stabellini, Julien Grall,
Volodymyr Babchuk, Bertrand Marquis
Cc: Volodymyr Babchuk, Oleksandr Tyshchenko
HSCIF is a high-speed variant of Renesas SCIF serial interface. From
Xen point of view, they almost the same, only difference is in FIFO
size.
Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
---
V2:
- Updated header of the file as per Oleksandr's suggestion
- Added Oleksandr's R-b tag
---
xen/drivers/char/scif-uart.c | 17 +++++++++++++++--
1 file changed, 15 insertions(+), 2 deletions(-)
diff --git a/xen/drivers/char/scif-uart.c b/xen/drivers/char/scif-uart.c
index ee204a11a4..2fccafe340 100644
--- a/xen/drivers/char/scif-uart.c
+++ b/xen/drivers/char/scif-uart.c
@@ -1,8 +1,8 @@
/*
* xen/drivers/char/scif-uart.c
*
- * Driver for SCIF(A) (Serial communication interface with FIFO (A))
- * compatible UART.
+ * Driver for (H)SCIF(A) ((High-speed) Serial communication interface
+ * with FIFO (A)) compatible UART.
*
* Oleksandr Tyshchenko <oleksandr.tyshchenko@globallogic.com>
* Copyright (C) 2014, Globallogic.
@@ -47,6 +47,7 @@ enum port_types
{
SCIF_PORT,
SCIFA_PORT,
+ HSCIF_PORT,
NR_PORTS,
};
@@ -88,6 +89,17 @@ static const struct port_params port_params[NR_PORTS] =
SCASCR_BRIE,
.fifo_size = 64,
},
+ [HSCIF_PORT] =
+ {
+ .status_reg = SCIF_SCFSR,
+ .tx_fifo_reg = SCIF_SCFTDR,
+ .rx_fifo_reg = SCIF_SCFRDR,
+ .overrun_reg = SCIF_SCLSR,
+ .overrun_mask = SCLSR_ORER,
+ .error_mask = SCFSR_PER | SCFSR_FER | SCFSR_BRK | SCFSR_ER,
+ .irq_flags = SCSCR_RIE | SCSCR_TIE | SCSCR_REIE,
+ .fifo_size = 128,
+ },
};
static void scif_uart_interrupt(int irq, void *data, struct cpu_user_regs *regs)
@@ -288,6 +300,7 @@ static const struct dt_device_match scif_uart_dt_match[] __initconst =
{
{ .compatible = "renesas,scif", .data = &port_params[SCIF_PORT] },
{ .compatible = "renesas,scifa", .data = &port_params[SCIFA_PORT] },
+ { .compatible = "renesas,hscif", .data = &port_params[HSCIF_PORT] },
{ /* sentinel */ },
};
--
2.34.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] xen/serial: scif: add support for HSCIF
2022-02-08 11:23 Volodymyr Babchuk
@ 2022-02-09 12:25 ` Julien Grall
0 siblings, 0 replies; 4+ messages in thread
From: Julien Grall @ 2022-02-09 12:25 UTC (permalink / raw)
To: Volodymyr Babchuk, xen-devel@lists.xenproject.org,
Stefano Stabellini, Bertrand Marquis
Cc: Oleksandr Tyshchenko
Hi,
On 08/02/2022 11:23, Volodymyr Babchuk wrote:
> HSCIF is a high-speed variant of Renesas SCIF serial interface. From
> Xen point of view, they almost the same, only difference is in FIFO
> size.
>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
Acked-by: Julien Grall <jgrall@amazon.com>
And committed.
Cheers,
--
Julien Grall
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-02-09 12:26 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20220127170008.271723-1-volodymyr_babchuk@epam.com>
2022-01-27 17:18 ` [PATCH] xen/serial: scif: add support for HSCIF Volodymyr Babchuk
2022-01-27 19:24 ` Oleksandr
2022-02-08 11:23 Volodymyr Babchuk
2022-02-09 12:25 ` Julien Grall
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.