Message ID | 20200311123501.18202-3-robert.foss@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Qualcomm CCI & Camera for db410c & db845c | expand |
On Wed 11 Mar 05:34 PDT 2020, Robert Foss wrote: > From: Loic Poulain <loic.poulain@linaro.org> > > Add cci device to msm8916.dtsi. > Add default 96boards camera node for db410c (apq8016-sbc). > > Signed-off-by: Loic Poulain <loic.poulain@linaro.org> > Signed-off-by: Robert Foss <robert.foss@linaro.org> > --- > arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi | 75 +++++++++++++++++++++++ > 1 file changed, 75 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi > index 037e26b3f8d5..a3e6982f4f93 100644 > --- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi > +++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi > @@ -495,6 +495,81 @@ > wcnss@a21b000 { > status = "okay"; > }; > + > + camera_vdddo_1v8: fixedregulator@0 { While "fixedregulator" is a seemingly good name, you're not allows to use a unit address on the node if there's no address information in the node. So you need to give these nodes a non-generic name. And please move nodes without a reg (i.e. not on an mmio bus) out of /soc, i.e. place it near /chosen. > + compatible = "regulator-fixed"; > + regulator-name = "camera_vdddo"; > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1800000>; > + regulator-always-on; > + }; > + > + camera_vdda_2v8: fixedregulator@1 { > + compatible = "regulator-fixed"; > + regulator-name = "camera_vdda"; > + regulator-min-microvolt = <2800000>; > + regulator-max-microvolt = <2800000>; > + regulator-always-on; > + }; > + > + camera_vddd_1v5: fixedregulator@2 { > + compatible = "regulator-fixed"; > + regulator-name = "camera_vddd"; > + regulator-min-microvolt = <1500000>; > + regulator-max-microvolt = <1500000>; > + regulator-always-on; > + }; > + > + cci@1b0c000 { Please ensure that cci and camss have labels and reference them by &cci and &camss below the / {}, sorted by label name. > + status = "ok"; > + i2c-bus@0 { Please reference this by its label as well. > + camera_rear@3b { > + compatible = "ovti,ov5640"; > + reg = <0x3b>; > + > + enable-gpios = <&msmgpio 34 GPIO_ACTIVE_HIGH>; > + reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>; > + pinctrl-names = "default"; > + pinctrl-0 = <&camera_rear_default>; > + > + clocks = <&gcc GCC_CAMSS_MCLK0_CLK>; > + clock-names = "xclk"; > + clock-frequency = <23880000>; > + > + vdddo-supply = <&camera_vdddo_1v8>; > + vdda-supply = <&camera_vdda_2v8>; > + vddd-supply = <&camera_vddd_1v5>; > + > + /* No camera mezzanine by default */ This comment gives me the feeling that this node should have been status disabled, please confirm. Regards, Bjorn > + status = "okay"; > + > + port { > + ov5640_ep: endpoint { > + clock-lanes = <1>; > + data-lanes = <0 2>; > + remote-endpoint = <&csiphy0_ep>; > + }; > + }; > + }; > + }; > + }; > + > + camss@1b00000 { > + status = "ok"; > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + port@0 { > + reg = <0>; > + csiphy0_ep: endpoint { > + clock-lanes = <1>; > + data-lanes = <0 2>; > + remote-endpoint = <&ov5640_ep>; > + status = "okay"; > + }; > + }; > + }; > + }; > }; > > usb2513 { > -- > 2.20.1 >
diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi index 037e26b3f8d5..a3e6982f4f93 100644 --- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi @@ -495,6 +495,81 @@ wcnss@a21b000 { status = "okay"; }; + + camera_vdddo_1v8: fixedregulator@0 { + compatible = "regulator-fixed"; + regulator-name = "camera_vdddo"; + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-always-on; + }; + + camera_vdda_2v8: fixedregulator@1 { + compatible = "regulator-fixed"; + regulator-name = "camera_vdda"; + regulator-min-microvolt = <2800000>; + regulator-max-microvolt = <2800000>; + regulator-always-on; + }; + + camera_vddd_1v5: fixedregulator@2 { + compatible = "regulator-fixed"; + regulator-name = "camera_vddd"; + regulator-min-microvolt = <1500000>; + regulator-max-microvolt = <1500000>; + regulator-always-on; + }; + + cci@1b0c000 { + status = "ok"; + i2c-bus@0 { + camera_rear@3b { + compatible = "ovti,ov5640"; + reg = <0x3b>; + + enable-gpios = <&msmgpio 34 GPIO_ACTIVE_HIGH>; + reset-gpios = <&msmgpio 35 GPIO_ACTIVE_LOW>; + pinctrl-names = "default"; + pinctrl-0 = <&camera_rear_default>; + + clocks = <&gcc GCC_CAMSS_MCLK0_CLK>; + clock-names = "xclk"; + clock-frequency = <23880000>; + + vdddo-supply = <&camera_vdddo_1v8>; + vdda-supply = <&camera_vdda_2v8>; + vddd-supply = <&camera_vddd_1v5>; + + /* No camera mezzanine by default */ + status = "okay"; + + port { + ov5640_ep: endpoint { + clock-lanes = <1>; + data-lanes = <0 2>; + remote-endpoint = <&csiphy0_ep>; + }; + }; + }; + }; + }; + + camss@1b00000 { + status = "ok"; + ports { + #address-cells = <1>; + #size-cells = <0>; + port@0 { + reg = <0>; + csiphy0_ep: endpoint { + clock-lanes = <1>; + data-lanes = <0 2>; + remote-endpoint = <&ov5640_ep>; + status = "okay"; + }; + }; + }; + }; }; usb2513 {