Messages in this thread | | | Date | Mon, 13 Nov 2023 17:05:12 +0100 | Subject | Re: [PATCH v10 2/3] media: rockchip: Add a driver for Rockchip's camera interface | From | Michael Riesch <> |
| |
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.
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?
Best regards, Michael
| |