forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-31 f9004dbfff8a3fbbd7e2a88c8a4327c7f2f8e5b2
kernel/arch/arm/boot/dts/imx53-smd.dts
....@@ -58,7 +58,7 @@
5858 &ecspi1 {
5959 pinctrl-names = "default";
6060 pinctrl-0 = <&pinctrl_ecspi1>;
61
- cs-gpios = <&gpio2 30 0>, <&gpio3 19 0>;
61
+ cs-gpios = <&gpio2 30 GPIO_ACTIVE_LOW>, <&gpio3 19 GPIO_ACTIVE_LOW>;
6262 status = "okay";
6363
6464 zigbee: mc1323@0 {
....@@ -185,6 +185,31 @@
185185 >;
186186 };
187187
188
+ pinctrl_ipu_csi0: ipucsi0grp {
189
+ fsl,pins = <
190
+ MX53_PAD_CSI0_DAT12__IPU_CSI0_D_12 0x1c4
191
+ MX53_PAD_CSI0_DAT13__IPU_CSI0_D_13 0x1c4
192
+ MX53_PAD_CSI0_DAT14__IPU_CSI0_D_14 0x1c4
193
+ MX53_PAD_CSI0_DAT15__IPU_CSI0_D_15 0x1c4
194
+ MX53_PAD_CSI0_DAT16__IPU_CSI0_D_16 0x1c4
195
+ MX53_PAD_CSI0_DAT17__IPU_CSI0_D_17 0x1c4
196
+ MX53_PAD_CSI0_DAT18__IPU_CSI0_D_18 0x1c4
197
+ MX53_PAD_CSI0_DAT19__IPU_CSI0_D_19 0x1c4
198
+ MX53_PAD_CSI0_PIXCLK__IPU_CSI0_PIXCLK 0x1e4
199
+ MX53_PAD_CSI0_VSYNC__IPU_CSI0_VSYNC 0x1e4
200
+ MX53_PAD_CSI0_MCLK__IPU_CSI0_HSYNC 0x1e4
201
+ MX53_PAD_CSI0_DATA_EN__IPU_CSI0_DATA_EN 0x1e4
202
+ >;
203
+ };
204
+
205
+ pinctrl_ov5642: ov5642grp {
206
+ fsl,pins = <
207
+ MX53_PAD_NANDF_WP_B__GPIO6_9 0x1e4
208
+ MX53_PAD_NANDF_RB0__GPIO6_10 0x1e4
209
+ MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x1c4
210
+ >;
211
+ };
212
+
188213 pinctrl_uart1: uart1grp {
189214 fsl,pins = <
190215 MX53_PAD_CSI0_DAT10__UART1_TXD_MUX 0x1e4
....@@ -256,11 +281,47 @@
256281 camera: ov5642@3c {
257282 compatible = "ovti,ov5642";
258283 reg = <0x3c>;
284
+ pinctrl-names = "default";
285
+ pinctrl-0 = <&pinctrl_ov5642>;
286
+ assigned-clocks = <&clks IMX5_CLK_SSI_EXT1_SEL>,
287
+ <&clks IMX5_CLK_SSI_EXT1_COM_SEL>;
288
+ assigned-clock-parents = <&clks IMX5_CLK_PLL2_SW>,
289
+ <&clks IMX5_CLK_SSI_EXT1_PODF>;
290
+ assigned-clock-rates = <0>, <24000000>;
291
+ clocks = <&clks IMX5_CLK_SSI_EXT1_GATE>;
292
+ clock-names = "xclk";
293
+ DVDD-supply = <&ldo9_reg>;
294
+ AVDD-supply = <&ldo7_reg>;
295
+ reset-gpios = <&gpio6 9 GPIO_ACTIVE_LOW>;
296
+ powerdown-gpios = <&gpio6 10 GPIO_ACTIVE_HIGH>;
297
+
298
+ port {
299
+ ov5642_to_ipu_csi0: endpoint {
300
+ remote-endpoint = <&ipu_csi0_from_parallel_sensor>;
301
+ bus-width = <8>;
302
+ hsync-active = <1>;
303
+ vsync-active = <1>;
304
+ };
305
+ };
259306 };
260307
261308 pmic: dialog@48 {
262309 compatible = "dlg,da9053", "dlg,da9052";
263310 reg = <0x48>;
311
+ interrupt-parent = <&gpio7>;
312
+ interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
313
+
314
+ regulators {
315
+ ldo7_reg: ldo7 {
316
+ regulator-min-microvolt = <1200000>;
317
+ regulator-max-microvolt = <3600000>;
318
+ };
319
+
320
+ ldo9_reg: ldo9 {
321
+ regulator-min-microvolt = <1250000>;
322
+ regulator-max-microvolt = <3650000>;
323
+ };
324
+ };
264325 };
265326 };
266327
....@@ -271,3 +332,15 @@
271332 phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
272333 status = "okay";
273334 };
335
+
336
+&ipu_csi0_from_parallel_sensor {
337
+ remote-endpoint = <&ov5642_to_ipu_csi0>;
338
+ data-shift = <12>; /* Lines 19:12 used */
339
+ hsync-active = <1>;
340
+ vsync-active = <1>;
341
+};
342
+
343
+&ipu_csi0 {
344
+ pinctrl-names = "default";
345
+ pinctrl-0 = <&pinctrl_ipu_csi0>;
346
+};