aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSylwester Nawrocki <s.nawrocki@samsung.com>2013-12-20 16:56:05 -0500
committerMauro Carvalho Chehab <m.chehab@samsung.com>2014-03-14 09:31:37 -0400
commit53f8a899a38d8e8a02ce390d400327f6abd66074 (patch)
tree726a549c42bba134ed2e094af441cbdecdb0ed2c
parentae704bc3bd1b7208c6061151f9b56e13664778ad (diff)
[media] Documentation: devicetree: Update Samsung FIMC DT binding
This patch documents following updates of the Exynos4 SoC camera subsystem devicetree binding: - addition of #clock-cells and clock-output-names properties to 'camera' node - these are now needed so the image sensor sub-devices can reference clocks provided by the camera host interface, - dropped a note about required clock-frequency properties at the image sensor nodes; the sensor devices can now control their clock explicitly through the clk API and there is no need to require this property in the camera host interface binding. Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
-rw-r--r--Documentation/devicetree/bindings/media/samsung-fimc.txt44
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
16Required properties: 16Required 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
24The pinctrl bindings defined in ../pinctrl/pinctrl-bindings.txt must be used 34The pinctrl bindings defined in ../pinctrl/pinctrl-bindings.txt must be used
25to define a required pinctrl state named "default" and optional pinctrl states: 35to define a required pinctrl state named "default" and optional pinctrl states:
@@ -32,6 +42,7 @@ way around.
32 42
33The 'camera' node must include at least one 'fimc' child node. 43The '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
89Optional properties 100Optional 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
94Image sensor nodes 105Image sensor nodes
95------------------ 106------------------
@@ -97,8 +108,6 @@ Image sensor nodes
97The sensor device nodes should be added to their control bus controller (e.g. 108The sensor device nodes should be added to their control bus controller (e.g.
98I2C0) nodes and linked to a port node in the csis or the parallel-ports node, 109I2C0) nodes and linked to a port node in the csis or the parallel-ports node,
99using the common video interfaces bindings, defined in video-interfaces.txt. 110using the common video interfaces bindings, defined in video-interfaces.txt.
100The implementation of this bindings requires clock-frequency property to be
101present in the sensor device nodes.
102 111
103Example: 112Example:
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 {