diff options
| -rw-r--r-- | Documentation/devicetree/bindings/media/samsung-fimc.txt | 44 |
1 files changed, 29 insertions, 15 deletions
diff --git a/Documentation/devicetree/bindings/media/samsung-fimc.txt b/Documentation/devicetree/bindings/media/samsung-fimc.txt index 96312f6c4c26..922d6f8e74be 100644 --- a/Documentation/devicetree/bindings/media/samsung-fimc.txt +++ b/Documentation/devicetree/bindings/media/samsung-fimc.txt | |||
| @@ -15,11 +15,21 @@ Common 'camera' node | |||
| 15 | 15 | ||
| 16 | Required properties: | 16 | Required properties: |
| 17 | 17 | ||
| 18 | - compatible : must be "samsung,fimc", "simple-bus" | 18 | - compatible: must be "samsung,fimc", "simple-bus" |
| 19 | - clocks : list of clock specifiers, corresponding to entries in | 19 | - clocks: list of clock specifiers, corresponding to entries in |
| 20 | the clock-names property; | 20 | the clock-names property; |
| 21 | - clock-names : must contain "sclk_cam0", "sclk_cam1", "pxl_async0", | 21 | - clock-names : must contain "sclk_cam0", "sclk_cam1", "pxl_async0", |
| 22 | "pxl_async1" entries, matching entries in the clocks property. | 22 | "pxl_async1" entries, matching entries in the clocks property. |
| 23 | |||
| 24 | - #clock-cells: from the common clock bindings (../clock/clock-bindings.txt), | ||
| 25 | must be 1. A clock provider is associated with the 'camera' node and it should | ||
| 26 | be referenced by external sensors that use clocks provided by the SoC on | ||
| 27 | CAM_*_CLKOUT pins. The clock specifier cell stores an index of a clock. | ||
| 28 | The indices are 0, 1 for CAM_A_CLKOUT, CAM_B_CLKOUT clocks respectively. | ||
| 29 | |||
| 30 | - clock-output-names: from the common clock bindings, should contain names of | ||
| 31 | clocks registered by the camera subsystem corresponding to CAM_A_CLKOUT, | ||
| 32 | CAM_B_CLKOUT output clocks respectively. | ||
| 23 | 33 | ||
| 24 | The pinctrl bindings defined in ../pinctrl/pinctrl-bindings.txt must be used | 34 | The pinctrl bindings defined in ../pinctrl/pinctrl-bindings.txt must be used |
| 25 | to define a required pinctrl state named "default" and optional pinctrl states: | 35 | to define a required pinctrl state named "default" and optional pinctrl states: |
| @@ -32,6 +42,7 @@ way around. | |||
| 32 | 42 | ||
| 33 | The 'camera' node must include at least one 'fimc' child node. | 43 | The 'camera' node must include at least one 'fimc' child node. |
| 34 | 44 | ||
| 45 | |||
| 35 | 'fimc' device nodes | 46 | 'fimc' device nodes |
| 36 | ------------------- | 47 | ------------------- |
| 37 | 48 | ||
| @@ -88,8 +99,8 @@ port nodes specifies data input - 0, 1 indicates input A, B respectively. | |||
| 88 | 99 | ||
| 89 | Optional properties | 100 | Optional properties |
| 90 | 101 | ||
| 91 | - samsung,camclk-out : specifies clock output for remote sensor, | 102 | - samsung,camclk-out (deprecated) : specifies clock output for remote sensor, |
| 92 | 0 - CAM_A_CLKOUT, 1 - CAM_B_CLKOUT; | 103 | 0 - CAM_A_CLKOUT, 1 - CAM_B_CLKOUT; |
| 93 | 104 | ||
| 94 | Image sensor nodes | 105 | Image sensor nodes |
| 95 | ------------------ | 106 | ------------------ |
| @@ -97,8 +108,6 @@ Image sensor nodes | |||
| 97 | The sensor device nodes should be added to their control bus controller (e.g. | 108 | The sensor device nodes should be added to their control bus controller (e.g. |
| 98 | I2C0) nodes and linked to a port node in the csis or the parallel-ports node, | 109 | I2C0) nodes and linked to a port node in the csis or the parallel-ports node, |
| 99 | using the common video interfaces bindings, defined in video-interfaces.txt. | 110 | using the common video interfaces bindings, defined in video-interfaces.txt. |
| 100 | The implementation of this bindings requires clock-frequency property to be | ||
| 101 | present in the sensor device nodes. | ||
| 102 | 111 | ||
| 103 | Example: | 112 | Example: |
| 104 | 113 | ||
| @@ -114,7 +123,7 @@ Example: | |||
| 114 | vddio-supply = <...>; | 123 | vddio-supply = <...>; |
| 115 | 124 | ||
| 116 | clock-frequency = <24000000>; | 125 | clock-frequency = <24000000>; |
| 117 | clocks = <...>; | 126 | clocks = <&camera 1>; |
| 118 | clock-names = "mclk"; | 127 | clock-names = "mclk"; |
| 119 | 128 | ||
| 120 | port { | 129 | port { |
| @@ -135,7 +144,7 @@ Example: | |||
| 135 | vddio-supply = <...>; | 144 | vddio-supply = <...>; |
| 136 | 145 | ||
| 137 | clock-frequency = <24000000>; | 146 | clock-frequency = <24000000>; |
| 138 | clocks = <...>; | 147 | clocks = <&camera 0>; |
| 139 | clock-names = "mclk"; | 148 | clock-names = "mclk"; |
| 140 | 149 | ||
| 141 | port { | 150 | port { |
| @@ -149,12 +158,17 @@ Example: | |||
| 149 | 158 | ||
| 150 | camera { | 159 | camera { |
| 151 | compatible = "samsung,fimc", "simple-bus"; | 160 | compatible = "samsung,fimc", "simple-bus"; |
| 152 | #address-cells = <1>; | 161 | clocks = <&clock 132>, <&clock 133>, <&clock 351>, |
| 153 | #size-cells = <1>; | 162 | <&clock 352>; |
| 154 | status = "okay"; | 163 | clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", |
| 155 | 164 | "pxl_async1"; | |
| 165 | #clock-cells = <1>; | ||
| 166 | clock-output-names = "cam_a_clkout", "cam_b_clkout"; | ||
| 156 | pinctrl-names = "default"; | 167 | pinctrl-names = "default"; |
| 157 | pinctrl-0 = <&cam_port_a_clk_active>; | 168 | pinctrl-0 = <&cam_port_a_clk_active>; |
| 169 | status = "okay"; | ||
| 170 | #address-cells = <1>; | ||
| 171 | #size-cells = <1>; | ||
| 158 | 172 | ||
| 159 | /* parallel camera ports */ | 173 | /* parallel camera ports */ |
| 160 | parallel-ports { | 174 | parallel-ports { |
