Hi Julien, Bertrand,

Sorry, I messed up with your e-mail addresses in the previous
email. Adding you correctly. 

Volodymyr Babchuk <[email protected]> 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 <[email protected]>
> ---
>  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

Reply via email to