RE: [PATCH v2 2/2] arm64: dts: renesas: rzg2l-smarc: Enable CRU, CSI support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Prabhakar,

> From: Prabhakar <prabhakar.csengg@xxxxxxxxx>
> Sent: 17 March 2023 12:33
> 
> From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> 
> Enable CRU, CSI on RZ/G2L SMARC EVK and tie the CSI to OV5645 sensor
> using Device Tree overlay. rz-smarc-cru-csi-ov5645.dtsi is created so
> that RZ/G2L alike EVKs can make use of it.
> 
> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> ---
> setenv bootfile kernel_fdt.itb
> tftpboot ${bootfile}
> bootm ${fileaddr}#rzg2l-smarc#ov5645
> 
> v1->v2
> * New patch
> ---
>  arch/arm64/boot/dts/renesas/Makefile          |  1 +
>  .../r9a07g044l2-smarc-cru-csi-ov5645.dtso     | 18 ++++
>  .../dts/renesas/rz-smarc-cru-csi-ov5645.dtsi  | 87 +++++++++++++++++++
>  3 files changed, 106 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/renesas/r9a07g044l2-smarc-cru-
> csi-ov5645.dtso
>  create mode 100644 arch/arm64/boot/dts/renesas/rz-smarc-cru-csi-
> ov5645.dtsi
> 
> diff --git a/arch/arm64/boot/dts/renesas/Makefile
> b/arch/arm64/boot/dts/renesas/Makefile
> index 23b10c03091c..a553d99175cb 100644
> --- a/arch/arm64/boot/dts/renesas/Makefile
> +++ b/arch/arm64/boot/dts/renesas/Makefile
> @@ -79,6 +79,7 @@ dtb-$(CONFIG_ARCH_R9A07G043) += r9a07g043u11-
> smarc.dtb
> 
>  dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044c2-smarc.dtb
>  dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044l2-smarc.dtb
> +dtb-$(CONFIG_ARCH_R9A07G044) += r9a07g044l2-smarc-cru-csi-
> ov5645.dtbo
> 
>  dtb-$(CONFIG_ARCH_R9A07G054) += r9a07g054l2-smarc.dtb
> 
> diff --git a/arch/arm64/boot/dts/renesas/r9a07g044l2-smarc-cru-csi-
> ov5645.dtso b/arch/arm64/boot/dts/renesas/r9a07g044l2-smarc-cru-csi-
> ov5645.dtso
> new file mode 100644
> index 000000000000..40cece1491bb
> --- /dev/null
> +++ b/arch/arm64/boot/dts/renesas/r9a07g044l2-smarc-cru-csi-ov5645.dtso
> @@ -0,0 +1,18 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Device Tree overlay for the RZ/G2L SMARC EVK with OV5645 camera
> + * connected to CSI and CRU enabled.
> + *
> + * Copyright (C) 2023 Renesas Electronics Corp.
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#define OV5645_PARENT_I2C i2c0
> +#include "rz-smarc-cru-csi-ov5645.dtsi"
> +
> +&ov5645 {
> +	enable-gpios = <&pinctrl RZG2L_GPIO(2, 0) GPIO_ACTIVE_HIGH>;
> +	reset-gpios = <&pinctrl RZG2L_GPIO(40, 2) GPIO_ACTIVE_LOW>;
> +};
> diff --git a/arch/arm64/boot/dts/renesas/rz-smarc-cru-csi-ov5645.dtsi
> b/arch/arm64/boot/dts/renesas/rz-smarc-cru-csi-ov5645.dtsi
> new file mode 100644
> index 000000000000..95286bf2066e
> --- /dev/null
> +++ b/arch/arm64/boot/dts/renesas/rz-smarc-cru-csi-ov5645.dtsi
> @@ -0,0 +1,87 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Common Device Tree for the RZ/G2L SMARC EVK (and alike EVKs) with
> + * OV5645 camera connected to CSI and CRU enabled.
> + *
> + * Copyright (C) 2023 Renesas Electronics Corp.
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/pinctrl/rzg2l-pinctrl.h>

Are either of these includes used in this file?
Or should they move to the overlay?

Kind regards, Chris

> +
> +&{/} {
> +	ov5645_vdddo_1v8: 1p8v {
> +		compatible = "regulator-fixed";
> +		regulator-name = "camera_vdddo";
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +		regulator-always-on;
> +	};
> +
> +	ov5645_vdda_2v8: 2p8v {
> +		compatible = "regulator-fixed";
> +		regulator-name = "camera_vdda";
> +		regulator-min-microvolt = <2800000>;
> +		regulator-max-microvolt = <2800000>;
> +		regulator-always-on;
> +	};
> +
> +	ov5645_vddd_1v5: 1p5v {
> +		compatible = "regulator-fixed";
> +		regulator-name = "camera_vddd";
> +		regulator-min-microvolt = <1500000>;
> +		regulator-max-microvolt = <1500000>;
> +		regulator-always-on;
> +	};
> +
> +	ov5645_fixed_clk: osc25250_clk {
> +		compatible = "fixed-clock";
> +		#clock-cells = <0>;
> +		clock-frequency = <24000000>;
> +	};
> +};
> +
> +&cru {
> +	status = "okay";
> +};
> +
> +&csi2 {
> +	status = "okay";
> +
> +	ports {
> +		port@0 {
> +			csi2_in: endpoint {
> +				clock-lanes = <0>;
> +				data-lanes = <1 2>;
> +				remote-endpoint = <&ov5645_ep>;
> +			};
> +		};
> +	};
> +};
> +
> +&OV5645_PARENT_I2C {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +	status = "okay";
> +
> +	ov5645: camera@3c {
> +		compatible = "ovti,ov5645";
> +		reg = <0x3c>;
> +		clocks = <&ov5645_fixed_clk>;
> +		clock-frequency = <24000000>;
> +		vdddo-supply = <&ov5645_vdddo_1v8>;
> +		vdda-supply = <&ov5645_vdda_2v8>;
> +		vddd-supply = <&ov5645_vddd_1v5>;
> +
> +		port {
> +			ov5645_ep: endpoint {
> +				clock-lanes = <0>;
> +				data-lanes = <1 2>;
> +				remote-endpoint = <&csi2_in>;
> +			};
> +		};
> +	};
> +};
> --
> 2.25.1





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux