Re: [PATCH v7 0/6] Allwinner A31/A83T MIPI CSI-2 and A31 ISP / ISP Driver

From: Jernej Škrabec
Date: Tue Oct 25 2022 - 01:02:13 EST


Hi Paul,

Dne petek, 21. oktober 2022 ob 16:14:26 CEST je Paul Kocialkowski napisal(a):
> Hi,
>
> On Sat 24 Sep 22, 17:32, Paul Kocialkowski wrote:
> > This part only concerns the introduction of the new ISP driver and related
> > adaptation of the CSI driver.
>
> I don't think there is any significant issue preventing this series from
> being merged in Linux 6.2 at this point.
>
> Could we move forward on it? It's been around for quite some time now.

While I'm no expert in ISP drivers, I can take a look (for other series too)
this week.

Could you attach output of v4l2-complience output (for both)?

Best regards,
Jernej

>
> Thanks!
>
> Paul
>
> > Most non-dt patches still need reviewing but should be pretty
> > straightforward. Since this multi-part series has been going on for a
> > while, it would be great to see it merged soon!
> >
> > Changes since v6:
> > - Added a per-compatible check for the required port in dt binding;
> > - Reworded ISP output port description in dt binding;
> > - Reversed ISP detection order to have fwnode first;
> > - Removed info print when ISP link is detected;
> > - Added warn print when ISP is linked but not enabled in config;
> > - Fixed sun6i_csi_isp_detect return type;
> > - Removed useless initialization in sun6i_csi_isp_detect;
> > - Fixed typo in sun6i_csi_isp_detect;
> > - Added collected tags;
> >
> > Changes since v5:
> > - Rebased on latest media tree;
> > - Added collected tag;
> > - Switched to using media_pad_remote_pad_first;
> > - Switched to using media_pad_remote_pad_unique.
> >
> > Changes since v4:
> > - Fixed device-tree binding indent-align;
> > - Added collected tag;
> > - Rebased on latest media tree;
> >
> > Changes since v3:
> > - Removed the v4l2 controls handler from the driver;
> > - Added variant structure for table sizes;
> > - Removed the info message about video device registration;
> > - Removed comments in uAPI header;
> > - Used '/schemas/graph.yaml#/properties/port' whenever possible in
> > bindings; - Added CSI patches dependent on the ISP driver;
> > - Rebased on the latest media tree;
> >
> > Changes since all-in-one v2:
> > - Updated Kconfig to follow the latest media-wide changes;
> > - Reworked async subdev handling with a dedicated structure holding the
> >
> > corresponding source to avoid matching in the driver;
> >
> > - Switched to clock-managed regmap mmio;
> > - Used helper to get a single enabled link for an entity's pad, to replace
> >
> > source selection at link_validate time and select the remote source at
> > stream on time instead;
> >
> > - Added mutex for mbus format serialization;
> > - Used endpoint-base instead of video-interface for "internal" endpoints
> >
> > in device-tree schema;
> >
> > - Added TODO with unstaging requirements;
> > - Various cosmetic cleanups;
> > - Updated copyright years;
> >
> > Paul Kocialkowski (6):
> > dt-bindings: media: Add Allwinner A31 ISP bindings documentation
> > dt-bindings: media: sun6i-a31-csi: Add internal output port to the ISP
> > staging: media: Add support for the Allwinner A31 ISP
> > MAINTAINERS: Add entry for the Allwinner A31 ISP driver
> > media: sun6i-csi: Detect the availability of the ISP
> > media: sun6i-csi: Add support for hooking to the isp devices
> >
> > .../media/allwinner,sun6i-a31-csi.yaml | 4 +
> > .../media/allwinner,sun6i-a31-isp.yaml | 101 +++
> > MAINTAINERS | 9 +
> > .../platform/sunxi/sun6i-csi/sun6i_csi.c | 75 +-
> > .../platform/sunxi/sun6i-csi/sun6i_csi.h | 10 +
> > .../sunxi/sun6i-csi/sun6i_csi_bridge.c | 32 +-
> > .../sunxi/sun6i-csi/sun6i_csi_capture.c | 19 +-
> > .../sunxi/sun6i-csi/sun6i_csi_capture.h | 1 +
> > drivers/staging/media/sunxi/Kconfig | 1 +
> > drivers/staging/media/sunxi/Makefile | 1 +
> > drivers/staging/media/sunxi/sun6i-isp/Kconfig | 15 +
> > .../staging/media/sunxi/sun6i-isp/Makefile | 4 +
> > .../staging/media/sunxi/sun6i-isp/TODO.txt | 6 +
> > .../staging/media/sunxi/sun6i-isp/sun6i_isp.c | 555 +++++++++++++
> > .../staging/media/sunxi/sun6i-isp/sun6i_isp.h | 90 +++
> > .../media/sunxi/sun6i-isp/sun6i_isp_capture.c | 742 ++++++++++++++++++
> > .../media/sunxi/sun6i-isp/sun6i_isp_capture.h | 78 ++
> > .../media/sunxi/sun6i-isp/sun6i_isp_params.c | 566 +++++++++++++
> > .../media/sunxi/sun6i-isp/sun6i_isp_params.h | 52 ++
> > .../media/sunxi/sun6i-isp/sun6i_isp_proc.c | 577 ++++++++++++++
> > .../media/sunxi/sun6i-isp/sun6i_isp_proc.h | 66 ++
> > .../media/sunxi/sun6i-isp/sun6i_isp_reg.h | 275 +++++++
> > .../sunxi/sun6i-isp/uapi/sun6i-isp-config.h | 43 +
> > 23 files changed, 3309 insertions(+), 13 deletions(-)
> > create mode 100644
> > Documentation/devicetree/bindings/media/allwinner,sun6i-a31-isp.yaml
> > create mode 100644 drivers/staging/media/sunxi/sun6i-isp/Kconfig
> > create mode 100644 drivers/staging/media/sunxi/sun6i-isp/Makefile
> > create mode 100644 drivers/staging/media/sunxi/sun6i-isp/TODO.txt
> > create mode 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp.c
> > create mode 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp.h
> > create mode 100644
> > drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_capture.c create mode
> > 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_capture.h create
> > mode 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_params.c
> > create mode 100644
> > drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_params.h create mode
> > 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_proc.c create
> > mode 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_proc.h
> > create mode 100644 drivers/staging/media/sunxi/sun6i-isp/sun6i_isp_reg.h
> > create mode 100644
> > drivers/staging/media/sunxi/sun6i-isp/uapi/sun6i-isp-config.h