devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Detlev Casanova <detlev.casanova@collabora.com>
To: Jonas Karlman <jonas@kwiboo.se>, Heiko Stuebner <heiko@sntech.de>
Cc: linux-kernel@vger.kernel.org,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Sebastian Reichel <sebastian.reichel@collabora.com>,
	Dragan Simic <dsimic@manjaro.org>,
	Alexey Charkov <alchark@gmail.com>,
	Cristian Ciocaltea <cristian.ciocaltea@collabora.com>,
	Diederik de Haas <didi.debian@cknow.org>,
	Andy Yan <andy.yan@rock-chips.com>,
	linux-media@vger.kernel.org, devicetree@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-rockchip@lists.infradead.org,
	linux-staging@lists.linux.dev
Subject: Re: [PATCH 3/3] arm64: dts: rockchip: Add rkvdec2 Video Decoder on rk3588(s)
Date: Mon, 17 Jun 2024 10:31:47 -0400	[thread overview]
Message-ID: <4516494.Mh6RI2rZIc@arisu> (raw)
In-Reply-To: <6812626.ejJDZkT8p0@phil>

[-- Attachment #1: Type: text/plain, Size: 5426 bytes --]

On Sunday, June 16, 2024 3:28:25 A.M. EDT Heiko Stuebner wrote:
> Am Samstag, 15. Juni 2024, 21:55:54 CEST schrieb Detlev Casanova:
> > On Saturday, June 15, 2024 4:25:27 A.M. EDT Jonas Karlman wrote:
> > > Hi Detlev,
> > > 
> > > On 2024-06-15 03:56, Detlev Casanova wrote:
> > > > Add the rkvdec2 Video Decoder to the RK3588s devicetree.
> > > > 
> > > > Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
> > > > ---
> > > > 
> > > >  .../boot/dts/rockchip/rk3588-rock-5b.dts      |  4 ++++
> > > >  .../boot/dts/rockchip/rk3588s-orangepi-5.dts  |  4 ++++
> > > >  arch/arm64/boot/dts/rockchip/rk3588s.dtsi     | 19
> > > >  +++++++++++++++++++
> > > >  3 files changed, 27 insertions(+)
> > > > 
> > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
> > > > b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts index
> > > > c551b676860c..965322c24a65 100644
> > > > --- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
> > > > +++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
> > > > @@ -503,6 +503,10 @@ &pwm1 {
> > > > 
> > > >  	status = "okay";
> > > >  
> > > >  };
> > > > 
> > > > +&rkvdec0 {
> > > > +	status = "okay";
> > > > +};
> > > 
> > > Enable of rkvdec0 should probably be split out from the patch that adds
> > > the rkvdec0 node to soc dtsi.
> > 
> > Ack
> > 
> > > Also why is rkvdec0 only enabled on rock-5b and orangepi-5?
> > 
> > I only could test on those two but I can enable it on all rk3588 devices.
> > 
> > > > +
> > > > 
> > > >  &saradc {
> > > >  
> > > >  	vref-supply = <&avcc_1v8_s0>;
> > > >  	status = "okay";
> > > > 
> > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts
> > > > b/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts index
> > > > feea6b20a6bf..2828fb4c182a 100644
> > > > --- a/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts
> > > > +++ b/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts
> > > > @@ -321,6 +321,10 @@ typec5v_pwren: typec5v-pwren {
> > > > 
> > > >  	};
> > > >  
> > > >  };
> > > > 
> > > > +&rkvdec0 {
> > > > +	status = "okay";
> > > > +};
> > > > +
> > > > 
> > > >  &saradc {
> > > >  
> > > >  	vref-supply = <&avcc_1v8_s0>;
> > > >  	status = "okay";
> > > > 
> > > > diff --git a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
> > > > b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi index
> > > > 0fecbf46e127..09672636dcea 100644
> > > > --- a/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
> > > > +++ b/arch/arm64/boot/dts/rockchip/rk3588s.dtsi
> > > > @@ -3034,6 +3034,9 @@ system_sram2: sram@ff001000 {
> > > > 
> > > >  		ranges = <0x0 0x0 0xff001000 0xef000>;
> > > >  		#address-cells = <1>;
> > > >  		#size-cells = <1>;
> > > 
> > > Blank line is missing.
> > > 
> > > > +		rkvdec0_sram: rkvdec-sram@0 {
> > > > +			reg = <0x0 0x78000>;
> > > > +		};
> > > > 
> > > >  	};
> > > >  	
> > > >  	pinctrl: pinctrl {
> > > > 
> > > > @@ -3103,6 +3106,22 @@ gpio4: gpio@fec50000 {
> > > > 
> > > >  			#interrupt-cells = <2>;
> > > >  		
> > > >  		};
> > > >  	
> > > >  	};
> > > > 
> > > > +
> > > > +	rkvdec0: video-decoder@fdc38100 {
> > > > +		compatible = "rockchip,rk3588-vdec2";
> > > > +		reg = <0x0 0xfdc38100 0x0 0x500>;
> > > > +		interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH 0>;
> > > > +		clocks = <&cru ACLK_RKVDEC0>, <&cru HCLK_RKVDEC0>,
> > 
> > <&cru
> > 
> > > > CLK_RKVDEC0_CORE>, +			 <&cru
> > 
> > CLK_RKVDEC0_CA>, <&cru
> > 
> > > > CLK_RKVDEC0_HEVC_CA>;
> > > > +		clock-names = "axi", "ahb", "core",
> > > > +			      "cabac", "hevc_cabac";
> > > > +		assigned-clocks = <&cru ACLK_RKVDEC0>, <&cru
> > 
> > CLK_RKVDEC0_CORE>,
> > 
> > > > +				  <&cru CLK_RKVDEC0_CA>, <&cru
> > 
> > CLK_RKVDEC0_HEVC_CA>;
> > 
> > > > +		assigned-clock-rates = <800000000>, <600000000>,
> > > > +				       <600000000>, 
<1000000000>;
> > > > +		power-domains = <&power RK3588_PD_RKVDEC0>;
> > > 
> > > iommus and resets should probably be added.
> > > 
> > > > +		status = "disabled";
> > > > +	};
> > > 
> > > The iommu node for rkvdec0_mmu seem to be missing, is it not required to
> > > be able to use memory >4GiB as decoding buffers?
> > 
> > I need to check if the current rockchip iommu driver will work for this
> > decoder. I remember that the iommu code for AV1 was a bit different, not
> > sure about this rkvdec.
> > 
> > > I would also consider adding the rkvdec1 node(s), if I am understanding
> > > correctly they can both be used in a cluster or completely independent.
> > 
> > They can be used independently, yes. I'll add rkvdec1 for rk3588 devices
> > (rk3588s only has  1 core)
> 
> Please check in with Sebastian Reichel about clusters/independent
> controllers. He had a lot of fruitful discussions for the VEPU121/VPU121
> support he is working on.

Yes, basically, it makes the driver check for all nodes with the same 
compatible and list the instances in the same device instance.
If multicore is not supported, the other instances can simple be ignored.

See here: https://lore.kernel.org/linux-kernel/20240613135034.31684-4-sebastian.reichel@collabora.com/

> Baseline being, while we want the hw to be described correctly wrt the
> multiple instances, we don't generally want to expose them individually
> to userspace, because that would then require userspace to do all the
> scheduling.

Yes, so Sebastien's patch will allow the device tree to have the 2 cores but 
only one visible by the userspace (even when multicore decoding is not 
supported)

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2024-06-17 14:32 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-15  1:56 [PATCH 0/3] media: rockchip: Add rkvdec2 driver Detlev Casanova
2024-06-15  1:56 ` [PATCH 1/3] media: rockchip: Introduce the " Detlev Casanova
2024-06-15  8:51   ` Diederik de Haas
2024-06-15 19:44     ` Detlev Casanova
2024-06-16  8:40       ` Diederik de Haas
2024-06-17 13:52         ` Nicolas Dufresne
2025-01-29 14:48       ` Piotr Oniszczuk
2025-01-29 16:20         ` Nicolas Dufresne
2025-01-30 10:22           ` Piotr Oniszczuk
2025-01-29 16:50         ` Detlev Casanova
2025-01-30 10:46           ` Piotr Oniszczuk
2025-01-30 14:54             ` Piotr Oniszczuk
2024-06-15 13:55   ` kernel test robot
2024-06-15 17:21   ` kernel test robot
2024-06-15 22:24   ` Dmitry Osipenko
2024-06-15 22:32   ` Dmitry Osipenko
2024-06-16  6:58   ` Andy Yan
2024-06-17 13:40     ` [PATCH " Detlev Casanova
2024-06-17 13:59     ` Nicolas Dufresne
2024-06-16 21:40   ` Jonas Karlman
2024-06-17 13:56     ` Detlev Casanova
2024-06-17  4:49   ` Alex Bee
2024-06-17 14:17     ` Detlev Casanova
2024-06-17 15:10     ` Nicolas Dufresne
2024-06-17  9:47   ` Jianfeng Liu
2024-06-17 14:04     ` Nicolas Dufresne
2024-06-17 14:20       ` Detlev Casanova
2024-06-17 15:22         ` Nicolas Dufresne
2024-06-18 12:13         ` Jianfeng Liu
2024-06-18 12:39           ` Detlev Casanova
2024-06-18 16:34             ` Nicolas Dufresne
2024-06-19  7:41               ` Jianfeng Liu
2024-06-17 15:21       ` Jianfeng Liu
2024-06-17 12:02   ` Dan Carpenter
2024-06-17 14:23     ` Detlev Casanova
2024-06-15  1:56 ` [PATCH 2/3] media: dt-bindings: rockchip: Document RK3588 Video Decoder 2 bindings Detlev Casanova
2024-06-15  3:15   ` Rob Herring (Arm)
2024-06-15  8:11   ` Jonas Karlman
2024-06-15 19:49     ` Detlev Casanova
2024-06-15 22:58       ` Heiko Stuebner
2024-06-15  1:56 ` [PATCH 3/3] arm64: dts: rockchip: Add rkvdec2 Video Decoder on rk3588(s) Detlev Casanova
2024-06-15  8:25   ` Jonas Karlman
2024-06-15 19:55     ` Detlev Casanova
2024-06-16  7:28       ` Heiko Stuebner
2024-06-17 14:31         ` Detlev Casanova [this message]
2024-06-16  9:17       ` Jonas Karlman
2024-06-16 11:55         ` Dragan Simic
2024-06-17 14:36         ` Detlev Casanova

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=4516494.Mh6RI2rZIc@arisu \
    --to=detlev.casanova@collabora.com \
    --cc=alchark@gmail.com \
    --cc=andy.yan@rock-chips.com \
    --cc=conor+dt@kernel.org \
    --cc=cristian.ciocaltea@collabora.com \
    --cc=devicetree@vger.kernel.org \
    --cc=didi.debian@cknow.org \
    --cc=dsimic@manjaro.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=heiko@sntech.de \
    --cc=jonas@kwiboo.se \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --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=robh@kernel.org \
    --cc=sebastian.reichel@collabora.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).