Hi Sakari, On Thu, 2020-05-28 at 10:23 +0300, Sakari Ailus wrote: > Hi Dongchun, > > On Thu, May 28, 2020 at 11:34:42AM +0800, Dongchun Zhu wrote: > > Hi Sakari, Rob, > > > > On Thu, 2020-05-28 at 00:16 +0300, Sakari Ailus wrote: > > > Hi Rob, Dongchun, > > > > > > On Wed, May 27, 2020 at 09:27:22AM -0600, Rob Herring wrote: > > > > > > > + properties: > > > > > > > + endpoint: > > > > > > > + type: object > > > > > > > + additionalProperties: false > > > > > > > + > > > > > > > + properties: > > > > > > > > > > Actually I wonder whether we need to declare 'clock-lanes' here? > > > > > > > > Yes, if you are using it. > > > > > > Dongchun, can you confirm the chip has a single data and a single clock > > > lane and that it does not support lane reordering? > > > > > > > From the datasheet, 'MIPI inside the OV02A10 provides one single > > uni-directional clock lane and one bi-directional data lane solution for > > communication links between components inside a mobile device. > > The data lane has full support for HS(uni-directional) and > > LP(bi-directional) data transfer mode.' > > > > The sensor doesn't support lane reordering, so 'clock-lanes' property > > would not be added in next release. > > > > > So if there's nothing to convey to the driver, also the data-lanes should > > > be removed IMO. > > > > > > > However, 'data-lanes' property may still be required. > > It is known that either data-lanes or clock-lanes is an array of > > physical data lane indexes. Position of an entry determines the logical > > lane number, while the value of an entry indicates physical lane, e.g., > > for 1-lane MIPI CSI-2 bus we could have "data-lanes = <1>;", assuming > > the clock lane is on hardware lane 0. > > > > As mentioned earlier, the OV02A10 sensor supports only 1C1D and does not > > support lane reordering, so here we shall use 'data-lanes = <1>' as > > there is only a clock lane for OV02A10. > > > > Reminder: > > If 'data-lanes' property is not present, the driver would assume > > four-lane operation. This means for one-lane or two-lane operation, this > > property must be present and set to the right physical lane indexes. > > If the hardware does not support lane reordering, monotonically > > incremented values shall be used from 0 or 1 onwards, depending on > > whether or not there is also a clock lane. > > How can the driver use four lanes, considering the device only supports a > single lane?? > I understood your meaning. If we omit the property 'data-lanes', the sensor should work still. But then what's the meaning of the existence of 'data-lanes'? If this property 'data-lanes' is always optional, then why dt-bindings provide the interface? In the meantime, if omitting 'data-lanes' for one sensor(transmitter) that has only one physical data lane, MIPI receiver(e.g., MIPI CSI-2) shall enable four-lane configuration, which may increase consumption of both power and resource in the process of IIC communication.