mirror of
git://nv-tegra.nvidia.com/device/hardware/nvidia/t23x-public-dts.git
synced 2025-12-22 09:12:02 +03:00
svcacv is giving -1 as SPDX-FileCopyrightText tag was missing in the license header. Fix them. Bug 4327489 Change-Id: Ie71faf9d60550318d4722bdc0559af4cd2d3b441 Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2995601 Reviewed-by: svcacv <svcacv@nvidia.com> Reviewed-by: Brad Griffis <bgriffis@nvidia.com> Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com> GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
227 lines
5.7 KiB
Devicetree
227 lines
5.7 KiB
Devicetree
// SPDX-License-Identifier: GPL-2.0-only
|
|
// SPDX-FileCopyrightText: Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
|
|
/dts-v1/;
|
|
/plugin/;
|
|
|
|
#include <dt-bindings/clock/tegra234-clock.h>
|
|
#include <dt-bindings/gpio/tegra234-gpio.h>
|
|
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
|
|
|
|
#define CAM0_RST_L TEGRA234_MAIN_GPIO(H, 3)
|
|
|
|
/* camera control gpio definitions */
|
|
/ {
|
|
overlay-name = "Jetson Camera IMX390";
|
|
jetson-header-name = "Jetson AGX CSI Connector";
|
|
compatible = JETSON_COMPATIBLE;
|
|
|
|
fragment@0 {
|
|
target-path = "/";
|
|
|
|
__overlay__ {
|
|
tegra-capture-vi {
|
|
num-channels = <2>;
|
|
ports {
|
|
status = "okay";
|
|
port@0 {
|
|
status = "okay";
|
|
imx390_vi_in0: endpoint {
|
|
status = "okay";
|
|
vc-id = <0>;
|
|
port-index = <0>;
|
|
bus-width = <2>;
|
|
remote-endpoint = <&imx390_csi_out0>;
|
|
};
|
|
};
|
|
port@1 {
|
|
status = "okay";
|
|
imx390_vi_in1: endpoint {
|
|
status = "okay";
|
|
vc-id = <1>;
|
|
port-index = <0>;
|
|
bus-width = <2>;
|
|
remote-endpoint = <&imx390_csi_out1>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
tegra-camera-platform {
|
|
modules {
|
|
status = "okay";
|
|
module0 {
|
|
badge = "imx390_rear";
|
|
position = "rear";
|
|
orientation = "1";
|
|
status = "okay";
|
|
drivernode0 {
|
|
status = "okay";
|
|
/* Declare PCL support driver (classically known as guid) */
|
|
pcl_id = "v4l2_sensor";
|
|
/* Declare the device-tree hierarchy to driver instance */
|
|
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/imx390_a@1b";
|
|
};
|
|
};
|
|
module1 {
|
|
status = "okay";
|
|
badge = "imx390_front";
|
|
position = "front";
|
|
orientation = "1";
|
|
drivernode0 {
|
|
status = "okay";
|
|
/* Declare PCL support driver (classically known as guid) */
|
|
pcl_id = "v4l2_sensor";
|
|
/* Declare the device-tree hierarchy to driver instance */
|
|
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/imx390_b@1c";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
bus@0{
|
|
host1x@13e00000 {
|
|
nvcsi@15a00000 {
|
|
num-channels = <2>;
|
|
channel@0 {
|
|
status = "okay";
|
|
ports {
|
|
status = "okay";
|
|
port@0 {
|
|
status = "okay";
|
|
imx390_csi_in0: endpoint@0 {
|
|
status = "okay";
|
|
port-index = <0>;
|
|
bus-width = <2>;
|
|
remote-endpoint = <&imx390_imx390_out0>;
|
|
};
|
|
};
|
|
port@1 {
|
|
status = "okay";
|
|
imx390_csi_out0: endpoint@1 {
|
|
status = "okay";
|
|
remote-endpoint = <&imx390_vi_in0>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
channel@1 {
|
|
status = "okay";
|
|
ports {
|
|
status = "okay";
|
|
port@0 {
|
|
status = "okay";
|
|
imx390_csi_in1: endpoint@2 {
|
|
status = "okay";
|
|
port-index = <0>;
|
|
bus-width = <2>;
|
|
remote-endpoint = <&imx390_imx390_out1>;
|
|
};
|
|
};
|
|
port@1 {
|
|
status = "okay";
|
|
imx390_csi_out1: endpoint@3 {
|
|
status = "okay";
|
|
remote-endpoint = <&imx390_vi_in1>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
i2c@3180000 {
|
|
tca9546@70 {
|
|
status = "okay";
|
|
compatible = "nxp,pca9546";
|
|
reg = <0x70>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
skip_mux_detect = "yes";
|
|
i2c@0 {
|
|
reg = <0>;
|
|
i2c-mux,deselect-on-exit;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
status = "okay";
|
|
dser: max9296@48 {
|
|
status = "okay";
|
|
compatible = "maxim,max9296";
|
|
reg = <0x48>;
|
|
csi-mode = "2x4";
|
|
max-src = <2>;
|
|
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
|
|
};
|
|
ser_prim: max9295_prim@62 {
|
|
status = "okay";
|
|
compatible = "maxim,max9295";
|
|
reg = <0x62>;
|
|
is-prim-ser;
|
|
};
|
|
ser_a: max9295_a@40 {
|
|
status = "okay";
|
|
compatible = "maxim,max9295";
|
|
reg = <0x40>;
|
|
nvidia,gmsl-dser-device = <&dser>;
|
|
};
|
|
ser_b: max9295_b@60 {
|
|
status = "okay";
|
|
compatible = "maxim,max9295";
|
|
reg = <0x60>;
|
|
nvidia,gmsl-dser-device = <&dser>;
|
|
};
|
|
imx390_a@1b {
|
|
status = "okay";
|
|
def-addr = <0x1a>;
|
|
/* Define any required hw resources needed by driver */
|
|
/* ie. clocks, io pins, power sources */
|
|
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
|
|
<&bpmp TEGRA234_CLK_EXTPERIPH1>;
|
|
clock-names = "extperiph1", "pllp_grtba";
|
|
mclk = "extperiph1";
|
|
nvidia,gmsl-ser-device = <&ser_a>;
|
|
nvidia,gmsl-dser-device = <&dser>;
|
|
ports {
|
|
status = "okay";
|
|
port@0 {
|
|
status = "okay";
|
|
imx390_imx390_out0: endpoint {
|
|
status = "okay";
|
|
vc-id = <0>;
|
|
port-index = <0>;
|
|
bus-width = <2>;
|
|
remote-endpoint = <&imx390_csi_in0>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
imx390_b@1c {
|
|
status = "okay";
|
|
def-addr = <0x1a>;
|
|
/* Define any required hw resources needed by driver */
|
|
/* ie. clocks, io pins, power sources */
|
|
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
|
|
<&bpmp TEGRA234_CLK_EXTPERIPH1>;
|
|
clock-names = "extperiph1", "pllp_grtba";
|
|
mclk = "extperiph1";
|
|
nvidia,gmsl-ser-device = <&ser_b>;
|
|
nvidia,gmsl-dser-device = <&dser>;
|
|
ports {
|
|
status = "okay";
|
|
port@0 {
|
|
status = "okay";
|
|
imx390_imx390_out1: endpoint {
|
|
status = "okay";
|
|
vc-id = <1>;
|
|
port-index = <0>;
|
|
bus-width = <2>;
|
|
remote-endpoint = <&imx390_csi_in1>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|