On Wed, Nov 14, 2018 at 8:29 PM Maxime Ripard <maxime.ripard@xxxxxxxxxxx> wrote: > > From: Mylène Josserand <mylene.josserand@xxxxxxxxxxx> > > The Nano Pi M1+ comes with an optional sensor based on the ov5640 from > Omnivision. Enable the support for it in the DT. > > Signed-off-by: Mylène Josserand <mylene.josserand@xxxxxxxxxxx> > Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxx> > --- > arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts | 85 +++++++++++++++++++ > 1 file changed, 85 insertions(+) > > diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts > index 06010a9afba0..2ac62d109285 100644 > --- a/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts > +++ b/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts > @@ -52,6 +52,37 @@ > ethernet1 = &sdio_wifi; > }; > > + cam_xclk: cam-xclk { > + #clock-cells = <0>; > + compatible = "fixed-clock"; > + clock-frequency = <24000000>; > + clock-output-names = "cam-xclk"; > + }; > + > + reg_cam_avdd: cam-avdd { > + compatible = "regulator-fixed"; > + regulator-name = "cam500b-avdd"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + vin-supply = <®_vcc3v3>; > + }; > + > + reg_cam_dovdd: cam-dovdd { > + compatible = "regulator-fixed"; > + regulator-name = "cam500b-dovdd"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + vin-supply = <®_vcc3v3>; > + }; > + > + reg_cam_dvdd: cam-dvdd { > + compatible = "regulator-fixed"; > + regulator-name = "cam500b-dvdd"; > + regulator-min-microvolt = <1500000>; > + regulator-max-microvolt = <1500000>; > + vin-supply = <®_vcc3v3>; > + }; > + > reg_gmac_3v3: gmac-3v3 { > compatible = "regulator-fixed"; > regulator-name = "gmac-3v3"; > @@ -69,6 +100,26 @@ > }; > }; > > +&csi { > + status = "okay"; > + > + port { > + #address-cells = <1>; > + #size-cells = <0>; > + > + /* Parallel bus endpoint */ > + csi_from_ov5640: endpoint { > + remote-endpoint = <&ov5640_to_csi>; > + bus-width = <8>; > + data-shift = <2>; > + hsync-active = <1>; /* Active high */ > + vsync-active = <0>; /* Active low */ > + data-active = <1>; /* Active high */ > + pclk-sample = <1>; /* Rising */ > + }; > + }; > +}; > + > &ehci1 { > status = "okay"; > }; > @@ -94,6 +145,40 @@ > }; > }; > > +&i2c2 { > + status = "okay"; > + > + ov5640: camera@3c { > + compatible = "ovti,ov5640"; > + reg = <0x3c>; > + clocks = <&cam_xclk>; I think we can directly use existing 24MHz oscillator, &osc24M