mbox series

[0/7] Add FFT Support for R-Car Gen3 devices

Message ID 20210225225147.29920-1-fabrizio.castro.jz@renesas.com (mailing list archive)
Headers show
Series Add FFT Support for R-Car Gen3 devices | expand

Message

Fabrizio Castro Feb. 25, 2021, 10:51 p.m. UTC
The DAB hardware accelerator found on R-Car E3 (a.k.a. r8a77990)
and R-Car M3-N (a.k.a. r8a77965) devices is a hardware accelerator
for software DAB demodulators.
It consists of one FFT (Fast Fourier Transform) module and one
decoder module, compatible with DAB specification (ETSI EN 300 401
and ETSI TS 102 563).
The decoder module can perform FIC decoding and MSC decoding
processing from de-puncture to final decoded result.

This series adds FFT support only for R-Car E3 and R-Car M3-N,
FIC and MSC support will be added later on.

Thanks,
Fab

Fabrizio Castro (7):
  clk: renesas: r8a77990: Add DAB clock
  clk: renesas: r8a77965: Add DAB clock
  dt-bindings: misc: Add binding for R-Car DAB
  misc: Add driver for DAB IP found on Renesas R-Car devices
  arm64: dts: renesas: r8a77990: Add DAB support
  arm64: dts: renesas: r8a77965: Add DAB support
  arm64: configs: Add R-Car DAB support

 .../devicetree/bindings/misc/renesas,dab.yaml |  75 ++++++++
 MAINTAINERS                                   |   7 +
 arch/arm64/boot/dts/renesas/r8a77965.dtsi     |  12 ++
 arch/arm64/boot/dts/renesas/r8a77990.dtsi     |  12 ++
 arch/arm64/configs/defconfig                  |   1 +
 drivers/clk/renesas/r8a77965-cpg-mssr.c       |   1 +
 drivers/clk/renesas/r8a77990-cpg-mssr.c       |   1 +
 drivers/misc/Kconfig                          |   1 +
 drivers/misc/Makefile                         |   1 +
 drivers/misc/rcar_dab/Kconfig                 |  11 ++
 drivers/misc/rcar_dab/Makefile                |   8 +
 drivers/misc/rcar_dab/rcar_dev.c              | 176 ++++++++++++++++++
 drivers/misc/rcar_dab/rcar_dev.h              | 116 ++++++++++++
 drivers/misc/rcar_dab/rcar_fft.c              | 160 ++++++++++++++++
 include/uapi/linux/rcar_dab.h                 |  35 ++++
 15 files changed, 617 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/misc/renesas,dab.yaml
 create mode 100644 drivers/misc/rcar_dab/Kconfig
 create mode 100644 drivers/misc/rcar_dab/Makefile
 create mode 100644 drivers/misc/rcar_dab/rcar_dev.c
 create mode 100644 drivers/misc/rcar_dab/rcar_dev.h
 create mode 100644 drivers/misc/rcar_dab/rcar_fft.c
 create mode 100644 include/uapi/linux/rcar_dab.h

Comments

Laurent Pinchart Feb. 26, 2021, 12:20 p.m. UTC | #1
Hi Fabrizio,

On Thu, Feb 25, 2021 at 10:51:40PM +0000, Fabrizio Castro wrote:
> The DAB hardware accelerator found on R-Car E3 (a.k.a. r8a77990)
> and R-Car M3-N (a.k.a. r8a77965) devices is a hardware accelerator
> for software DAB demodulators.
> It consists of one FFT (Fast Fourier Transform) module and one
> decoder module, compatible with DAB specification (ETSI EN 300 401
> and ETSI TS 102 563).
> The decoder module can perform FIC decoding and MSC decoding
> processing from de-puncture to final decoded result.
> 
> This series adds FFT support only for R-Car E3 and R-Car M3-N,
> FIC and MSC support will be added later on.

Out of curiosity, could the FFT module be used as an accelerator for 2D
FFT on images ?

