Hi Mani, On Tue, Aug 13, 2019 at 07:22:09PM +0530, Manivannan Sadhasivam wrote: > Hi Sakari, > > On Tue, Aug 13, 2019 at 03:22:12PM +0300, Sakari Ailus wrote: > > Hi Manivannan, > > > > On Tue, Aug 13, 2019 at 05:44:00PM +0530, Manivannan Sadhasivam wrote: > > > Hi Sakari, > > > > > > On Tue, Aug 13, 2019 at 02:46:43PM +0300, Sakari Ailus wrote: > > > > Hi Manivannan, > > > > > > > > On Tue, Aug 13, 2019 at 05:03:58PM +0530, Manivannan Sadhasivam wrote: > > > > > Hi Sakari, > > > > > > > > > > Thanks for the review! > > > > > > > > > > On Tue, Aug 13, 2019 at 12:45:26PM +0300, Sakari Ailus wrote: > > > > > > Hi Manivannan, > > > > > > > > > > > > On Tue, Aug 06, 2019 at 06:39:36PM +0530, Manivannan Sadhasivam wrote: > > > > > > > Add devicetree binding for IMX290 CMOS image sensor. > > > > > > > > > > > > > > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> > > > > > > > Reviewed-by: Rob Herring <robh@xxxxxxxxxx> > > > > > > > --- > > > > > > > .../devicetree/bindings/media/i2c/imx290.txt | 51 +++++++++++++++++++ > > > > > > > 1 file changed, 51 insertions(+) > > > > > > > create mode 100644 Documentation/devicetree/bindings/media/i2c/imx290.txt > > > > > > > > > > > > > > diff --git a/Documentation/devicetree/bindings/media/i2c/imx290.txt b/Documentation/devicetree/bindings/media/i2c/imx290.txt > > > > > > > new file mode 100644 > > > > > > > index 000000000000..7535b5b5b24b > > > > > > > --- /dev/null > > > > > > > +++ b/Documentation/devicetree/bindings/media/i2c/imx290.txt > > > > > > > @@ -0,0 +1,51 @@ > > > > > > > +* Sony IMX290 1/2.8-Inch CMOS Image Sensor > > > > > > > + > > > > > > > +The Sony IMX290 is a 1/2.8-Inch CMOS Solid-state image sensor with > > > > > > > +Square Pixel for Color Cameras. It is programmable through I2C and 4-wire > > > > > > > +interfaces. The sensor output is available via CMOS logic parallel SDR output, > > > > > > > +Low voltage LVDS DDR output and CSI-2 serial data output. > > > > > > > > > > > > If there are three to choose from, then you should specify which one is in > > > > > > use. Given that I think chances remain slim we'd add support for the other > > > > > > two (it's certainly not ruled out though), CSI-2 could be the default. But > > > > > > this needs to be documented. > > > > > > > > > > > > > > > > Hmm... I'm not sure here. Bindings should describe the hardware and not the > > > > > limitations of the driver. Here as you said, the sensor can output frames > > > > > in 3 different modes/formats but the driver only supports CSI2. I can add a > > > > > note in the driver but not sure whether dt-binding is the right place or not! > > > > > > > > I guess alternatively you could document the necessary bindings for the > > > > other two busses. > > > > > > > > But what I'm saying here is that it's highly unlikely they'll be ever > > > > needed, and it'd be mostly a waste of time to implement that. (That said, I > > > > have nothing against the use of these busses, but I've never seen anyone > > > > using them.) Many other devices use defaults for more contentious settings. > > > > > > > > > > Agree with you but my question was, whether I could document the supported > > > mode in bindings or not! I have seen comments from Rob in the past that the > > > binding should not document the limitations of the driver. But anyway, one > > > can infer from the current binding that only CSI2 is supported for now, it's > > > just stating it explicitly makes me doubtful! > > > > I think it could be e.g.: > > > > The CSI-2 bus is the default. No bindings have been defined for the other > > busses. > > > > Ack. > > > ... > > > > > > > > I suppose you can't change the lane order, so clock-lanes is redundant > > > > > > (don't use it in the example) and data-lanes should be monotonically > > > > > > incrementing series from 1 to 4. > > > > > > > > > > > > > > > > We can change the order and the example here illustrates how it has been > > > > > wired in FRAMOS module. If I change the lane order like you said, it won't > > > > > work. > > > > > > > > I highly doubt that. Neither the driver nor the sensor uses the lane > > > > ordering information. > > > > > > > > > > Agree but CSI2 host will need this informtion, right? Please correct me if > > > I'm wrong! > > > > The CSI-2 receiver may need that configuration, but it's not addressed by a > > sensor's binding documentation (it's configured in the endpoint on the > > receiver's side). > > > > Yes but I thought that documenting the sensor lane configuration based on one > example implementation might help interfacing w/ different hosts. Anyway, to be > host agnostic, I can drop the clock lane and make data lane start from 1 as you > suggested. You could well have a different configuration from the default in an example. But my point is that this is simply the wrong place for configuring the lane mapping on the host. -- Sakari Ailus