All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Gaignard <benjamin.gaignard@collabora.com>
To: Adam Ford <aford173@gmail.com>, linux-media@vger.kernel.org
Cc: cphealy@gmail.com, hverkuil@xs4all.nl,
	Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	NXP Linux Team <linux-imx@nxp.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Lucas Stach <l.stach@pengutronix.de>,
	linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev
Subject: Re: [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support
Date: Wed, 8 Dec 2021 10:32:55 +0100	[thread overview]
Message-ID: <f85da774-ccb3-85de-edd6-5333ed8d0503@collabora.com> (raw)
In-Reply-To: <20211207015446.1250854-1-aford173@gmail.com>


Le 07/12/2021 à 02:54, Adam Ford a écrit :

> Currently, the VPU in the i.MQ8MQ is appearing as one codec, but in
> reality, it's two IP blocks called G1 and G2.  There is initialization
> code in VPU code to pull some clocks, resets and other features which
> has been integrated into the vpu-blk-ctrl for the i.MX8M Mini and a
> similar method can be used to make the VPU codec's operate as
> stand-alone cores without having to know the details of each other
> or the quirks unique to the i.MX8MQ, so the remaining code can be
> left more generic.
>
> This series was started by Lucas Stach with one by Benjamin Gaignard.
> Most patches have been modified slightly by me.  It's in an RFC state
> because I wasn't sure how to best handle the signatures and wasn't sure
> if I could base it off the branch I did.
>
> Since the g-streamer and media trees are in a constant state of
> change, this series is based on
>
> git://linuxtv.org/hverkuil/media_tree.git for-v5.17e
>
> The downstream code from NXP shows the G1 and G2 clocks running
> at 600MHz, but between the TRM and the datasheet, there is some
> discrepancy.  Because the NXP reference code used 600MHz, that is
> what was chosen here.  Users who need to adjust their G1 and G2
> clocks can do so in their board files.

Hi Adam,

Thanks for your patches, I have been able to reproduce VP9 results on my side (Fluster 147/303).
In past I have notice spurious errors when using 600MHz clock on HEVC decode but not with 300MHz.

Regards,
Benjamin

>
> Fluster Results:
>
> ./fluster.py run -dGStreamer-H.264-V4L2SL-Gst1.0
> Ran 90/135 tests successfully               in 61.966 secs
>
> ./fluster.py run -d GStreamer-VP8-V4L2SL-Gst1.0
> Ran 55/61 tests successfully               in 7.660 secs
>
>
> ./fluster.py run -d GStreamer-VP9-V4L2SL-Gst1.0
> Ran 144/303 tests successfully               in 162.665 secs
>
> Changes log:
>
> V2:  Make vpu-blk-ctrl enable G2 clock when enabling fuses.
>       Remove syscon from device tree and binding example
>       Added modified nxp,imx8mq-vpu.yaml from Benjamin Gaignard
>
> Adam Ford (2):
>    media: hantro: split i.MX8MQ G1 and G2 code
>    arm64: dts: imx8mq: Split i.MX8MQ G1 and G2 with vpu-blk-ctrl
>
> Benjamin Gaignard (1):
>    dt-bindings: media: nxp,imx8mq-vpu: Update the bindings for G2 support
>
> Lucas Stach (3):
>    dt-bindings: power: imx8mq: add defines for VPU blk-ctrl domains
>    dt-bindings: soc: add binding for i.MX8MQ VPU blk-ctrl
>    soc: imx: imx8m-blk-ctrl: add i.MX8MQ VPU blk-ctrl
>
>   .../bindings/media/nxp,imx8mq-vpu.yaml        |  58 +++++----
>   .../soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml      |  71 +++++++++++
>   arch/arm64/boot/dts/freescale/imx8mq.dtsi     |  69 ++++++----
>   drivers/soc/imx/imx8m-blk-ctrl.c              |  68 +++++++++-
>   drivers/staging/media/hantro/hantro_drv.c     |   4 +-
>   drivers/staging/media/hantro/hantro_hw.h      |   2 +-
>   drivers/staging/media/hantro/imx8m_vpu_hw.c   | 119 +++---------------
>   include/dt-bindings/power/imx8mq-power.h      |   3 +
>   8 files changed, 237 insertions(+), 157 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml
>
>
> base-commit: d1888b0bfd2ddef2e8a81505ffa200b92cc32e0c

WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Gaignard <benjamin.gaignard@collabora.com>
To: Adam Ford <aford173@gmail.com>, linux-media@vger.kernel.org
Cc: cphealy@gmail.com, hverkuil@xs4all.nl,
	Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	NXP Linux Team <linux-imx@nxp.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Lucas Stach <l.stach@pengutronix.de>,
	linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev
Subject: Re: [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support
Date: Wed, 8 Dec 2021 10:32:55 +0100	[thread overview]
Message-ID: <f85da774-ccb3-85de-edd6-5333ed8d0503@collabora.com> (raw)
In-Reply-To: <20211207015446.1250854-1-aford173@gmail.com>


Le 07/12/2021 à 02:54, Adam Ford a écrit :

> Currently, the VPU in the i.MQ8MQ is appearing as one codec, but in
> reality, it's two IP blocks called G1 and G2.  There is initialization
> code in VPU code to pull some clocks, resets and other features which
> has been integrated into the vpu-blk-ctrl for the i.MX8M Mini and a
> similar method can be used to make the VPU codec's operate as
> stand-alone cores without having to know the details of each other
> or the quirks unique to the i.MX8MQ, so the remaining code can be
> left more generic.
>
> This series was started by Lucas Stach with one by Benjamin Gaignard.
> Most patches have been modified slightly by me.  It's in an RFC state
> because I wasn't sure how to best handle the signatures and wasn't sure
> if I could base it off the branch I did.
>
> Since the g-streamer and media trees are in a constant state of
> change, this series is based on
>
> git://linuxtv.org/hverkuil/media_tree.git for-v5.17e
>
> The downstream code from NXP shows the G1 and G2 clocks running
> at 600MHz, but between the TRM and the datasheet, there is some
> discrepancy.  Because the NXP reference code used 600MHz, that is
> what was chosen here.  Users who need to adjust their G1 and G2
> clocks can do so in their board files.

Hi Adam,

Thanks for your patches, I have been able to reproduce VP9 results on my side (Fluster 147/303).
In past I have notice spurious errors when using 600MHz clock on HEVC decode but not with 300MHz.

Regards,
Benjamin

>
> Fluster Results:
>
> ./fluster.py run -dGStreamer-H.264-V4L2SL-Gst1.0
> Ran 90/135 tests successfully               in 61.966 secs
>
> ./fluster.py run -d GStreamer-VP8-V4L2SL-Gst1.0
> Ran 55/61 tests successfully               in 7.660 secs
>
>
> ./fluster.py run -d GStreamer-VP9-V4L2SL-Gst1.0
> Ran 144/303 tests successfully               in 162.665 secs
>
> Changes log:
>
> V2:  Make vpu-blk-ctrl enable G2 clock when enabling fuses.
>       Remove syscon from device tree and binding example
>       Added modified nxp,imx8mq-vpu.yaml from Benjamin Gaignard
>
> Adam Ford (2):
>    media: hantro: split i.MX8MQ G1 and G2 code
>    arm64: dts: imx8mq: Split i.MX8MQ G1 and G2 with vpu-blk-ctrl
>
> Benjamin Gaignard (1):
>    dt-bindings: media: nxp,imx8mq-vpu: Update the bindings for G2 support
>
> Lucas Stach (3):
>    dt-bindings: power: imx8mq: add defines for VPU blk-ctrl domains
>    dt-bindings: soc: add binding for i.MX8MQ VPU blk-ctrl
>    soc: imx: imx8m-blk-ctrl: add i.MX8MQ VPU blk-ctrl
>
>   .../bindings/media/nxp,imx8mq-vpu.yaml        |  58 +++++----
>   .../soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml      |  71 +++++++++++
>   arch/arm64/boot/dts/freescale/imx8mq.dtsi     |  69 ++++++----
>   drivers/soc/imx/imx8m-blk-ctrl.c              |  68 +++++++++-
>   drivers/staging/media/hantro/hantro_drv.c     |   4 +-
>   drivers/staging/media/hantro/hantro_hw.h      |   2 +-
>   drivers/staging/media/hantro/imx8m_vpu_hw.c   | 119 +++---------------
>   include/dt-bindings/power/imx8mq-power.h      |   3 +
>   8 files changed, 237 insertions(+), 157 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml
>
>
> base-commit: d1888b0bfd2ddef2e8a81505ffa200b92cc32e0c

_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Gaignard <benjamin.gaignard@collabora.com>
To: Adam Ford <aford173@gmail.com>, linux-media@vger.kernel.org
Cc: cphealy@gmail.com, hverkuil@xs4all.nl,
	Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Rob Herring <robh+dt@kernel.org>, Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	NXP Linux Team <linux-imx@nxp.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Lucas Stach <l.stach@pengutronix.de>,
	linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-staging@lists.linux.dev
Subject: Re: [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support
Date: Wed, 8 Dec 2021 10:32:55 +0100	[thread overview]
Message-ID: <f85da774-ccb3-85de-edd6-5333ed8d0503@collabora.com> (raw)
In-Reply-To: <20211207015446.1250854-1-aford173@gmail.com>


Le 07/12/2021 à 02:54, Adam Ford a écrit :

> Currently, the VPU in the i.MQ8MQ is appearing as one codec, but in
> reality, it's two IP blocks called G1 and G2.  There is initialization
> code in VPU code to pull some clocks, resets and other features which
> has been integrated into the vpu-blk-ctrl for the i.MX8M Mini and a
> similar method can be used to make the VPU codec's operate as
> stand-alone cores without having to know the details of each other
> or the quirks unique to the i.MX8MQ, so the remaining code can be
> left more generic.
>
> This series was started by Lucas Stach with one by Benjamin Gaignard.
> Most patches have been modified slightly by me.  It's in an RFC state
> because I wasn't sure how to best handle the signatures and wasn't sure
> if I could base it off the branch I did.
>
> Since the g-streamer and media trees are in a constant state of
> change, this series is based on
>
> git://linuxtv.org/hverkuil/media_tree.git for-v5.17e
>
> The downstream code from NXP shows the G1 and G2 clocks running
> at 600MHz, but between the TRM and the datasheet, there is some
> discrepancy.  Because the NXP reference code used 600MHz, that is
> what was chosen here.  Users who need to adjust their G1 and G2
> clocks can do so in their board files.

Hi Adam,

Thanks for your patches, I have been able to reproduce VP9 results on my side (Fluster 147/303).
In past I have notice spurious errors when using 600MHz clock on HEVC decode but not with 300MHz.

Regards,
Benjamin

>
> Fluster Results:
>
> ./fluster.py run -dGStreamer-H.264-V4L2SL-Gst1.0
> Ran 90/135 tests successfully               in 61.966 secs
>
> ./fluster.py run -d GStreamer-VP8-V4L2SL-Gst1.0
> Ran 55/61 tests successfully               in 7.660 secs
>
>
> ./fluster.py run -d GStreamer-VP9-V4L2SL-Gst1.0
> Ran 144/303 tests successfully               in 162.665 secs
>
> Changes log:
>
> V2:  Make vpu-blk-ctrl enable G2 clock when enabling fuses.
>       Remove syscon from device tree and binding example
>       Added modified nxp,imx8mq-vpu.yaml from Benjamin Gaignard
>
> Adam Ford (2):
>    media: hantro: split i.MX8MQ G1 and G2 code
>    arm64: dts: imx8mq: Split i.MX8MQ G1 and G2 with vpu-blk-ctrl
>
> Benjamin Gaignard (1):
>    dt-bindings: media: nxp,imx8mq-vpu: Update the bindings for G2 support
>
> Lucas Stach (3):
>    dt-bindings: power: imx8mq: add defines for VPU blk-ctrl domains
>    dt-bindings: soc: add binding for i.MX8MQ VPU blk-ctrl
>    soc: imx: imx8m-blk-ctrl: add i.MX8MQ VPU blk-ctrl
>
>   .../bindings/media/nxp,imx8mq-vpu.yaml        |  58 +++++----
>   .../soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml      |  71 +++++++++++
>   arch/arm64/boot/dts/freescale/imx8mq.dtsi     |  69 ++++++----
>   drivers/soc/imx/imx8m-blk-ctrl.c              |  68 +++++++++-
>   drivers/staging/media/hantro/hantro_drv.c     |   4 +-
>   drivers/staging/media/hantro/hantro_hw.h      |   2 +-
>   drivers/staging/media/hantro/imx8m_vpu_hw.c   | 119 +++---------------
>   include/dt-bindings/power/imx8mq-power.h      |   3 +
>   8 files changed, 237 insertions(+), 157 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/soc/imx/fsl,imx8mq-vpu-blk-ctrl.yaml
>
>
> base-commit: d1888b0bfd2ddef2e8a81505ffa200b92cc32e0c

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2021-12-08  9:33 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-07  1:54 [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support Adam Ford
2021-12-07  1:54 ` Adam Ford
2021-12-07  1:54 ` Adam Ford
2021-12-07  1:54 ` [RFC V2 1/6] dt-bindings: power: imx8mq: add defines for VPU blk-ctrl domains Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54 ` [RFC V2 2/6] dt-bindings: soc: add binding for i.MX8MQ VPU blk-ctrl Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54 ` [RFC V2 3/6] dt-bindings: media: nxp,imx8mq-vpu: Update the bindings for G2 support Adam Ford
2021-12-07  1:54   ` [RFC V2 3/6] dt-bindings: media: nxp, imx8mq-vpu: " Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07 14:58   ` [RFC V2 3/6] dt-bindings: media: nxp,imx8mq-vpu: " Rob Herring
2021-12-07 14:58     ` [RFC V2 3/6] dt-bindings: media: nxp, imx8mq-vpu: " Rob Herring
2021-12-07 14:58     ` Rob Herring
2021-12-07 15:14   ` [RFC V2 3/6] dt-bindings: media: nxp,imx8mq-vpu: " Rob Herring
2021-12-07 15:14     ` Rob Herring
2021-12-07 15:14     ` Rob Herring
2021-12-07 15:38     ` Lucas Stach
2021-12-07 15:38       ` Lucas Stach
2021-12-07 15:38       ` Lucas Stach
2021-12-07  1:54 ` [RFC V2 4/6] soc: imx: imx8m-blk-ctrl: add i.MX8MQ VPU blk-ctrl Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54 ` [RFC V2 5/6] media: hantro: split i.MX8MQ G1 and G2 code Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07 12:39   ` Ezequiel Garcia
2021-12-07 12:39     ` Ezequiel Garcia
2021-12-07 12:39     ` Ezequiel Garcia
2021-12-07 13:24     ` Adam Ford
2021-12-07 13:24       ` Adam Ford
2021-12-07 13:24       ` Adam Ford
2021-12-07 13:41       ` Lucas Stach
2021-12-07 13:41         ` Lucas Stach
2021-12-07 13:41         ` Lucas Stach
2021-12-07 13:50         ` Adam Ford
2021-12-07 13:50           ` Adam Ford
2021-12-07 13:50           ` Adam Ford
2021-12-07 13:56           ` Lucas Stach
2021-12-07 13:56             ` Lucas Stach
2021-12-07 13:56             ` Lucas Stach
2021-12-07 14:07             ` Adam Ford
2021-12-07 14:07               ` Adam Ford
2021-12-07 14:07               ` Adam Ford
2021-12-07 14:16               ` Lucas Stach
2021-12-07 14:16                 ` Lucas Stach
2021-12-07 14:16                 ` Lucas Stach
2021-12-07  1:54 ` [RFC V2 6/6] arm64: dts: imx8mq: Split i.MX8MQ G1 and G2 with vpu-blk-ctrl Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-07  1:54   ` Adam Ford
2021-12-08  9:32 ` Benjamin Gaignard [this message]
2021-12-08  9:32   ` [RFC V2 0/6] media: Hantro: Split iMX8MQ VPU into G1 and G2 with blk-ctrl support Benjamin Gaignard
2021-12-08  9:32   ` Benjamin Gaignard
2021-12-08 10:32   ` Lucas Stach
2021-12-08 10:32     ` Lucas Stach
2021-12-08 10:32     ` Lucas Stach
2021-12-08 13:36     ` Benjamin Gaignard
2021-12-08 13:36       ` Benjamin Gaignard
2021-12-08 13:36       ` Benjamin Gaignard
2021-12-08 15:13       ` Adam Ford
2021-12-08 15:13         ` Adam Ford
2021-12-08 15:13         ` Adam Ford
2021-12-08 15:39         ` Lucas Stach
2021-12-08 15:39           ` Lucas Stach
2021-12-08 15:39           ` Lucas Stach
2021-12-08 15:57           ` Chris Healy
2021-12-08 15:57             ` Chris Healy
2021-12-08 15:57             ` Chris Healy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f85da774-ccb3-85de-edd6-5333ed8d0503@collabora.com \
    --to=benjamin.gaignard@collabora.com \
    --cc=aford173@gmail.com \
    --cc=cphealy@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=ezequiel@vanguardiasur.com.ar \
    --cc=festevam@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hverkuil@xs4all.nl \
    --cc=kernel@pengutronix.de \
    --cc=l.stach@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=mchehab@kernel.org \
    --cc=p.zabel@pengutronix.de \
    --cc=robh+dt@kernel.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.