[PATCH v4 1/3] media: dt-bindings: add rockchip mipi csi-2 receiver
Heiko Stübner
heiko at sntech.de
Fri Jan 16 03:07:22 PST 2026
Am Freitag, 16. Januar 2026, 11:11:26 Mitteleuropäische Normalzeit schrieb Sakari Ailus:
> Hi Michael,
>
> On Thu, Jan 15, 2026 at 07:26:07PM +0100, Michael Riesch via B4 Relay wrote:
> > From: Michael Riesch <michael.riesch at collabora.com>
> >
> > Add documentation for the Rockchip MIPI CSI-2 Receiver.
> >
> > Signed-off-by: Michael Riesch <michael.riesch at wolfvision.net>
> > Signed-off-by: Michael Riesch <michael.riesch at collabora.com>
> > ---
> > .../bindings/media/rockchip,rk3568-mipi-csi2.yaml | 141 +++++++++++++++++++++
> > MAINTAINERS | 6 +
> > 2 files changed, 147 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-csi2.yaml b/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-csi2.yaml
> > new file mode 100644
> > index 000000000000..2c2bd87582eb
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/media/rockchip,rk3568-mipi-csi2.yaml
>
> I'd add a compatible string for the base IP block and name it accordingly.
personally, I wouldn't do that.
While the RK3568-variant is a somewhat smooth integration ... the now
(temporarily) omitted RK3588 variant of a similar block is not.
I.e. the RK3588 has quite a number of those CSI hosts, with a bunch of
resource routing bits and bops between those CSI hosts sitting in the
Rockchip "Gernal Register Files" (dumping ground for random bits and bops).
So you then get a syscon accessing per-soc registers and bits.
So while it is (compatible to) some Synopsis IP block, the integration to
make that thing actually do something is highly soc-specific.
That's also why the for example the dw-hdmi/dsi IPs don't use a common
compatible [0] [1] [2] [3] [4]
[0] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/display/amlogic,meson-dw-hdmi.yaml
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/display/allwinner,sun8i-a83t-dw-hdmi.yaml
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/display/hisilicon/dw-dsi.txt
[3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-hdmi.yaml
[4] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-mipi-dsi.yaml
> > + soc {
> > + interrupt-parent = <&gic>;
> > + #address-cells = <2>;
> > + #size-cells = <2>;
> > +
> > + csi: csi at fdfb0000 {
> > + compatible = "rockchip,rk3568-mipi-csi2";
>
> This would become e.g.
>
> compatible = "rockchip,rk3568-mipi-csi2", "snps,dw-mipi-csi2rx";
>
> See my comments on the driver patch as well.
In the PCIe area, we have rockchip,rk3568-pcie and rockchip,rk3568-pcie-ep
for a similar combo.
For CSI the receiver is the vastly more common thing to do. So if anything,
I'd go with "foo-csi2" vs. "foo-csi2-device", if somebody really develops a
"camera" SoC, with a fully featured DT-based OS in the future ;-) .
Heiko
More information about the linux-arm-kernel
mailing list