Message ID | 1430833799-31936-1-git-send-email-nikhil.nd@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 05/05/15 15:49, Nikhil Devshatwar wrote: > Current v4l2_of_parse_parallel_bus function attempts to parse the > DT properties for the parallel bus as well as BT656 bus. > If the pclk-sample property is defined for the BT656 bus, it is still > marked as a parallel bus. > Fix this by parsing the pclk after the bus_type is selected. > Only when hsync or vsync properties are specified, the bus_type should > be set to V4L2_MBUS_PARALLEL. > > Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com> Thanks for the patch. Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> I'd say this should be backported to stable. > --- > drivers/media/v4l2-core/v4l2-of.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/media/v4l2-core/v4l2-of.c b/drivers/media/v4l2-core/v4l2-of.c > index c52fb96..b27cbb1 100644 > --- a/drivers/media/v4l2-core/v4l2-of.c > +++ b/drivers/media/v4l2-core/v4l2-of.c > @@ -93,10 +93,6 @@ static void v4l2_of_parse_parallel_bus(const struct device_node *node, > flags |= v ? V4L2_MBUS_VSYNC_ACTIVE_HIGH : > V4L2_MBUS_VSYNC_ACTIVE_LOW; > > - if (!of_property_read_u32(node, "pclk-sample", &v)) > - flags |= v ? V4L2_MBUS_PCLK_SAMPLE_RISING : > - V4L2_MBUS_PCLK_SAMPLE_FALLING; > - > if (!of_property_read_u32(node, "field-even-active", &v)) > flags |= v ? V4L2_MBUS_FIELD_EVEN_HIGH : > V4L2_MBUS_FIELD_EVEN_LOW; > @@ -105,6 +101,10 @@ static void v4l2_of_parse_parallel_bus(const struct device_node *node, > else > endpoint->bus_type = V4L2_MBUS_BT656; > > + if (!of_property_read_u32(node, "pclk-sample", &v)) > + flags |= v ? V4L2_MBUS_PCLK_SAMPLE_RISING : > + V4L2_MBUS_PCLK_SAMPLE_FALLING; > + > if (!of_property_read_u32(node, "data-active", &v)) > flags |= v ? V4L2_MBUS_DATA_ACTIVE_HIGH : > V4L2_MBUS_DATA_ACTIVE_LOW; -- Regards, Sylwester -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/media/v4l2-core/v4l2-of.c b/drivers/media/v4l2-core/v4l2-of.c index c52fb96..b27cbb1 100644 --- a/drivers/media/v4l2-core/v4l2-of.c +++ b/drivers/media/v4l2-core/v4l2-of.c @@ -93,10 +93,6 @@ static void v4l2_of_parse_parallel_bus(const struct device_node *node, flags |= v ? V4L2_MBUS_VSYNC_ACTIVE_HIGH : V4L2_MBUS_VSYNC_ACTIVE_LOW; - if (!of_property_read_u32(node, "pclk-sample", &v)) - flags |= v ? V4L2_MBUS_PCLK_SAMPLE_RISING : - V4L2_MBUS_PCLK_SAMPLE_FALLING; - if (!of_property_read_u32(node, "field-even-active", &v)) flags |= v ? V4L2_MBUS_FIELD_EVEN_HIGH : V4L2_MBUS_FIELD_EVEN_LOW; @@ -105,6 +101,10 @@ static void v4l2_of_parse_parallel_bus(const struct device_node *node, else endpoint->bus_type = V4L2_MBUS_BT656; + if (!of_property_read_u32(node, "pclk-sample", &v)) + flags |= v ? V4L2_MBUS_PCLK_SAMPLE_RISING : + V4L2_MBUS_PCLK_SAMPLE_FALLING; + if (!of_property_read_u32(node, "data-active", &v)) flags |= v ? V4L2_MBUS_DATA_ACTIVE_HIGH : V4L2_MBUS_DATA_ACTIVE_LOW;
Current v4l2_of_parse_parallel_bus function attempts to parse the DT properties for the parallel bus as well as BT656 bus. If the pclk-sample property is defined for the BT656 bus, it is still marked as a parallel bus. Fix this by parsing the pclk after the bus_type is selected. Only when hsync or vsync properties are specified, the bus_type should be set to V4L2_MBUS_PARALLEL. Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com> --- drivers/media/v4l2-core/v4l2-of.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)