Received: by 10.192.165.148 with SMTP id m20csp481251imm; Fri, 4 May 2018 00:58:55 -0700 (PDT) X-Google-Smtp-Source: AB8JxZp6/x8C+QSeXlVHLYDY5WGspXSSJL9BkPE230hM1Z7TNTfi7CpXe9G6kznKSOS0vcRXUjzg X-Received: by 2002:a63:b642:: with SMTP id v2-v6mr21762677pgt.158.1525420735710; Fri, 04 May 2018 00:58:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525420735; cv=none; d=google.com; s=arc-20160816; b=GhdL03S4bu4OuwxLnd/khE45SwMshhMnwGSq8rQZLFXKKmvbNR54bf+ZoKyp68Dsce NJLjDPfEyJ4IimsXvpqa6YbZ+awgHA1yeOHgWSLBzJ/wu7MVQQOujjZ8peSVB4LqgTE4 x6cd7A29U7LVTRitlhprJ/HzYXtjNYYtNgJXvMIAkTLppJbaY+tVN58rx4iOTAuNmAzF js9FEGQUFuAjxn6UnkcRx9I3+iEniSEEZTnacLQa2xAJ8NEbxHTJQBt57YBLtVhgJtGf C7KgpbdbS7W1AcCq0FWRX/YSNwE5XPlZXI1YLaWFNif7L+SUMUSAYCTJZ/J07GaPnsiJ Rkig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:organization:references :in-reply-to:date:cc:to:from:subject:message-id :arc-authentication-results; bh=C8YyBE2b1y8AHA8sA3xKAebeLXVEKyY6QlBRMu5jiRo=; b=vqDkHelWZqr0BxWZk/4xdmrxOaqboR9zIjS3sO2pJj0p1MtXtYXe8iYTB9pJlxy3Qb 5aMySXUDyfiONLWYXVeeflXKKHBTIy/wooy2b/dRiFOtMgFo2/+CaHK+c2ryKSoD+Ozw jFNQkpsJEcEse2zAMyn6MnuXV/toKwV4WrsdSwghgWQO++sxRNeoSiKnj4/85PDtHZEY dNIr8VBQFmOX02MdXNMoecgmMpaEB44bdkitDgdWPsp4zKW7sEqeVXai+WHcvn21bZNA 36XIvSZJTGRm56jiY5iieu061AudyPkYPIDDE9BD8Ue/XMS7sOvf9Q+iNGlPb34ZRAy3 aaeQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id g5si14940784pfh.271.2018.05.04.00.58.40; Fri, 04 May 2018 00:58:55 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751229AbeEDH6b (ORCPT + 99 others); Fri, 4 May 2018 03:58:31 -0400 Received: from mail.bootlin.com ([62.4.15.54]:50141 "EHLO mail.bootlin.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750707AbeEDH63 (ORCPT ); Fri, 4 May 2018 03:58:29 -0400 Received: by mail.bootlin.com (Postfix, from userid 110) id 220CC20713; Fri, 4 May 2018 09:58:27 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mail.bootlin.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT shortcircuit=ham autolearn=disabled version=3.4.0 Received: from aptenodytes (LStLambert-657-1-97-87.w90-63.abo.wanadoo.fr [90.63.216.87]) by mail.bootlin.com (Postfix) with ESMTPSA id 15BDA20829; Fri, 4 May 2018 09:57:39 +0200 (CEST) Message-ID: Subject: Re: [PATCH v2 08/10] dt-bindings: media: Document bindings for the Sunxi-Cedrus VPU driver From: Paul Kocialkowski To: Rob Herring Cc: Tomasz Figa , Philipp Zabel , Linux Media Mailing List , devicetree@vger.kernel.org, "list@263.net:IOMMU DRIVERS , Joerg " "Roedel ," , Linux Kernel Mailing List , linux-sunxi@googlegroups.com, Mauro Carvalho Chehab , Mark Rutland , Maxime Ripard , wens@csie.org, Pawel Osciak , Marek Szyprowski , Kyungmin Park , Hans Verkuil , Sakari Ailus , Arnd Bergmann , Alexandre Courbot Date: Fri, 04 May 2018 09:56:20 +0200 In-Reply-To: <20180427030436.3ptrb2ldhtnssipj@rob-hp-laptop> References: <20180419154124.17512-1-paul.kocialkowski@bootlin.com> <20180419154536.17846-4-paul.kocialkowski@bootlin.com> <1524153860.3416.9.camel@pengutronix.de> <5fa80b1e88ad2a215f51ea3a2b9b62274fa9b1ec.camel@bootlin.com> <20180427030436.3ptrb2ldhtnssipj@rob-hp-laptop> Organization: Bootlin Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-b/HxHQn6MyZGhNkytJKo" X-Mailer: Evolution 3.28.1 Mime-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --=-b/HxHQn6MyZGhNkytJKo Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi, On Thu, 2018-04-26 at 22:04 -0500, Rob Herring wrote: > On Fri, Apr 20, 2018 at 09:22:20AM +0200, Paul Kocialkowski wrote: > > Hi and thanks for the review, > >=20 > > On Fri, 2018-04-20 at 01:31 +0000, Tomasz Figa wrote: > > > Hi Paul, Philipp, > > >=20 > > > On Fri, Apr 20, 2018 at 1:04 AM Philipp Zabel > > .de> > > > wrote: > > >=20 > > > > Hi Paul, > > > > On Thu, 2018-04-19 at 17:45 +0200, Paul Kocialkowski wrote: > > > > > This adds a device-tree binding document that specifies the > > > > > properties > > > > > used by the Sunxi-Cedurs VPU driver, as well as examples. > > > > >=20 > > > > > Signed-off-by: Paul Kocialkowski > > > > m> > > > > > --- > > > > > .../devicetree/bindings/media/sunxi-cedrus.txt | 50 > > >=20 > > > ++++++++++++++++++++++ > > > > > 1 file changed, 50 insertions(+) > > > > > create mode 100644 > > >=20 > > > Documentation/devicetree/bindings/media/sunxi-cedrus.txt > > > > >=20 > > > > > diff --git a/Documentation/devicetree/bindings/media/sunxi- > > > > > cedrus.txt > > >=20 > > > b/Documentation/devicetree/bindings/media/sunxi-cedrus.txt > > > > > new file mode 100644 > > > > > index 000000000000..71ad3f9c3352 > > > > > --- /dev/null > > > > > +++ b/Documentation/devicetree/bindings/media/sunxi-cedrus.txt > > > > > @@ -0,0 +1,50 @@ > > > > > +Device-tree bindings for the VPU found in Allwinner SoCs, > > > > > referred to > > >=20 > > > as the > > > > > +Video Engine (VE) in Allwinner literature. > > > > > + > > > > > +The VPU can only access the first 256 MiB of DRAM, that are > > > > > DMA- > > > > > mapped > > >=20 > > > starting > > > > > +from the DRAM base. This requires specific memory allocation > > > > > and > > >=20 > > > handling. > > >=20 > > > And no IOMMU? Brings back memories. > >=20 > > Exactly, no IOMMU so we don't have much choice but cope with that > > hardware limitation... > >=20 > > > > > + > > > > > +Required properties: > > > > > +- compatible : "allwinner,sun4i-a10-video-engine"; > > > > > +- memory-region : DMA pool for buffers allocation; > > > > > +- clocks : list of clock specifiers, > > > > > corresponding to > > >=20 > > > entries in > > > > > + the clock-names property; > > > > > +- clock-names : should contain "ahb", "mod" > > > > > and > > > > > "ram" > > >=20 > > > entries; > > > > > +- assigned-clocks : list of clocks assigned to the VE; > > > > > +- assigned-clocks-rates : list of clock rates for the clocks > > > > > assigned > > >=20 > > > to the VE; > > > > > +- resets : phandle for reset; > > > > > +- interrupts : should contain VE interrupt number; > > > > > +- reg : should contain register base > > > > > and > > > > > length > > >=20 > > > of VE. > > > > > + > > > > > +Example: > > > > > + > > > > > +reserved-memory { > > > > > + #address-cells =3D <1>; > > > > > + #size-cells =3D <1>; > > > > > + ranges; > > > > > + > > > > > + /* Address must be kept in the lower 256 MiBs of DRAM > > > > > for > > > > > VE. */ > > > > > + ve_memory: cma@4a000000 { > > > > > + compatible =3D "shared-dma-pool"; > > > > > + reg =3D <0x4a000000 0x6000000>; > > > > > + no-map; > > > > > + linux,cma-default; > > > > > + }; > > > > > +}; > > > > > + > > > > > +video-engine@1c0e000 { > > > >=20 > > > > This is not really required by any specification, and not as > > > > common > > > > as > > > > gpu@..., but could this reasonably be called "vpu@1c0e000" to > > > > follow > > > > somewhat-common practice? > > >=20 > > > AFAIR the name is supposed to be somewhat readable for someone > > > that > > > doesn't know the hardware. To me, "video-engine" sounds more > > > obvious > > > than "vpu", but we actually use "codec" already, in case of MFC > > > and > > > JPEG codec on Exynos. If encode/decode is the only functionality > > > of > > > this block, I'd personally go with "codec". If it can do other > > > things, > > > e.g. scaling/rotation without encode/decode, I'd probably call it > > > "video-processor". > >=20 > > I agree that the term VPU is more commonly associated with video > > decoding, while video engine could mean a number of things. > >=20 > > The reason I went with "video-engine" here (while still presenting > > the > > driver as a VPU driver) is that Video Engine is the term used in > > Allwinner's litterature. Other nodes in Allwinner device-trees > > generally > > stick to these terms (for instance, we have "display-engine" nodes). > > This also makes it easier to find the matching parts in the > > documentation. >=20 > 'video-codec' is what is defined in the DT spec. Is that an actively-enforced guideline or a suggestion? I'd like to keep video-engine just to stick with the technical documentation wording and my personal taste is also to prefer vpu over video-codec (in terms of clarity/straightforwardness) as a second choice. Still, if the choice isn't up to me, we can go with video-codec (or vpu). Cheers, --=20 Paul Kocialkowski, Bootlin (formerly Free Electrons) Embedded Linux and kernel engineering https://bootlin.com --=-b/HxHQn6MyZGhNkytJKo Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQEzBAABCAAdFiEEJZpWjZeIetVBefti3cLmz3+fv9EFAlrsEiQACgkQ3cLmz3+f v9E79gf/TOaR+bQQFevAdm0ib4NhBuRzUx3VuTMs2eWeaxoSJ/6oHXfqmq2w8DOp lWW7dGt8q7/Q3yvx1MnoVBWJZFepwrJB9IPiZ05R/wkKCgkPaIkpE2Yc4C18ykby eX2gnwyfiMuVvMdAmDRYAoWV1VZHVlPbLyUtR2r8JMXxKIR6WYJDYeB2tnzlB3zD iq/n12jFw8o8tayGFDUgL0H6y9CL/5ZM77vI1MSM08uHrkvm3YhBCFKLdrCZLkei 5+1CzRvzZdy252eTNAGVbg8O6FO4G6cAmT4C7haZFkVAEPCWKo4geZSTOqlio331 6gvUMRKGbw8PhzOX7yJrW0FzW1n3+g== =x0aN -----END PGP SIGNATURE----- --=-b/HxHQn6MyZGhNkytJKo--