ARM: dts: imx53-smd: Add OV5642 video capture support
Add video capture support from the OV5642 to IPU CSI0 on the i.MX53 SMD. Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com> [fabio: remove unnecessary 'regulator-always-on' from camera regulators] Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
parent
e5ad32308e
commit
e2c1615677
|
@ -185,6 +185,31 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_ipu_csi0: ipucsi0grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_CSI0_DAT12__IPU_CSI0_D_12 0x1c4
|
||||
MX53_PAD_CSI0_DAT13__IPU_CSI0_D_13 0x1c4
|
||||
MX53_PAD_CSI0_DAT14__IPU_CSI0_D_14 0x1c4
|
||||
MX53_PAD_CSI0_DAT15__IPU_CSI0_D_15 0x1c4
|
||||
MX53_PAD_CSI0_DAT16__IPU_CSI0_D_16 0x1c4
|
||||
MX53_PAD_CSI0_DAT17__IPU_CSI0_D_17 0x1c4
|
||||
MX53_PAD_CSI0_DAT18__IPU_CSI0_D_18 0x1c4
|
||||
MX53_PAD_CSI0_DAT19__IPU_CSI0_D_19 0x1c4
|
||||
MX53_PAD_CSI0_PIXCLK__IPU_CSI0_PIXCLK 0x1e4
|
||||
MX53_PAD_CSI0_VSYNC__IPU_CSI0_VSYNC 0x1e4
|
||||
MX53_PAD_CSI0_MCLK__IPU_CSI0_HSYNC 0x1e4
|
||||
MX53_PAD_CSI0_DATA_EN__IPU_CSI0_DATA_EN 0x1e4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_ov5642: ov5642grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_NANDF_WP_B__GPIO6_9 0x1e4
|
||||
MX53_PAD_NANDF_RB0__GPIO6_10 0x1e4
|
||||
MX53_PAD_GPIO_0__CCM_SSI_EXT1_CLK 0x1c4
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_uart1: uart1grp {
|
||||
fsl,pins = <
|
||||
MX53_PAD_CSI0_DAT10__UART1_TXD_MUX 0x1e4
|
||||
|
@ -256,11 +281,47 @@
|
|||
camera: ov5642@3c {
|
||||
compatible = "ovti,ov5642";
|
||||
reg = <0x3c>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ov5642>;
|
||||
assigned-clocks = <&clks IMX5_CLK_SSI_EXT1_SEL>,
|
||||
<&clks IMX5_CLK_SSI_EXT1_COM_SEL>;
|
||||
assigned-clock-parents = <&clks IMX5_CLK_PLL2_SW>,
|
||||
<&clks IMX5_CLK_SSI_EXT1_PODF>;
|
||||
assigned-clock-rates = <0>, <24000000>;
|
||||
clocks = <&clks IMX5_CLK_SSI_EXT1_GATE>;
|
||||
clock-names = "xclk";
|
||||
DVDD-supply = <&ldo9_reg>;
|
||||
AVDD-supply = <&ldo7_reg>;
|
||||
reset-gpios = <&gpio6 9 GPIO_ACTIVE_LOW>;
|
||||
powerdown-gpios = <&gpio6 10 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
port {
|
||||
ov5642_to_ipu_csi0: endpoint {
|
||||
remote-endpoint = <&ipu_csi0_from_parallel_sensor>;
|
||||
bus-width = <8>;
|
||||
hsync-active = <1>;
|
||||
vsync-active = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pmic: dialog@48 {
|
||||
compatible = "dlg,da9053", "dlg,da9052";
|
||||
reg = <0x48>;
|
||||
interrupt-parent = <&gpio7>;
|
||||
interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
regulators {
|
||||
ldo7_reg: ldo7 {
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <3600000>;
|
||||
};
|
||||
|
||||
ldo9_reg: ldo9 {
|
||||
regulator-min-microvolt = <1250000>;
|
||||
regulator-max-microvolt = <3650000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -271,3 +332,15 @@
|
|||
phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&ipu_csi0_from_parallel_sensor {
|
||||
remote-endpoint = <&ov5642_to_ipu_csi0>;
|
||||
data-shift = <12>; /* Lines 19:12 used */
|
||||
hsync-active = <1>;
|
||||
vsync-active = <1>;
|
||||
};
|
||||
|
||||
&ipu_csi0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_ipu_csi0>;
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue