lkml.org 
[lkml]   [2017]   [Dec]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 0/9] media: imx: Add better OF graph support
From
Date
Hi Hans,


On 12/04/2017 05:44 AM, Hans Verkuil wrote:
> Hi Steve,
>
> On 10/28/2017 10:36 PM, Steve Longerbeam wrote:
>> This is a set of patches that improve support for more complex OF
>> graphs. Currently the imx-media driver only supports a single device
>> with a single port connected directly to either the CSI muxes or the
>> MIPI CSI-2 receiver input ports. There can't be a multi-port device in
>> between. This patch set removes those limitations.
>>
>> For an example taken from automotive, a camera sensor or decoder could
>> be literally a remote device accessible over a FPD-III link, via TI
>> DS90Ux9xx deserializer/serializer pairs. This patch set would support
>> such OF graphs.
>>
>> There are still some assumptions and restrictions, regarding the equivalence
>> of device-tree ports, port parents, and endpoints to media pads, entities,
>> and links that have been enumerated in the TODO file.
> Before I merge this patch series I wanted to know if Sakari's async work
> that has now been merged (see https://www.spinics.net/lists/linux-media/msg124082.html)
> affects this patch series.
>
> It still applies cleanly, but I wondered if the subnotifier improvements
> would simplify this driver.

Indeed it does, it negates the need to recursively walk the OF graph to
discover
and register the fwnodes with the async notifier, as imx-media is
currently doing.

Of course it does require adding some code to the sub-devices, to call
v4l2_async_notifier_parse_fwnode_endpoints_by_port() to register remote
fwnodes attached to the sub-device's ports, and then
v4l2_async_subdev_notifier_register() to register a sub-notifier.


>
> Of course, any such simplification can also be done after this series has
> been applied, but I don't know what your thoughts are on this.

I do prefer the sub-notifier approach to discovering fwnodes, so yes I would
like to switch to this.

Since it is a distinct change (using sub-notifiers instead of recursive
graph
walk), I would prefer to get this series applied first, and then switch to
sub-notifiers as distinct patches afterwards.

Let me submit a v2 of this series first however. There are some minor
changes I
would like to make so that the up-coming sub-notifier patches are cleaner.

Steve

>
>> This patch set supersedes the following patches submitted earlier:
>>
>> "[PATCH v2] media: staging/imx: do not return error in link_notify for unknown sources"
>> "[PATCH RFC] media: staging/imx: fix complete handler"
>>
>> Tested by: Steve Longerbeam <steve_longerbeam@mentor.com>
>> on SabreLite with the OV5640
>>
>> Tested-by: Philipp Zabel <p.zabel@pengutronix.de>
>> on Nitrogen6X with the TC358743.
>>
>> Tested-by: Russell King <rmk+kernel@armlinux.org.uk>
>> with the IMX219
>>
>>
>> Steve Longerbeam (9):
>> media: staging/imx: get CSI bus type from nearest upstream entity
>> media: staging/imx: remove static media link arrays
>> media: staging/imx: of: allow for recursing downstream
>> media: staging/imx: remove devname string from imx_media_subdev
>> media: staging/imx: pass fwnode handle to find/add async subdev
>> media: staging/imx: remove static subdev arrays
>> media: staging/imx: convert static vdev lists to list_head
>> media: staging/imx: reorder function prototypes
>> media: staging/imx: update TODO
>>
>> drivers/staging/media/imx/TODO | 63 +++-
>> drivers/staging/media/imx/imx-ic-prp.c | 4 +-
>> drivers/staging/media/imx/imx-media-capture.c | 2 +
>> drivers/staging/media/imx/imx-media-csi.c | 187 +++++-----
>> drivers/staging/media/imx/imx-media-dev.c | 400 ++++++++++------------
>> drivers/staging/media/imx/imx-media-internal-sd.c | 253 +++++++-------
>> drivers/staging/media/imx/imx-media-of.c | 278 ++++++++-------
>> drivers/staging/media/imx/imx-media-utils.c | 122 +++----
>> drivers/staging/media/imx/imx-media.h | 187 ++++------
>> 9 files changed, 722 insertions(+), 774 deletions(-)
>>

\
 
 \ /
  Last update: 2017-12-08 00:24    [W:0.078 / U:2.636 seconds]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site