2023-11-15 09:17:01

by Mehdi Djait

[permalink] [raw]
Subject: Re: [PATCH v10 2/3] media: rockchip: Add a driver for Rockchip's camera interface

On Mon, Nov 13, 2023 at 05:05:12PM +0100, Michael Riesch wrote:
> Hi Mehdi,
>
> On 11/13/23 16:28, Mehdi Djait wrote:
> > Hi Michael,
> >
> > On Fri, Nov 10, 2023 at 03:33:34PM +0100, Michael Riesch wrote:
> >> Hi Mehdi,
> >>
> >> Sorry, forgot one thing:
> >>
> >> On 11/8/23 17:38, Mehdi Djait wrote:
> >>> +static int cif_subdev_notifier(struct cif_device *cif_dev)
> >>> +{
> >>> + struct v4l2_async_notifier *ntf = &cif_dev->notifier;
> >>> + struct device *dev = cif_dev->dev;
> >>> + struct v4l2_async_connection *asd;
> >>> + struct v4l2_fwnode_endpoint vep = {
> >>> + .bus_type = V4L2_MBUS_PARALLEL,
> >>
> >> This is surprising. I had to set this to V4L2_MBUS_UNKNOWN, otherwise
> >> v4l2_fwnode_endpoint_parse would yield -ENXIO, which indicates a bus
> >> type mismatch. Does this really work for your (BT.656, right?) setup?
> >>
> >
> > Yes it works.
> >
> >> I think we should get the bus type from the device tree, right?
> >>
> >
> > I am looking into this.
> >
> >> Thanks and best regards,
> >> Michael
> >>
> >
> > I assume you have a "bus-type = <MEDIA_BUS_TYPE_BT656>;" in the device
> > tree definition of your endpoint ? This caused the mismatch as the
> > v4l2_fwnode_endpoint is set to PARALLEL
>
> Yes that's correct.
>
> The documentation is quite sparse here, but I would guess that the PX30
> VIP accepts parallel data without embedded syncs (=
> MEDIA_BUS_TYPE_PARALLEL) as well as parallel data with embedded syncs (=
> MEDIA_BUS_TYPE_BT656). If this is actually the case, I think we should
> put V4L2_MBUS_UNKNOWN and let the device tree decide.

Yes, I will do this.

>
> We can be sure, however, that the PX30 VIP supports BT.656, so I guess
> the safe approach would be to use .bus_type = V4L2_MBUS_BT656.
>
> What do you think?

I agree

--
Kind Regards
Mehdi Djait

>
> Best regards,
> Michael