Hi Laurent, Thank you for the review. On 10/19/2016 11:49 AM, Laurent Pinchart wrote: > Hi Todor, > > On Friday 14 Oct 2016 15:01:08 Todor Tomov wrote: >> On 09/08/2016 03:22 PM, Laurent Pinchart wrote: >>> On Thursday 08 Sep 2016 12:13:54 Todor Tomov wrote: >>>> Add the document for ov5645 device tree binding. >>>> >>>> Signed-off-by: Todor Tomov <todor.tomov@xxxxxxxxxx> >>>> --- >>>> >>>> .../devicetree/bindings/media/i2c/ov5645.txt | 52 ++++++++++++++++ >>>> 1 file changed, 52 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..bcf6dba >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/media/i2c/ov5645.txt >>>> @@ -0,0 +1,52 @@ >>>> +* 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. > > By the way, isn't the pin called pwdnb and isn't it active low ? Yes, the pin is called "pwdnb" and is active low (must be up for power to be up). I have changed the name to "enable" as it is more generally used - this change was suggested by Rob Herring. As the logic switches with this change of the name I have stated it is active high which ends up in the same condition (enable must be up for the power to be up). I think this is correct, isn't it? > >>>> +- reset-gpios: Chip reset GPIO. Polarity is GPIO_ACTIVE_LOW. >>> >>> Shouldn't the enable and reset GPIOs be optional ? >> >> I don't think so. The operations on the GPIOs are part of the power up >> sequence of the sensor so we must have control over them to execute the >> exact sequence. > > Right, let's keep them mandatory. If we later have to make them optional for a > board that pulls one of those signals up (assuming this can work at all) we'll > revisit the bindings. Ok. > >>>> +- 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>; >>>> + remote-endpoint = <&csi0_ep>; >>>> + }; >>>> + }; >>>> + }; >>>> + }; > -- Best regards, Todor Tomov -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html