Messages in this thread | | | Date | Sun, 14 Jul 2013 21:23:31 +0200 | From | Sylwester Nawrocki <> | Subject | Re: [PATCH RFC v3] media: OF: add video sync endpoint property |
| |
Hi Prabhakar,
On 07/12/2013 06:29 AM, Prabhakar Lad wrote: > On Fri, Jul 12, 2013 at 2:45 AM, Sylwester Nawrocki > <sylvester.nawrocki@gmail.com> wrote: >> On 07/11/2013 01:41 PM, Prabhakar Lad wrote: >> [...] >> >>>>> diff --git a/drivers/media/v4l2-core/v4l2-of.c >>>>> b/drivers/media/v4l2-core/v4l2-of.c >>>>> index aa59639..1a54530 100644 >>>>> --- a/drivers/media/v4l2-core/v4l2-of.c >>>>> +++ b/drivers/media/v4l2-core/v4l2-of.c >>>>> @@ -100,6 +100,26 @@ static void v4l2_of_parse_parallel_bus(const struct >>>>> device_node *node, >>>>> if (!of_property_read_u32(node, "data-shift",&v)) >>>>> bus->data_shift = v; >>>>> >>>>> + if (!of_property_read_u32(node, "video-sync",&v)) { >>>>> + switch (v) { >>>>> + case V4L2_MBUS_VIDEO_SEPARATE_SYNC: >>>>> + flags |= V4L2_MBUS_VIDEO_SEPARATE_SYNC; >>>> >>>> >>>> >>>> I'm not convinced all those video sync types is something that really >>>> belongs >>>> to the flags field. In my understanding this field is supposed to hold >>>> only >>>> the _signal polarity_ information. >>>> >>>> >>> Ok, so there should be a function say v4l2_of_parse_signal_polarity() >>> to get the polarity alone then. >> >> >> I don't think this is required, I would just extend >> v4l2_of_parse_parallel_bus() >> function to also handle sync-on-green-active property. >> > If that is the case than I have to add a member say 'signal_polarity' > in struct v4l2_of_bus_parallel and assign the polarity to it. > Let me know if you are OK with it.
It probably would have been sensible to do something like this, however I can't see any advantage at the moment. struct v4l2_of_bus_parallel::flags currently holds all the polarity flags. Let's just add relevant macros for sync-on-green and store them in the flags field, as is done with the others. Those V4L2_MUS_* flags are used by soc-camera to negotiate the capabilities, so I would rather not split them further without good reason, even though struct v4l2_mbus_config::flags is used in those negotiation routines, rather than struct v4l2_of_bus_parallel::flags.
-- Thanks, Sylwester
| |