Hi Pavel, My apologies for the delays in reviewing. Feel free to ping me in the future if this happens. :-) On Fri, Feb 03, 2017 at 01:35:08PM +0100, Pavel Machek wrote: > > N900 contains front and back camera, with a switch between the > two. This adds support for the switch component, and it is now > possible to select between front and back cameras during runtime. > > This adds documentation for the devicetree binding. > > Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx> > Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@xxxxxxxxx> > Signed-off-by: Pavel Machek <pavel@xxxxxx> > > > diff --git a/Documentation/devicetree/bindings/media/video-bus-switch.txt b/Documentation/devicetree/bindings/media/video-bus-switch.txt > new file mode 100644 > index 0000000..1b9f8e0 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/video-bus-switch.txt > @@ -0,0 +1,63 @@ > +Video Bus Switch Binding > +======================== > + > +This is a binding for a gpio controlled switch for camera interfaces. Such a > +device is used on some embedded devices to connect two cameras to the same > +interface of a image signal processor. > + > +Required properties > +=================== > + > +compatible : must contain "video-bus-switch" How generic is this? Should we have e.g. nokia,video-bus-switch? And if so, change the file name accordingly. > +switch-gpios : GPIO specifier for the gpio, which can toggle the > + selected camera. The GPIO should be configured, so > + that a disabled GPIO means, that the first port is > + selected. > + > +Required Port nodes > +=================== > + > +More documentation on these bindings is available in > +video-interfaces.txt in the same directory. > + > +reg : The interface: > + 0 - port for image signal processor > + 1 - port for first camera sensor > + 2 - port for second camera sensor I'd say this must be pretty much specific to the one in N900. You could have more ports. Or you could say that ports beyond 0 are camera sensors. I guess this is good enough for now though, it can be changed later on with the source if a need arises. Btw. was it still considered a problem that the endpoint properties for the sensors can be different? With the g_routing() pad op which is to be added, the ISP driver (should actually go to a framework somewhere) could parse the graph and find the proper endpoint there. I don't think we need to wait for that now, but this is how the problem could be solved going forward. > + > +Example > +======= > + > +video-bus-switch { > + compatible = "video-bus-switch" > + switch-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; > + > + csi_switch_in: endpoint { > + remote-endpoint = <&csi_isp>; > + }; > + }; > + > + port@1 { > + reg = <1>; > + > + csi_switch_out1: endpoint { > + remote-endpoint = <&csi_cam1>; > + }; > + }; > + > + port@2 { > + reg = <2>; > + > + csi_switch_out2: endpoint { > + remote-endpoint = <&csi_cam2>; > + }; > + }; > + }; > +}; > > > -- Kind regards, Sakari Ailus e-mail: sakari.ailus@xxxxxx XMPP: sailus@xxxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html