Re: [PATCH v8 1/2] media: i2c/ov5645: add the device tree binding document

From: Todor Tomov
Date: Tue Apr 04 2017 - 07:06:51 EST


Hi Sakari,

Thank you for the time to review this again.

On 04/04/2017 12:31 PM, Sakari Ailus wrote:
> Hi Todor,
>
> On Mon, Apr 03, 2017 at 05:02:28PM +0300, Todor Tomov wrote:
>> Add the document for ov5645 device tree binding.
>>
>> Signed-off-by: Todor Tomov <todor.tomov@xxxxxxxxxx>
>> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
>> ---
>> .../devicetree/bindings/media/i2c/ov5645.txt | 54 ++++++++++++++++++++++
>> 1 file changed, 54 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/media/i2c/ov5645.txt
>>
>> diff --git a/Documentation/devicetree/bindings/media/i2c/ov5645.txt b/Documentation/devicetree/bindings/media/i2c/ov5645.txt
>> new file mode 100644
>> index 0000000..fd7aec9
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/media/i2c/ov5645.txt
>> @@ -0,0 +1,54 @@
>> +* Omnivision 1/4-Inch 5Mp CMOS Digital Image Sensor
>> +
>> +The Omnivision OV5645 is a 1/4-Inch CMOS active pixel digital image sensor with
>> +an active array size of 2592H x 1944V. It is programmable through a serial I2C
>> +interface.
>> +
>> +Required Properties:
>> +- compatible: Value should be "ovti,ov5645".
>> +- clocks: Reference to the xclk clock.
>> +- clock-names: Should be "xclk".
>> +- clock-frequency: Frequency of the xclk clock.
>> +- enable-gpios: Chip enable GPIO. Polarity is GPIO_ACTIVE_HIGH. This corresponds
>> + to the hardware pin PWDNB which is physically active low.
>> +- reset-gpios: Chip reset GPIO. Polarity is GPIO_ACTIVE_LOW. This corresponds to
>> + the hardware pin RESETB.
>> +- vdddo-supply: Chip digital IO regulator.
>> +- vdda-supply: Chip analog regulator.
>> +- vddd-supply: Chip digital core regulator.
>> +
>> +The device node must contain one 'port' child node for its digital output
>> +video port, in accordance with the video interface bindings defined in
>> +Documentation/devicetree/bindings/media/video-interfaces.txt.
>> +
>> +Example:
>> +
>> + &i2c1 {
>> + ...
>> +
>> + ov5645: ov5645@78 {
>> + compatible = "ovti,ov5645";
>> + reg = <0x78>;
>> +
>> + enable-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
>> + reset-gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&camera_rear_default>;
>> +
>> + clocks = <&clks 200>;
>> + clock-names = "xclk";
>> + clock-frequency = <23880000>;
>> +
>> + vdddo-supply = <&camera_dovdd_1v8>;
>> + vdda-supply = <&camera_avdd_2v8>;
>> + vddd-supply = <&camera_dvdd_1v2>;
>> +
>> + port {
>> + ov5645_ep: endpoint {
>> + clock-lanes = <1>;
>> + data-lanes = <0 2>;
>
> If the sensor does not support lane reordering, I'd use 0 for the clock lane
> and lanes starting from 1 for data-lanes.

Yes, the sensor doesn't really support lane reordering. I'll keep this in mind for the next time.

>
> I guess it'd be good to document this but that's definitely out of scope of
> the patchset.
>
> Acked-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
>
>> + remote-endpoint = <&csi0_ep>;
>> + };
>> + };
>> + };
>> + };
>

--
Best regards,
Todor Tomov