Skip to content

Instantly share code, notes, and snippets.

@kevmo314
Created May 5, 2022 16:35
Show Gist options
  • Save kevmo314/e175af4389c41e95273ce34abc8ebc6f to your computer and use it in GitHub Desktop.
Save kevmo314/e175af4389c41e95273ce34abc8ebc6f to your computer and use it in GitHub Desktop.
/*
* Copyright (c) 2018-2019, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <dt-bindings/media/camera.h>
#include <dt-bindings/platform/t210/t210.h>
/*------------------------------------------------------------------------------
* Example 2 (Integration Nvidia Jetson Xavier AGX)
*-----------------------------------------------------------------------------*/
#define LT6911_EN "okay"
/ {
i2c@0 {
clock-frequency = <100000>;
lt6911uxc_a@2b {
compatible = "nvidia,lt6911uxc";
reg = <0x2b>;
status = "okay";
devnode = "video0000";
/* Reset */
//reset-gpio = <&tegra_main_gpio TEGRA194_MAIN_GPIO(H, 3) GPIO_ACTIVE_LOW>;
/* Interrupt */
//interrupt-parent = <&tegra_main_gpio>;
//interrupts = <TEGRA194_MAIN_GPIO(P, 0) IRQ_TYPE_LEVEL_HIGH>;
port@0 {
ret = <0>;
status = "okay";
hdmi2csi_lt6911_out0: endpoint {
status = "okay";
port-index = <0>;
bus-width = <4>;
remote-endpoint = <&hdmi2csi_csi_in0>;
};
};
};
};
host1x {
/* Delete existing VI node to avoid conflicts */
/delete-node/ vi;
vi@15c10000 {
num-channels = <1>;
status = LT6911_EN;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
status = LT6911_EN;
reg = <0>;
hdmi2csi_vi_in0: endpoint {
status = LT6911_EN;
port-index =<0>;
bus-width = <4>;
remote-endpoint = <&hdmi2csi_csi_out0>;
};
};
};
};
nvcsi@15a00000 {
num-channels = <1>;
#address-cells = <1>;
#size-cells = <0>;
status = LT6911_EN;
channel@0 {
status = LT6911_EN;
reg = <0>;
discontinuous_clk = "no";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
status = LT6911_EN;
reg = <0>;
hdmi2csi_csi_in0: endpoint@0 {
status = LT6911_EN;
port-index = <0>;
bus-width = <4>;
remote-endpoint = <&hdmi2csi_lt6911_out0>;
};
};
port@1 {
status = LT6911_EN;
reg = <1>;
hdmi2csi_csi_out0: endpoint@1 {
status = LT6911_EN;
remote-endpoint = <&hdmi2csi_vi_in0>;
};
};
};
};
};
};
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
/**
*/
num_csi_lanes = <8>;
max_lane_speed = <2500000>;
min_bits_per_pixel = <16>;
vi_peak_byte_per_pixel = <3>;
vi_bw_margin_pct = <25>;
isp_peak_byte_per_pixel = <3>;
isp_bw_margin_pct = <25>;
status = LT6911_EN;
/**
*/
modules {
module0 {
status = LT6911_EN;
badge = "hdmi2csi_left_6911";
position = "left";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "lt6911uxc 7-002b";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/lt6911uxc_a@2b";
};
};
};
};
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment