devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Konstantin Kozhevnikov <konstantin.kozhevnikov@cogentembedded.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Cc: Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	devicetree@vger.kernel.org, linux-media@vger.kernel.org,
	linux-renesas-soc@vger.kernel.org,
	dri-devel@lists.freedesktop.org
Subject: Re: [PATCH RESEND 1/1] media: platform: Renesas IMR driver
Date: Mon, 13 Feb 2017 22:46:04 +0300	[thread overview]
Message-ID: <15d3888d-e15c-db23-27b4-51d5e2840618@cogentembedded.com> (raw)
In-Reply-To: <1770632.4GFlW6r2cg@avalon>

Hello Laurent,

regarding your main question, I think the name "image renderer" is 
misguiding. This IP-block has nothing to do with rendering per se, it is 
rather an image processing module, designed specifically for image 
undistortion (lens correction). We use that as a plain memory-to-memory 
device, and it fits well into V4L2 framework. More complex 
implementation (the one we thought of, but had no capacity to implement) 
would allow integration of VIN (as well as other modules like 
H.264/MPEG4 decoders) and IMR engines into a single processing pipeline 
(so it would not look like a M2M device but would be a sort of 
"smart-VIN"). From that perspective it is no more DRM device driver than 
VSP, which resides in the same "drivers/platform/media" directory.

Sincerely,
Kostya

On 02/12/2017 06:51 PM, Laurent Pinchart wrote:
> Hi Sergei,
>
> (CC'ing the dri-evel mailing list)
>
> Thank you for the patch.
>
> On Saturday 11 Feb 2017 23:02:01 Sergei Shtylyov wrote:
>> From: Konstantin Kozhevnikov <Konstantin.Kozhevnikov@cogentembedded.com>
>>
>> The image renderer light extended 4 (IMR-LX4) or the distortion correction
>> engine is a drawing processor with a simple  instruction system capable of
>> referencing data on an external memory as 2D texture data and performing
>> texture mapping and drawing with respect to any shape that is split into
>> triangular objects.
>>
>> This V4L2 memory-to-memory device driver only supports image renderer found
>> in the R-Car gen3 SoCs; the R-Car gen2 support  can be added later...
> Let's start with the main question : given that this is a rendering engine, it
> looks like it should use the DRM subsystem.
>
>> [Sergei: merged 2 original patches, added the patch description, removed
>> unrelated parts,  added the binding document, ported the driver to the
>> modern kernel, renamed the UAPI header file and the guard  macros to match
>> the driver name, extended the copyrights, fixed up Kconfig prompt/depends/
>> help, made use of the BIT()/GENMASK() macros, sorted #include's, removed
>> leading  dots and fixed grammar in the comments, fixed up indentation to
>> use tabs where possible, renamed IMR_DLSR to IMR_DLPR to match the manual,
>> separated the register offset/bit #define's, removed *inline* from .c file,
>> fixed lines over 80 columns, removed useless parens, operators, casts,
>> braces, variables, #include's, (commented out) statements, and even
>> function, inserted empty line after desclaration, removed extra empty
>> lines, reordered some local variable desclarations, removed calls to
>> 4l2_err() on kmalloc() failure, fixed the error returned by imr_default(),
>> avoided code duplication in the IRQ handler, used '__packed' for the UAPI
>> structures, enclosed the macro parameters in parens, exchanged the values
>> of IMR_MAP_AUTO[SD]G macros.]
>>
>> Signed-off-by: Konstantin Kozhevnikov
>> <Konstantin.Kozhevnikov@cogentembedded.com> Signed-off-by: Sergei Shtylyov
>> <sergei.shtylyov@cogentembedded.com>
>>
>> ---
>> This patch is against the 'media_tree.git' repo's 'master' branch.
>>
>>   Documentation/devicetree/bindings/media/rcar_imr.txt |   23
>>   drivers/media/platform/Kconfig                       |   13
>>   drivers/media/platform/Makefile                      |    1
>>   drivers/media/platform/rcar_imr.c                    | 1923 +++++++++++++++
>>   include/uapi/linux/rcar_imr.h                        |   94
>>   5 files changed, 2054 insertions(+)

  reply	other threads:[~2017-02-13 19:46 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-11 20:02 [PATCH RESEND 1/1] media: platform: Renesas IMR driver Sergei Shtylyov
     [not found] ` <20170211200207.273799464-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org>
2017-02-12 15:51   ` Laurent Pinchart
2017-02-13 19:46     ` Konstantin Kozhevnikov [this message]
2017-02-22 14:25 ` Rob Herring
2017-02-22 19:05   ` Sergei Shtylyov
     [not found]     ` <cccaf6f7-0ff3-539c-5b60-e28858018b97-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org>
2017-03-13 19:52       ` Sergei Shtylyov

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=15d3888d-e15c-db23-27b4-51d5e2840618@cogentembedded.com \
    --to=konstantin.kozhevnikov@cogentembedded.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mchehab@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=sergei.shtylyov@cogentembedded.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).