> Fabrizio Castro (7):
>   clk: renesas: r8a77990: Add DAB clock
>   clk: renesas: r8a77965: Add DAB clock
>   dt-bindings: misc: Add binding for R-Car DAB
>   misc: Add driver for DAB IP found on Renesas R-Car devices
>   arm64: dts: renesas: r8a77990: Add DAB support
>   arm64: dts: renesas: r8a77965: Add DAB support
>   arm64: configs: Add R-Car DAB support
> 
>  .../devicetree/bindings/misc/renesas,dab.yaml |  75 ++++++++
>  MAINTAINERS                                   |   7 +
>  arch/arm64/boot/dts/renesas/r8a77965.dtsi     |  12 ++
>  arch/arm64/boot/dts/renesas/r8a77990.dtsi     |  12 ++
>  arch/arm64/configs/defconfig                  |   1 +
>  drivers/clk/renesas/r8a77965-cpg-mssr.c       |   1 +
>  drivers/clk/renesas/r8a77990-cpg-mssr.c       |   1 +
>  drivers/misc/Kconfig                          |   1 +
>  drivers/misc/Makefile                         |   1 +
>  drivers/misc/rcar_dab/Kconfig                 |  11 ++
>  drivers/misc/rcar_dab/Makefile                |   8 +
>  drivers/misc/rcar_dab/rcar_dev.c              | 176 ++++++++++++++++++
>  drivers/misc/rcar_dab/rcar_dev.h              | 116 ++++++++++++
>  drivers/misc/rcar_dab/rcar_fft.c              | 160 ++++++++++++++++
>  include/uapi/linux/rcar_dab.h                 |  35 ++++
>  15 files changed, 617 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/misc/renesas,dab.yaml
>  create mode 100644 drivers/misc/rcar_dab/Kconfig
>  create mode 100644 drivers/misc/rcar_dab/Makefile
>  create mode 100644 drivers/misc/rcar_dab/rcar_dev.c
>  create mode 100644 drivers/misc/rcar_dab/rcar_dev.h
>  create mode 100644 drivers/misc/rcar_dab/rcar_fft.c
>  create mode 100644 include/uapi/linux/rcar_dab.h
Fabrizio Castro March 1, 2021, 2:50 p.m. UTC | #2
Hi Laurent,

Thank you for your feedback!

> From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Sent: 26 February 2021 12:21
> Subject: Re: [PATCH 0/7] Add FFT Support for R-Car Gen3 devices
> 
> Hi Fabrizio,
> 
> On Thu, Feb 25, 2021 at 10:51:40PM +0000, Fabrizio Castro wrote:
> > The DAB hardware accelerator found on R-Car E3 (a.k.a. r8a77990)
> > and R-Car M3-N (a.k.a. r8a77965) devices is a hardware accelerator
> > for software DAB demodulators.
> > It consists of one FFT (Fast Fourier Transform) module and one
> > decoder module, compatible with DAB specification (ETSI EN 300 401
> > and ETSI TS 102 563).
> > The decoder module can perform FIC decoding and MSC decoding
> > processing from de-puncture to final decoded result.
> >
> > This series adds FFT support only for R-Car E3 and R-Car M3-N,
> > FIC and MSC support will be added later on.
> 
> Out of curiosity, could the FFT module be used as an accelerator for 2D
> FFT on images ?

I haven't tried using it that way but I don't think so.

Thanks,
Fab 

> 
> > Fabrizio Castro (7):
> >   clk: renesas: r8a77990: Add DAB clock
> >   clk: renesas: r8a77965: Add DAB clock
> >   dt-bindings: misc: Add binding for R-Car DAB
> >   misc: Add driver for DAB IP found on Renesas R-Car devices
> >   arm64: dts: renesas: r8a77990: Add DAB support
> >   arm64: dts: renesas: r8a77965: Add DAB support
> >   arm64: configs: Add R-Car DAB support
> >
> >  .../devicetree/bindings/misc/renesas,dab.yaml |  75 ++++++++
> >  MAINTAINERS                                   |   7 +
> >  arch/arm64/boot/dts/renesas/r8a77965.dtsi     |  12 ++
> >  arch/arm64/boot/dts/renesas/r8a77990.dtsi     |  12 ++
> >  arch/arm64/configs/defconfig                  |   1 +
> >  drivers/clk/renesas/r8a77965-cpg-mssr.c       |   1 +
> >  drivers/clk/renesas/r8a77990-cpg-mssr.c       |   1 +
> >  drivers/misc/Kconfig                          |   1 +
> >  drivers/misc/Makefile                         |   1 +
> >  drivers/misc/rcar_dab/Kconfig                 |  11 ++
> >  drivers/misc/rcar_dab/Makefile                |   8 +
> >  drivers/misc/rcar_dab/rcar_dev.c              | 176 ++++++++++++++++++
> >  drivers/misc/rcar_dab/rcar_dev.h              | 116 ++++++++++++
> >  drivers/misc/rcar_dab/rcar_fft.c              | 160 ++++++++++++++++
> >  include/uapi/linux/rcar_dab.h                 |  35 ++++
> >  15 files changed, 617 insertions(+)
> >  create mode 100644
> Documentation/devicetree/bindings/misc/renesas,dab.yaml
> >  create mode 100644 drivers/misc/rcar_dab/Kconfig
> >  create mode 100644 drivers/misc/rcar_dab/Makefile
> >  create mode 100644 drivers/misc/rcar_dab/rcar_dev.c
> >  create mode 100644 drivers/misc/rcar_dab/rcar_dev.h
> >  create mode 100644 drivers/misc/rcar_dab/rcar_fft.c
> >  create mode 100644 include/uapi/linux/rcar_dab.h
> 
> --
> Regards,
> 
> Laurent Pinchart