arm64: dts: imx8mp-tqma8mpql-mba8mp-ras314: Add Raspberry Pi Camera V2 overlay

This overlay configures IMX219 MIPI-CSI-2 camera attached to ISP1.
Also add additional overlay both using LVDS display and camera.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
Alexander Stein
2025-05-09 22:03:24 +08:00
committed by Shawn Guo
parent 2f67c5c4dc
commit 6c2df49628
2 changed files with 111 additions and 0 deletions

View File

@@ -261,10 +261,14 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk-pcie-ep.dtb
imx8mp-tqma8mpql-mba8mpxl-lvds-dtbs += imx8mp-tqma8mpql-mba8mpxl.dtb imx8mp-tqma8mpql-mba8mpxl-lvds.dtbo
imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01-dtbs += imx8mp-tqma8mpql-mba8mpxl.dtb imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01.dtbo
imx8mp-tqma8mpql-mba8mp-ras314-imx219-dtbs += imx8mp-tqma8mpql-mba8mp-ras314.dtb imx8mp-tqma8mpql-mba8mp-ras314-imx219.dtbo
imx8mp-tqma8mpql-mba8mp-ras314-lvds-dtbs += imx8mp-tqma8mpql-mba8mp-ras314.dtb imx8mp-tqma8mpql-mba8mpxl-lvds.dtbo
imx8mp-tqma8mpql-mba8mp-ras314-lvds-imx219-dtbs += imx8mp-tqma8mpql-mba8mp-ras314.dtb imx8mp-tqma8mpql-mba8mpxl-lvds.dtbo imx8mp-tqma8mpql-mba8mp-ras314-imx219.dtbo
dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl-lvds.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mp-ras314-imx219.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mp-ras314-lvds.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mp-ras314-lvds-imx219.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk.dtb
imx8mq-evk-pcie1-ep-dtbs += imx8mq-evk.dtb imx-pcie1-ep.dtbo

View File

@@ -0,0 +1,107 @@
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
/*
* Copyright 2022-2025 TQ-Systems GmbH <linux@ew.tq-group.com>,
* D-82229 Seefeld, Germany.
* Author: Alexander Stein
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/media/video-interfaces.h>
#include "imx8mp-pinfunc.h"
&{/} {
/*
* The three camera regulators are controlled by a single GPIO. Declare
* a single regulator for the three supplies.
*/
reg_cam: regulator-cam {
compatible = "regulator-fixed";
regulator-name = "reg_cam";
/* pad muxing already done in gpio2grp */
gpio = <&gpio2 6 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&reg_vcc_3v3>;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
cam24m: clock-cam24m {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <24000000>;
clock-output-names = "cam24m";
};
};
&i2c2 {
#address-cells = <1>;
#size-cells = <0>;
camera@10 {
compatible = "sony,imx219";
reg = <0x10>;
clocks = <&cam24m>;
VANA-supply = <&reg_cam>;
VDIG-supply = <&reg_cam>;
VDDL-supply = <&reg_cam>;
orientation = <2>;
rotation = <0>;
port {
sony_imx219: endpoint {
remote-endpoint = <&imx8mp_mipi_csi_in>;
clock-lanes = <0>;
clock-noncontinuous;
data-lanes = <1 2>;
link-frequencies = /bits/ 64 <456000000>;
};
};
};
};
&isi_0 {
status = "disabled";
ports {
port@0 {
/delete-node/ endpoint;
};
};
};
&isp_0 {
status = "okay";
ports {
port@1 {
isp0_in: endpoint {
bus-type = <MEDIA_BUS_TYPE_PARALLEL>;
remote-endpoint = <&mipi_csi_0_out>;
};
};
};
};
&mipi_csi_0 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
imx8mp_mipi_csi_in: endpoint {
remote-endpoint = <&sony_imx219>;
clock-lanes = <0>;
data-lanes = <1 2>;
};
};
};
};
&mipi_csi_0_out {
remote-endpoint = <&isp0_in>;
};