nv-public: remove REMOVE_FRAGMENT_SYNTAX

These preprocessor conditionals were a temporary step to facilitate
step by step reviews.  Remove them and fix indentation.

Bug 4290389

Change-Id: Iecdbdf1869bec00538530d59420622d8563a116a
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3000004
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
Brad Griffis
2023-10-19 00:50:10 +00:00
committed by mobile promotions
parent ff77a8a1cd
commit 8f0cbdad83
35 changed files with 8784 additions and 9020 deletions

View File

@@ -6,404 +6,395 @@
#define CAM0_PWDN TEGRA234_AON_GPIO(AA, 4)
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-camera@0 {
target-path = "/";
__overlay__ {
#endif
gpio@c2f0000 {
camera-control-output-high {
gpio-hog;
output-high;
gpios = <CAM0_PWDN 0>;
label = "cam0-pwdn";
gpio@c2f0000 {
camera-control-output-high {
gpio-hog;
output-high;
gpios = <CAM0_PWDN 0>;
label = "cam0-pwdn";
};
};
tegra-capture-vi {
nvidia,vi-mapping =
<0 0>,
<1 0>,
<2 0>,
<3 0>,
<4 1>,
<5 1>;
num-channels = <1>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
p3785_vi_in0: endpoint {
port-index = <0>;
bus-width = <8>;
remote-endpoint = <&p3785_csi_out0>;
};
};
tegra-capture-vi {
nvidia,vi-mapping =
<0 0>,
<1 0>,
<2 0>,
<3 0>,
<4 1>,
<5 1>;
};
};
bus@0 {
host1x@13e00000 {
nvcsi@15a00000 {
num-channels = <1>;
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
reg = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
p3785_csi_in0: endpoint@0 {
port-index = <0>;
bus-width = <8>;
remote-endpoint = <&p3785_out0>;
};
};
port@1 {
reg = <1>;
p3785_csi_out0: endpoint@1 {
remote-endpoint = <&p3785_vi_in0>;
};
};
};
};
};
};
i2c@3180000 {
p3785@56 {
compatible = "nvidia,lt6911uxc";
/* I2C device address */
reg = <0x56>;
/* V4L2 device node location */
devnode = "video0";
/* Physical dimensions of sensor */
physical_w = "3.674";
physical_h = "2.738";
sensor_model = "p3785";
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources
avdd-reg = "vana";
iovdd-reg = "vif";
dvdd-reg = "vdig";*/
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
/*post_crop_frame_drop = "0";*/
/* 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";
reset-gpios = <&gpio_aon CAM0_PWDN GPIO_ACTIVE_HIGH>;
/**
* ==== Modes ====
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* == Signal properties ==
*
* phy_mode = "";
* PHY mode used by the MIPI lanes for this device
*
* tegra_sinterface = "";
* CSI Serial interface connected to tegra
* Incase of virtual HW devices, use virtual
* For SW emulated devices, use host
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* == Image format Properties ==
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* pixel_t = "";
* The sensor readout pixel pattern
*
* line_length = "";
* Pixel line length (width) for sensor mode.
*
* == Source Control Settings ==
*
* Gain factor used to convert fixed point integer to float
* Gain range [min_gain/gain_factor, max_gain/gain_factor]
* Gain step [step_gain/gain_factor is the smallest step that can be configured]
* Default gain [Default gain to be initialized for the control.
* use min_gain_val as default for optimal results]
* Framerate factor used to convert fixed point integer to float
* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
* Default Framerate [Default framerate to be initialized for the control.
* use max_framerate to get required performance]
* Exposure factor used to convert fixed point integer to float
* For convenience use 1 sec = 1000000us as conversion factor
* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
* Default Exposure Time [Default exposure to be initialized for the control.
* Set default exposure based on the default_framerate for optimal exposure settings]
* For convenience use 1 sec = 1000000us as conversion factor
*
* gain_factor = ""; (integer factor used for floating to fixed point conversion)
* min_gain_val = ""; (ceil to integer)
* max_gain_val = ""; (ceil to integer)
* step_gain_val = ""; (ceil to integer)
* default_gain = ""; (ceil to integer)
* Gain limits for mode
*
* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* step_exp_time = ""; (ceil to integer)
* default_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (sec)
*
* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
* min_framerate = ""; (ceil to integer)
* max_framerate = ""; (ceil to integer)
* step_framerate = ""; (ceil to integer)
* default_framerate = ""; (ceil to integer)
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
* num_of_exposure = "";
* Digital overlap(Dol) frames
*
* num_of_ignored_lines = "";
* Used for cropping, eg. OB lines + Ignored area of effective pixel lines
*
* num_of_lines_offset_0 = "";
* Used for cropping, vertical blanking in front of short exposure data
* If more Dol frames are used, it can be extended, eg. num_of_lines_offset_1
*
* num_of_ignored_pixels = "";
* Used for cropping, The length of line info(pixels)
*
* num_of_left_margin_pixels = "";
* Used for cropping, the size of the left edge margin before
* the active pixel area (after ignored pixels)
*
* num_of_right_margin_pixels = "";
* Used for cropping, the size of the right edge margin after
* the active pixel area
*
*/
mode0 { // E2832_1920x1080_60Fps
mclk_khz = "24000";
num_lanes = "4";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1920";
active_h = "1080";
mode_type = "rgb";
pixel_phase = "rgb888";
csi_pixel_bit_depth = "24";
readout_orientation = "0";
line_length = "1920";
inherent_gain = "1";
mclk_multiplier = "24";
pix_clk_hz = "250000000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "16667"; /* us */
};
mode1 { // E2832_3840x2160
mclk_khz = "24000";
num_lanes = "8";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "3840";
active_h = "2160";
mode_type = "rgb";
pixel_phase = "rgb888";
csi_pixel_bit_depth = "24";
readout_orientation = "0";
line_length = "3840";
inherent_gain = "1";
mclk_multiplier = "24";
pix_clk_hz = "500000000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "16667"; /* us */
};
mode2 { // E2832_1280x720_60Fps
mclk_khz = "24000";
num_lanes = "4";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1280";
active_h = "720";
mode_type = "rgb";
pixel_phase = "rgb888";
csi_pixel_bit_depth = "24";
readout_orientation = "0";
line_length = "1280";
inherent_gain = "1";
mclk_multiplier = "24";
pix_clk_hz = "250000000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "16667"; /* us */
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
p3785_vi_in0: endpoint {
p3785_out0: endpoint {
port-index = <0>;
bus-width = <8>;
remote-endpoint = <&p3785_csi_out0>;
remote-endpoint = <&p3785_csi_in0>;
};
};
};
};
bus@0 {
host1x@13e00000 {
nvcsi@15a00000 {
num-channels = <1>;
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
reg = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
p3785_csi_in0: endpoint@0 {
port-index = <0>;
bus-width = <8>;
remote-endpoint = <&p3785_out0>;
};
};
port@1 {
reg = <1>;
p3785_csi_out0: endpoint@1 {
remote-endpoint = <&p3785_vi_in0>;
};
};
};
};
};
};
i2c@3180000 {
p3785@56 {
compatible = "nvidia,lt6911uxc";
/* I2C device address */
reg = <0x56>;
/* V4L2 device node location */
devnode = "video0";
/* Physical dimensions of sensor */
physical_w = "3.674";
physical_h = "2.738";
sensor_model = "p3785";
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources
avdd-reg = "vana";
iovdd-reg = "vif";
dvdd-reg = "vdig";*/
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
/*post_crop_frame_drop = "0";*/
/* 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";
reset-gpios = <&gpio_aon CAM0_PWDN GPIO_ACTIVE_HIGH>;
/**
* ==== Modes ====
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* == Signal properties ==
*
* phy_mode = "";
* PHY mode used by the MIPI lanes for this device
*
* tegra_sinterface = "";
* CSI Serial interface connected to tegra
* Incase of virtual HW devices, use virtual
* For SW emulated devices, use host
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* == Image format Properties ==
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* pixel_t = "";
* The sensor readout pixel pattern
*
* line_length = "";
* Pixel line length (width) for sensor mode.
*
* == Source Control Settings ==
*
* Gain factor used to convert fixed point integer to float
* Gain range [min_gain/gain_factor, max_gain/gain_factor]
* Gain step [step_gain/gain_factor is the smallest step that can be configured]
* Default gain [Default gain to be initialized for the control.
* use min_gain_val as default for optimal results]
* Framerate factor used to convert fixed point integer to float
* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
* Default Framerate [Default framerate to be initialized for the control.
* use max_framerate to get required performance]
* Exposure factor used to convert fixed point integer to float
* For convenience use 1 sec = 1000000us as conversion factor
* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
* Default Exposure Time [Default exposure to be initialized for the control.
* Set default exposure based on the default_framerate for optimal exposure settings]
* For convenience use 1 sec = 1000000us as conversion factor
*
* gain_factor = ""; (integer factor used for floating to fixed point conversion)
* min_gain_val = ""; (ceil to integer)
* max_gain_val = ""; (ceil to integer)
* step_gain_val = ""; (ceil to integer)
* default_gain = ""; (ceil to integer)
* Gain limits for mode
*
* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* step_exp_time = ""; (ceil to integer)
* default_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (sec)
*
* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
* min_framerate = ""; (ceil to integer)
* max_framerate = ""; (ceil to integer)
* step_framerate = ""; (ceil to integer)
* default_framerate = ""; (ceil to integer)
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
* num_of_exposure = "";
* Digital overlap(Dol) frames
*
* num_of_ignored_lines = "";
* Used for cropping, eg. OB lines + Ignored area of effective pixel lines
*
* num_of_lines_offset_0 = "";
* Used for cropping, vertical blanking in front of short exposure data
* If more Dol frames are used, it can be extended, eg. num_of_lines_offset_1
*
* num_of_ignored_pixels = "";
* Used for cropping, The length of line info(pixels)
*
* num_of_left_margin_pixels = "";
* Used for cropping, the size of the left edge margin before
* the active pixel area (after ignored pixels)
*
* num_of_right_margin_pixels = "";
* Used for cropping, the size of the right edge margin after
* the active pixel area
*
*/
mode0 { // E2832_1920x1080_60Fps
mclk_khz = "24000";
num_lanes = "4";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1920";
active_h = "1080";
mode_type = "rgb";
pixel_phase = "rgb888";
csi_pixel_bit_depth = "24";
readout_orientation = "0";
line_length = "1920";
inherent_gain = "1";
mclk_multiplier = "24";
pix_clk_hz = "250000000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "16667"; /* us */
};
mode1 { // E2832_3840x2160
mclk_khz = "24000";
num_lanes = "8";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "3840";
active_h = "2160";
mode_type = "rgb";
pixel_phase = "rgb888";
csi_pixel_bit_depth = "24";
readout_orientation = "0";
line_length = "3840";
inherent_gain = "1";
mclk_multiplier = "24";
pix_clk_hz = "500000000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "16667"; /* us */
};
mode2 { // E2832_1280x720_60Fps
mclk_khz = "24000";
num_lanes = "4";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1280";
active_h = "720";
mode_type = "rgb";
pixel_phase = "rgb888";
csi_pixel_bit_depth = "24";
readout_orientation = "0";
line_length = "1280";
inherent_gain = "1";
mclk_multiplier = "24";
pix_clk_hz = "250000000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "16667"; /* us */
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
p3785_out0: endpoint {
port-index = <0>;
bus-width = <8>;
remote-endpoint = <&p3785_csi_in0>;
};
};
};
};
};
};
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
/**
* Physical settings to calculate max ISO BW
*
* num_csi_lanes = <>;
* Total number of CSI lanes when all cameras are active
*
* max_lane_speed = <>;
* Max lane speed in Kbit/s
*
* min_bits_per_pixel = <>;
* Min bits per pixel
*
* vi_peak_byte_per_pixel = <>;
* Max byte per pixel for the VI ISO case
*
* vi_bw_margin_pct = <>;
* Vi bandwidth margin in percentage
*
* max_pixel_rate = <>;
* Max pixel rate in Kpixel/s for the ISP ISO case
*
* isp_peak_byte_per_pixel = <>;
* Max byte per pixel for the ISP ISO case
*
* isp_bw_margin_pct = <>;
* Isp bandwidth margin in percentage
*/
num_csi_lanes = <4>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <750000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
/**
* The general guideline for naming badge_info contains 3 parts, and is as follows,
* The first part is the camera_board_id for the module; if the module is in a FFD
* platform, then use the platform name for this part.
* The second part contains the position of the module, ex. "rear" or "front".
* The third part contains the last 6 characters of a part number which is found
* in the module's specsheet from the vender.
*/
modules {
module0 {
badge = "p3785_ltx6911";
position = "bottom";
orientation = "1";
drivernode0 {
/* 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/p3785@56";
};
};
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
/**
* Physical settings to calculate max ISO BW
*
* num_csi_lanes = <>;
* Total number of CSI lanes when all cameras are active
*
* max_lane_speed = <>;
* Max lane speed in Kbit/s
*
* min_bits_per_pixel = <>;
* Min bits per pixel
*
* vi_peak_byte_per_pixel = <>;
* Max byte per pixel for the VI ISO case
*
* vi_bw_margin_pct = <>;
* Vi bandwidth margin in percentage
*
* max_pixel_rate = <>;
* Max pixel rate in Kpixel/s for the ISP ISO case
*
* isp_peak_byte_per_pixel = <>;
* Max byte per pixel for the ISP ISO case
*
* isp_bw_margin_pct = <>;
* Isp bandwidth margin in percentage
*/
num_csi_lanes = <4>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <750000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
/**
* The general guideline for naming badge_info contains 3 parts, and is as follows,
* The first part is the camera_board_id for the module; if the module is in a FFD
* platform, then use the platform name for this part.
* The second part contains the position of the module, ex. "rear" or "front".
* The third part contains the last 6 characters of a part number which is found
* in the module's specsheet from the vender.
*/
modules {
module0 {
badge = "p3785_ltx6911";
position = "bottom";
orientation = "1";
drivernode0 {
/* 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/p3785@56";
};
};
};
};
};

View File

File diff suppressed because it is too large Load Diff

View File

@@ -2,256 +2,247 @@
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-p3701-prod@0 {
target-path = "/";
__overlay__ {
#endif
bus@0 {
aon@c000000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00260004 0x0000003f 0x00000020>; //SPI_COMMAND2_0
};
};
};
};
i2c@3160000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@3180000 {
prod-settings {
#prod-cells = <4>;
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
prod_c_sm {
board {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000708 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x08080808>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@3190000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@31c0000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@31e0000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@c240000 {
prod-settings {
#prod-cells = <4>;
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@c250000 {
prod-settings {
#prod-cells = <4>;
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
mttcan@c310000 {
prod-settings {
#prod-cells = <4>;
prod_c_can_2m_1m {
board {
prod = <
0 0x00000048 0x00007f00 0x00000000>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_5m {
board {
prod = <
0 0x00000048 0x00007f00 0x00000600>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_8m {
board {
prod = <
0 0x00000048 0x00007f00 0x00000400>; //M_TTCAN_CORE_TDCR_0
};
};
};
};
mttcan@c320000 {
prod-settings {
#prod-cells = <4>;
prod_c_can_2m_1m {
board {
prod = <
1 0x0000f048 0x00007f00 0x00000000>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_5m {
board {
prod = <
1 0x0000f048 0x00007f00 0x00000600>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_8m {
board {
prod = <
1 0x0000f048 0x00007f00 0x00000400>; //M_TTCAN_CORE_TDCR_0
};
};
};
};
spi@3210000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000004 0x0000003f 0x00000030>; //SPI_COMMAND2_0
};
};
};
};
spi@3230000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000004 0x0000003f 0x00000020>; //SPI_COMMAND2_0
};
};
};
};
spi@3270000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000004 0x00007cff 0x00000010 //QSPI_COMMAND2_0
0 0x000001ec 0x01f1f000 0x00a0a000>; //QSPI_QSPI_COMP_CONTROL_0
};
};
};
};
ufshci@2500000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0x02470000 0x00002220 0xffffffff 0x001aadb5 //MPHY_RX_APB_VENDOR3B_0
0x02480000 0x00002220 0xffffffff 0x001aadb5>; //MPHY_RX_APB_VENDOR3B_0
};
};
};
};
xusb_padctl@3520000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000088 0x01fe0000 0x00cc0000 //XUSB_PADCTL_USB2_OTG_PAD0_CTL_0_0
0 0x00000094 0x0000000e 0x00000004 //XUSB_PADCTL_USB2_OTG_PAD0_CTL_3_0
0 0x000000c8 0x01fe0000 0x00cc0000 //XUSB_PADCTL_USB2_OTG_PAD1_CTL_0_0
0 0x000000d4 0x0000000e 0x00000004 //XUSB_PADCTL_USB2_OTG_PAD1_CTL_3_0
0 0x00000108 0x01fe0000 0x00cc0000 //XUSB_PADCTL_USB2_OTG_PAD2_CTL_0_0
0 0x00000114 0x0000000e 0x00000000 //XUSB_PADCTL_USB2_OTG_PAD2_CTL_3_0
0 0x00000148 0x01fe0000 0x00cc0000>; //XUSB_PADCTL_USB2_OTG_PAD3_CTL_0_0
};
};
bus@0 {
aon@c000000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00260004 0x0000003f 0x00000020>; //SPI_COMMAND2_0
};
};
};
};
i2c@3160000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@3180000 {
prod-settings {
#prod-cells = <4>;
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
prod_c_sm {
board {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000708 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x08080808>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@3190000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@31c0000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@31e0000 {
prod-settings {
#prod-cells = <4>;
prod_c_fm {
board {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@c240000 {
prod-settings {
#prod-cells = <4>;
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
i2c@c250000 {
prod-settings {
#prod-cells = <4>;
prod_c_fmplus {
board {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //I2C_I2C_CLK_DIVISOR_REGISTER_0
0 0x00000094 0x0000ffff 0x00000202 //I2C_I2C_INTERFACE_TIMING_0_0
0 0x00000098 0xffffffff 0x02020202>; //I2C_I2C_INTERFACE_TIMING_1_0
};
};
};
};
mttcan@c310000 {
prod-settings {
#prod-cells = <4>;
prod_c_can_2m_1m {
board {
prod = <
0 0x00000048 0x00007f00 0x00000000>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_5m {
board {
prod = <
0 0x00000048 0x00007f00 0x00000600>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_8m {
board {
prod = <
0 0x00000048 0x00007f00 0x00000400>; //M_TTCAN_CORE_TDCR_0
};
};
};
};
mttcan@c320000 {
prod-settings {
#prod-cells = <4>;
prod_c_can_2m_1m {
board {
prod = <
1 0x0000f048 0x00007f00 0x00000000>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_5m {
board {
prod = <
1 0x0000f048 0x00007f00 0x00000600>; //M_TTCAN_CORE_TDCR_0
};
};
prod_c_can_8m {
board {
prod = <
1 0x0000f048 0x00007f00 0x00000400>; //M_TTCAN_CORE_TDCR_0
};
};
};
};
spi@3210000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000004 0x0000003f 0x00000030>; //SPI_COMMAND2_0
};
};
};
};
spi@3230000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000004 0x0000003f 0x00000020>; //SPI_COMMAND2_0
};
};
};
};
spi@3270000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000004 0x00007cff 0x00000010 //QSPI_COMMAND2_0
0 0x000001ec 0x01f1f000 0x00a0a000>; //QSPI_QSPI_COMP_CONTROL_0
};
};
};
};
ufshci@2500000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0x02470000 0x00002220 0xffffffff 0x001aadb5 //MPHY_RX_APB_VENDOR3B_0
0x02480000 0x00002220 0xffffffff 0x001aadb5>; //MPHY_RX_APB_VENDOR3B_0
};
};
};
};
xusb_padctl@3520000 {
prod-settings {
#prod-cells = <4>;
prod {
board {
prod = <
0 0x00000088 0x01fe0000 0x00cc0000 //XUSB_PADCTL_USB2_OTG_PAD0_CTL_0_0
0 0x00000094 0x0000000e 0x00000004 //XUSB_PADCTL_USB2_OTG_PAD0_CTL_3_0
0 0x000000c8 0x01fe0000 0x00cc0000 //XUSB_PADCTL_USB2_OTG_PAD1_CTL_0_0
0 0x000000d4 0x0000000e 0x00000004 //XUSB_PADCTL_USB2_OTG_PAD1_CTL_3_0
0 0x00000108 0x01fe0000 0x00cc0000 //XUSB_PADCTL_USB2_OTG_PAD2_CTL_0_0
0 0x00000114 0x0000000e 0x00000000 //XUSB_PADCTL_USB2_OTG_PAD2_CTL_3_0
0 0x00000148 0x01fe0000 0x00cc0000>; //XUSB_PADCTL_USB2_OTG_PAD3_CTL_0_0
};
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
};

View File

@@ -4,151 +4,142 @@
#include "tegra234-p3701-0000-prod-overlay.dtsi"
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-t234-p3701-0000@0 {
target-path = "/";
__overlay__ {
#endif
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
summation-bypass;
};
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
status = "disabled";
};
channel@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
status = "disabled";
};
};
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
summation-bypass;
};
};
hdr40_vdd_3v3: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "vdd-3v3-sys";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
status = "disabled";
};
channel@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
status = "disabled";
};
};
};
thermal-zones {
tboard-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 0>;
status = "okay";
};
tdiode-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 1>;
status = "okay";
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
hdr40_vdd_3v3: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "vdd-3v3-sys";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
};
};
thermal-zones {
tboard-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 0>;
status = "okay";
};
tdiode-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 1>;
status = "okay";
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
};

View File

@@ -2,290 +2,281 @@
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-t234-p3701-0008@0 {
target-path = "/";
__overlay__ {
#endif
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
summation-bypass;
};
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
status = "disabled";
};
channel@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
status = "disabled";
};
};
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
i2c@c250000 {
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "CVB_ATX_12V";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "CVB_ATX_3V3";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "CVB_ATX_5V";
shunt-resistor-micro-ohms = <2000>;
};
};
ina219@44 {
compatible = "ti,ina219";
reg = <0x44>;
shunt-resistor = <2000>;
label = "CVB_ATX_12V_8P";
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
channel@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
summation-bypass;
};
};
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
status = "disabled";
};
channel@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
status = "disabled";
};
};
};
i2c@c250000 {
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "CVB_ATX_12V";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "CVB_ATX_3V3";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "CVB_ATX_5V";
shunt-resistor-micro-ohms = <2000>;
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
ina219@44 {
compatible = "ti,ina219";
reg = <0x44>;
shunt-resistor = <2000>;
label = "CVB_ATX_12V_8P";
};
};
opp-table-cluster0 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
opp-table-cluster1 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
thermal-zones {
cpu-thermal {
trips {
cpu-sw-slowdown {
temperature = <112000>;
};
cpu-sw-shutdown {
temperature = <117500>;
};
};
};
cv0-thermal {
trips {
cv0-sw-slowdown {
temperature = <112000>;
};
cv0-sw-shutdown {
temperature = <117500>;
};
};
};
cv1-thermal {
trips {
cv1-sw-slowdown {
temperature = <112000>;
};
cv1-sw-shutdown {
temperature = <117500>;
};
};
};
cv2-thermal {
trips {
cv2-sw-slowdown {
temperature = <112000>;
};
cv2-sw-shutdown {
temperature = <117500>;
};
};
};
gpu-thermal {
trips {
gpu-sw-slowdown {
temperature = <112000>;
};
gpu-sw-shutdown {
temperature = <117500>;
};
};
};
soc0-thermal {
trips {
soc0-sw-slowdown {
temperature = <112000>;
};
soc0-sw-shutdown {
temperature = <117500>;
};
};
};
soc1-thermal {
trips {
soc1-sw-slowdown {
temperature = <112000>;
};
soc1-sw-shutdown {
temperature = <117500>;
};
};
};
soc2-thermal {
trips {
soc2-sw-slowdown {
temperature = <112000>;
};
soc2-sw-shutdown {
temperature = <117500>;
};
};
};
tj-thermal {
trips {
tj-sw-shutdown {
temperature = <117500>;
};
};
};
tboard-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 0>;
status = "okay";
};
tdiode-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 1>;
status = "okay";
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
};
opp-table-cluster0 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
thermal-zones {
cpu-thermal {
trips {
cpu-sw-slowdown {
temperature = <112000>;
};
cpu-sw-shutdown {
temperature = <117500>;
};
};
};
cv0-thermal {
trips {
cv0-sw-slowdown {
temperature = <112000>;
};
cv0-sw-shutdown {
temperature = <117500>;
};
};
};
cv1-thermal {
trips {
cv1-sw-slowdown {
temperature = <112000>;
};
cv1-sw-shutdown {
temperature = <117500>;
};
};
};
cv2-thermal {
trips {
cv2-sw-slowdown {
temperature = <112000>;
};
cv2-sw-shutdown {
temperature = <117500>;
};
};
};
gpu-thermal {
trips {
gpu-sw-slowdown {
temperature = <112000>;
};
gpu-sw-shutdown {
temperature = <117500>;
};
};
};
soc0-thermal {
trips {
soc0-sw-slowdown {
temperature = <112000>;
};
soc0-sw-shutdown {
temperature = <117500>;
};
};
};
soc1-thermal {
trips {
soc1-sw-slowdown {
temperature = <112000>;
};
soc1-sw-shutdown {
temperature = <117500>;
};
};
};
soc2-thermal {
trips {
soc2-sw-slowdown {
temperature = <112000>;
};
soc2-sw-shutdown {
temperature = <117500>;
};
};
};
tj-thermal {
trips {
tj-sw-shutdown {
temperature = <117500>;
};
};
};
tboard-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 0>;
status = "okay";
};
tdiode-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 1>;
status = "okay";
};
};
};

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "tegra234-p3737-0000+p3701-0000.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "staging/tegra234-p3737-0000+p3701-0004.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "staging/tegra234-p3737-0000+p3701-0005.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "staging/tegra234-p3737-0000+p3701-0008.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"

View File

@@ -12,329 +12,319 @@
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
compatible = "nvidia,p3737-0000+p3701-0000";
fragment-t234-p3737-p3701@0 {
target-path = "/";
__overlay__ {
#endif
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
cpus {
idle-states {
c7 {
status = "okay";
};
scf-pmu {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
ufshci@2500000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
serial@3110000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@3190000 {
status = "okay";
};
i2c@31b0000 {
nvidia,hw-instance-id = <0x5>;
status = "okay";
};
i2c@31c0000 {
status = "okay";
};
serial@31d0000 {
current-speed = <115200>;
};
i2c@31e0000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3d00000 {
status = "okay";
};
ethernet@6800000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
nvidia,num-slices = <3>;
};
i2c@c240000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
rtc@c2a0000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
mc-hwpm@2c10000 {
status = "okay";
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
se@15810000 {
status = "okay";
};
se@15820000 {
status = "okay";
};
se@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
nvpmodel {
status = "okay";
};
scf-pmu {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
ufshci@2500000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
serial@3110000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@3190000 {
status = "okay";
};
i2c@31b0000 {
nvidia,hw-instance-id = <0x5>;
status = "okay";
};
i2c@31c0000 {
status = "okay";
};
serial@31d0000 {
current-speed = <115200>;
};
i2c@31e0000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3d00000 {
status = "okay";
};
ethernet@6800000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
nvidia,num-slices = <3>;
};
i2c@c240000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
rtc@c2a0000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
mc-hwpm@2c10000 {
status = "okay";
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
se@15810000 {
status = "okay";
};
se@15820000 {
status = "okay";
};
se@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
};

View File

@@ -2,133 +2,124 @@
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-t234-p3737-0000@0 {
target-path = "/";
__overlay__ {
#endif
bus@0 {
spi@3210000{ /* SPI1 in 40 pin conn */
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
bus@0 {
spi@3210000{ /* SPI1 in 40 pin conn */
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
spi@3230000{ /* SPI3 in 40 pin conn */
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
spi@3230000{ /* SPI3 in 40 pin conn */
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
padctl@3520000 {
padctl@3520000 {
ports {
usb2-0 {
mode = "otg";
usb-role-switch;
};
};
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901100 {
ports {
usb2-0 {
mode = "otg";
usb-role-switch;
};
};
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901100 {
ports {
port@1 {
hdr40_snd_i2s_dap_ep: endpoint {
};
};
port@1 {
hdr40_snd_i2s_dap_ep: endpoint {
};
};
};
};
};
};
ethernet@6800000 {
nvidia,mac-addr-idx = <0>;
nvidia,max-platform-mtu = <16383>;
/* 1=enable, 0=disable */
nvidia,pause_frames = <1>;
phy-handle = <&mgbe0_aqr113c_phy>;
phy-mode = "10gbase-r";
/* 0:XFI 10G, 1:XFI 5G, 2:USXGMII 10G, 3:USXGMII 5G */
nvidia,phy-iface-mode = <0>;
nvidia,phy-reset-gpio = <&gpio TEGRA234_MAIN_GPIO(Y, 1) 0>;
nvidia,mdio_addr = <0>;
ethernet@6800000 {
nvidia,mac-addr-idx = <0>;
nvidia,max-platform-mtu = <16383>;
/* 1=enable, 0=disable */
nvidia,pause_frames = <1>;
phy-handle = <&mgbe0_aqr113c_phy>;
phy-mode = "10gbase-r";
/* 0:XFI 10G, 1:XFI 5G, 2:USXGMII 10G, 3:USXGMII 5G */
nvidia,phy-iface-mode = <0>;
nvidia,phy-reset-gpio = <&gpio TEGRA234_MAIN_GPIO(Y, 1) 0>;
nvidia,mdio_addr = <0>;
mdio {
compatible = "nvidia,eqos-mdio";
#address-cells = <1>;
#size-cells = <0>;
mdio {
compatible = "nvidia,eqos-mdio";
#address-cells = <1>;
#size-cells = <0>;
mgbe0_aqr113c_phy: phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
reg = <0x0>;
nvidia,phy-rst-pdelay-msec = <150>; /* msec */
nvidia,phy-rst-duration-usec = <221000>; /* usec */
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Y, 3) IRQ_TYPE_LEVEL_LOW>;
};
};
mgbe0_aqr113c_phy: phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
reg = <0x0>;
nvidia,phy-rst-pdelay-msec = <150>; /* msec */
nvidia,phy-rst-duration-usec = <221000>; /* usec */
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Y, 3) IRQ_TYPE_LEVEL_LOW>;
};
};
tegra_sound_graph: tegra_sound: sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson AGX Orin APE";
nvidia-audio-card,mclk-fs = <256>;
hdr40_snd_link_i2s: nvidia-audio-card,dai-link@77 { };
};
eeprom-manager {
data-size = <0x100>;
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@1 {
slave-address = <0x56>;
label = "cvb";
};
};
bus@1 {
i2c-bus = <&cam_i2c>;
eeprom@0 {
slave-address = <0x54>;
label = "sensor0";
};
eeprom@1 {
slave-address = <0x57>;
label = "sensor1";
};
eeprom@2 {
slave-address = <0x52>;
label = "sensor2";
};
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
tegra_sound_graph: tegra_sound: sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson AGX Orin APE";
nvidia-audio-card,mclk-fs = <256>;
hdr40_snd_link_i2s: nvidia-audio-card,dai-link@77 { };
};
eeprom-manager {
data-size = <0x100>;
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@1 {
slave-address = <0x56>;
label = "cvb";
};
};
bus@1 {
i2c-bus = <&cam_i2c>;
eeprom@0 {
slave-address = <0x54>;
label = "sensor0";
};
eeprom@1 {
slave-address = <0x57>;
label = "sensor1";
};
eeprom@2 {
slave-address = <0x52>;
label = "sensor2";
};
};
};
};

View File

@@ -12,287 +12,276 @@
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
compatible = "nvidia,p3740-0002+p3701-0008";
chosen {
bootargs = "console=ttyTCU0,115200n8";
};
fragment-t234-p3740-p3701@0 {
target-path = "/";
__overlay__ {
#endif
chosen {
bootargs = "console=ttyTCU0,115200n8";
};
bpmp {
thermal {
status = "okay";
};
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
tj-thermal {
status = "okay";
};
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
serial@3110000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@31d0000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3c00000 {
status = "okay";
};
hsp@c150000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
};
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
se@15810000 {
status = "okay";
};
se@15820000 {
status = "okay";
};
se@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
#ifndef REMOVE_FRAGMENT_SYNTAX
bpmp {
thermal {
status = "okay";
};
};
#endif
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
tj-thermal {
status = "okay";
};
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
serial@3110000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@31d0000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3c00000 {
status = "okay";
};
hsp@c150000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
};
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
se@15810000 {
status = "okay";
};
se@15820000 {
status = "okay";
};
se@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
};

View File

@@ -3,7 +3,6 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "tegra234-p3740-0002+p3701-0008.dts"
#include "tegra234-p3740-0002+p3701-0008-nv-common.dtsi"
#include "tegra234-p3740-0002+p3701-0008-safety.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "tegra234-p3740-0002+p3701-0008.dts"
#include "tegra234-p3740-0002+p3701-0008-nv-common.dtsi"

View File

@@ -4,226 +4,217 @@
#include "nv-soc/tegra234-soc-safetyservice-fsicom.dtsi"
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-t234-p3740-p3701-safety@0 {
target-path = "/";
__overlay__ {
#endif
compatible = "nvidia,p3740-0002+p3701-0008", "safety", "nvidia,p3701-0008", "nvidia,tegra234";
compatible = "nvidia,p3740-0002+p3701-0008", "safety", "nvidia,p3701-0008", "nvidia,tegra234";
bus@0 {
i2c@3160000 {
nvidia,epl-reporter-id = <0x8050>;
};
bus@0 {
i2c@3160000 {
nvidia,epl-reporter-id = <0x8050>;
};
i2c@c240000 {
nvidia,epl-reporter-id = <0x8051>;
};
i2c@c240000 {
nvidia,epl-reporter-id = <0x8051>;
};
i2c@3180000 {
nvidia,epl-reporter-id = <0x8052>;
};
i2c@3180000 {
nvidia,epl-reporter-id = <0x8052>;
};
i2c@3190000 {
nvidia,epl-reporter-id = <0x8053>;
};
i2c@3190000 {
nvidia,epl-reporter-id = <0x8053>;
};
i2c@31b0000 {
nvidia,epl-reporter-id = <0x8054>;
};
i2c@31b0000 {
nvidia,epl-reporter-id = <0x8054>;
};
i2c@31c0000 {
nvidia,epl-reporter-id = <0x8056>;
};
i2c@31c0000 {
nvidia,epl-reporter-id = <0x8056>;
};
i2c@c250000 {
nvidia,epl-reporter-id = <0x8057>;
};
i2c@c250000 {
nvidia,epl-reporter-id = <0x8057>;
};
i2c@31e0000 {
nvidia,epl-reporter-id = <0x8058>;
};
i2c@31e0000 {
nvidia,epl-reporter-id = <0x8058>;
};
hsp_top2: hsp@1600000 {
status = "okay";
};
spi@3230000 {
compatible = "nvidia,tegra186-spi-slave";
status = "okay";
spi@0 {
compatible = "nvidia,tegra-spidev";
reg = <0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,lsbyte-first;
};
};
hsp_top2: hsp@1600000 {
status = "okay";
};
spi@3230000 {
compatible = "nvidia,tegra186-spi-slave";
status = "okay";
spi@0 {
compatible = "nvidia,tegra-spidev";
reg = <0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,lsbyte-first;
};
};
};
};
chosen {
/*
* The ideal approach for disabling rail-gating
* for GPU should be deleting the power-domains
* property in GPU node. But /delete-property/
* is not a valid syntax in the device tree
* overlay, the nvidia,tegra-joint_xpu_rail is
* specified to achieve the same as an
* alternative.
*/
nvidia,tegra-joint_xpu_rail;
};
cpus {
idle-states {
c7 {
status = "disabled";
};
};
};
fsicom_client {
status = "okay";
};
FsiComIvc {
status = "okay";
};
/* FSI<->CCPLEX Communication through DRAM Carveout demo app */
FsiComAppChConfApp1 {
compatible = "nvidia,tegra-fsicom-sampleApp1";
status = "okay";
channelid_list = <3>;
};
hsierrrptinj {
compatible = "nvidia,tegra23x-hsierrrptinj";
mboxes = <&hsp_top0 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_TX(1)>;
mbox-names = "hsierrrptinj-tx";
status = "okay";
};
safetyservices_epl_client {
/* userspace app uses this driver to send error code */
status = "okay";
};
thermal-zones {
cpu-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
gpu-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
cv0-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
cv1-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
cv2-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
soc0-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
soc1-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
soc2-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
chosen {
/*
* The ideal approach for disabling rail-gating
* for GPU should be deleting the power-domains
* property in GPU node. But /delete-property/
* is not a valid syntax in the device tree
* overlay, the nvidia,tegra-joint_xpu_rail is
* specified to achieve the same as an
* alternative.
*/
nvidia,tegra-joint_xpu_rail;
};
cpus {
idle-states {
c7 {
status = "disabled";
};
};
};
fsicom_client {
status = "okay";
};
FsiComIvc {
status = "okay";
};
/* FSI<->CCPLEX Communication through DRAM Carveout demo app */
FsiComAppChConfApp1 {
compatible = "nvidia,tegra-fsicom-sampleApp1";
status = "okay";
channelid_list = <3>;
};
hsierrrptinj {
compatible = "nvidia,tegra23x-hsierrrptinj";
mboxes = <&hsp_top0 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_TX(1)>;
mbox-names = "hsierrrptinj-tx";
status = "okay";
};
safetyservices_epl_client {
/* userspace app uses this driver to send error code */
status = "okay";
};
thermal-zones {
cpu-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
gpu-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
cv0-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
cv1-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
cv2-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
soc0-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
soc1-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
soc2-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
};
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
};

View File

@@ -4,237 +4,228 @@
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-t234-p3740-0002@0 {
target-path = "/";
__overlay__ {
#endif
bus@0 {
i2c@31c0000 {
typec: stusb1600@28 {
status = "okay";
compatible = "st,stusb1600";
reg = <0x28>;
vdd-supply = <&p3740_vdd_5v_sys>;
vsys-supply = <&vdd_3v3_sys>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(K, 6) IRQ_TYPE_LEVEL_LOW>;
typec_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
typec-power-opmode = "default";
bus@0 {
i2c@31c0000 {
typec: stusb1600@28 {
status = "okay";
compatible = "st,stusb1600";
reg = <0x28>;
vdd-supply = <&p3740_vdd_5v_sys>;
vsys-supply = <&vdd_3v3_sys>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(K, 6) IRQ_TYPE_LEVEL_LOW>;
typec_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
typec-power-opmode = "default";
port {
typec_con_ep: endpoint {
remote-endpoint = <&usb_role_switch0>;
};
};
};
};
};
i2c@c250000 {
f75308@4d {
compatible = "fintek,f75308";
reg = <0x4d>;
#address-cells = <1>;
#size-cells = <0>;
fan@0 {
reg = <0x0>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@1 {
reg = <0x1>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@2 {
reg = <0x2>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@3 {
reg = <0x3>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
};
};
padctl@3520000 {
ports {
usb2-0 {
port {
usb_role_switch0: endpoint {
remote-endpoint = <&typec_con_ep>;
};
};
port {
typec_con_ep: endpoint {
remote-endpoint = <&usb_role_switch0>;
};
};
};
};
};
i2c@c250000 {
f75308@4d {
compatible = "fintek,f75308";
reg = <0x4d>;
#address-cells = <1>;
#size-cells = <0>;
sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson IGX Orin APE";
nvidia-audio-card,mclk-fs = <256>;
nvidia-audio-card,widgets =
"Headphone", "CVB-RT Headphone Jack",
"Microphone", "CVB-RT Mic Jack",
"Speaker", "CVB-RT Int Spk",
"Microphone", "CVB-RT Int Mic";
nvidia-audio-card,routing =
"CVB-RT Headphone Jack", "CVB-RT HPOL",
"CVB-RT Headphone Jack", "CVB-RT HPOR",
"CVB-RT IN1P", "CVB-RT Mic Jack",
"CVB-RT IN2P", "CVB-RT Mic Jack",
"CVB-RT IN2N", "CVB-RT Mic Jack",
"CVB-RT IN3P", "CVB-RT Mic Jack",
"CVB-RT Int Spk", "CVB-RT SPOLP",
"CVB-RT Int Spk", "CVB-RT SPORP",
"CVB-RT Int Spk", "CVB-RT LOUTL",
"CVB-RT Int Spk", "CVB-RT LOUTR",
"CVB-RT DMIC1", "CVB-RT Int Mic",
"CVB-RT DMIC2", "CVB-RT Int Mic";
/* I2S4 dai node */
nvidia-audio-card,dai-link@79 {
link-name = "rt5640-playback";
codec {
sound-dai = <&rt5640 0>;
prefix = "CVB-RT";
};
fan@0 {
reg = <0x0>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
/* I2S6 dai node */
nvidia-audio-card,dai-link@81 {
bitclock-master;
frame-master;
fan@1 {
reg = <0x1>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@2 {
reg = <0x2>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@3 {
reg = <0x3>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&dp_aux_ch2_i2c>;
eeprom@1 {
slave-address = <0x55>;
label = "cvb";
padctl@3520000 {
ports {
usb2-0 {
port {
usb_role_switch0: endpoint {
remote-endpoint = <&typec_con_ep>;
};
};
};
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x20000000>; /* 512MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
p3740_vdd_0v95_AO: regulator-vdd-0v95-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-0v95-AO";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <950000>;
};
p3740_vdd_12v_sys: regulator-vdd-12v-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-12v-sys";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
};
p3740_vdd_1v05_AO: regulator-vdd-1v05-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-1v05-AO";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
};
p3740_vdd_1v0_sys: regulator-vdd-1v0-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v0-sys";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
};
p3740_vdd_1v1_sys: regulator-vdd-1v1-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v1-sys";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
};
p3740_vdd_1v8_AO: regulator-vdd-1v8-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-1v8-AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
p3740_vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v8-sys";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
p3740_vdd_2v5_sys: regulator-vdd-2v5-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-2v5-sys";
regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>;
};
p3740_vdd_2v8_sys: regulator-vdd-2v8-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-2v8-sys";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
p3740_vdd_3v3_AO: regulator-vdd-3v3-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-3v3-AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
p3740_vdd_3v7_AO: regulator-vdd-3v7-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-3v7-AO";
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
p3740_vdd_5v_sys: regulator-vdd-5v-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-5v-sys";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson IGX Orin APE";
nvidia-audio-card,mclk-fs = <256>;
nvidia-audio-card,widgets =
"Headphone", "CVB-RT Headphone Jack",
"Microphone", "CVB-RT Mic Jack",
"Speaker", "CVB-RT Int Spk",
"Microphone", "CVB-RT Int Mic";
nvidia-audio-card,routing =
"CVB-RT Headphone Jack", "CVB-RT HPOL",
"CVB-RT Headphone Jack", "CVB-RT HPOR",
"CVB-RT IN1P", "CVB-RT Mic Jack",
"CVB-RT IN2P", "CVB-RT Mic Jack",
"CVB-RT IN2N", "CVB-RT Mic Jack",
"CVB-RT IN3P", "CVB-RT Mic Jack",
"CVB-RT Int Spk", "CVB-RT SPOLP",
"CVB-RT Int Spk", "CVB-RT SPORP",
"CVB-RT Int Spk", "CVB-RT LOUTL",
"CVB-RT Int Spk", "CVB-RT LOUTR",
"CVB-RT DMIC1", "CVB-RT Int Mic",
"CVB-RT DMIC2", "CVB-RT Int Mic";
/* I2S4 dai node */
nvidia-audio-card,dai-link@79 {
link-name = "rt5640-playback";
codec {
sound-dai = <&rt5640 0>;
prefix = "CVB-RT";
};
};
/* I2S6 dai node */
nvidia-audio-card,dai-link@81 {
bitclock-master;
frame-master;
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&dp_aux_ch2_i2c>;
eeprom@1 {
slave-address = <0x55>;
label = "cvb";
};
};
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x20000000>; /* 512MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
p3740_vdd_0v95_AO: regulator-vdd-0v95-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-0v95-AO";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <950000>;
};
p3740_vdd_12v_sys: regulator-vdd-12v-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-12v-sys";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
};
p3740_vdd_1v05_AO: regulator-vdd-1v05-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-1v05-AO";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
};
p3740_vdd_1v0_sys: regulator-vdd-1v0-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v0-sys";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
};
p3740_vdd_1v1_sys: regulator-vdd-1v1-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v1-sys";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
};
p3740_vdd_1v8_AO: regulator-vdd-1v8-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-1v8-AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
p3740_vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v8-sys";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
p3740_vdd_2v5_sys: regulator-vdd-2v5-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-2v5-sys";
regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>;
};
p3740_vdd_2v8_sys: regulator-vdd-2v8-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-2v8-sys";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
p3740_vdd_3v3_AO: regulator-vdd-3v3-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-3v3-AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
p3740_vdd_3v7_AO: regulator-vdd-3v7-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-3v7-AO";
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
p3740_vdd_5v_sys: regulator-vdd-5v-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-5v-sys";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
};

View File

@@ -6,78 +6,68 @@
#include <dt-bindings/interrupt/tegra234-irq.h>
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
p3767-0000-fragment@0 {
target-path = "/";
bus@0 {
mmc@3400000 {
no-sdio;
no-mmc;
nvidia,cd-wakeup-capable;
nvidia,boot-detect-delay = <1000>;
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
};
__overlay__ {
#endif
bus@0 {
mmc@3400000 {
no-sdio;
no-mmc;
nvidia,cd-wakeup-capable;
nvidia,boot-detect-delay = <1000>;
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
};
gpu@17000000 {
status = "okay";
};
};
chosen {
nvidia,tegra-joint_xpu_rail;
};
opp-table-cluster0 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
#ifndef REMOVE_FRAGMENT_SYNTAX
gpu@17000000 {
status = "okay";
};
};
chosen {
nvidia,tegra-joint_xpu_rail;
};
opp-table-cluster0 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
#endif
};

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "tegra234-p3768-0000+p3767-0000.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "staging/tegra234-p3768-0000+p3767-0001.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "staging/tegra234-p3768-0000+p3767-0003.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "staging/tegra234-p3768-0000+p3767-0004.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -3,6 +3,5 @@
/dts-v1/;
#define REMOVE_FRAGMENT_SYNTAX 1
#include "tegra234-p3768-0000+p3767-0005.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -12,451 +12,440 @@
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
overlay-name = "Tegra234 P3768-0000+P3767-0000 Overlay";
fragment-t234-p3768-p3767@0 {
target-path = "/";
__overlay__ {
#endif
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
};
};
bus@0 {
actmon@d230000 {
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
/* UARTA, 40 pin header, Pin 8(TX), Pin 10(RX) */
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
status = "okay";
};
/* UARTE, M2.E connector */
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@31b0000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
/* SPI1, 40pin header, Pin 19(MOSI), Pin 21(MISO), Pin 23(CLK), Pin 24(CS) */
spi@3210000{
status = "okay";
spi@0 {
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
spi@1 {
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
};
/* SPI3, 40pin header, Pin 37(MOSI), Pin 22(MISO), Pin 13(CLK), Pin 18(CS) */
spi@3230000{
status = "okay";
spi@0 {
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
spi@1 {
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
};
padctl@3520000 {
ports {
usb2-0 {
port {
typec_p0: endpoint {
remote-endpoint = <&fusb_p0>;
};
};
};
};
};
i2c@c240000 {
status = "okay";
ina32211_1_40: ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_IN";
shunt-resistor-micro-ohms = <5000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_GPU_CV";
shunt-resistor-micro-ohms = <5000>;
};
channel@2 {
reg = <0x2>;
label = "VDD_SOC";
shunt-resistor-micro-ohms = <5000>;
};
};
fusb301@25 {
compatible = "onsemi,fusb301";
reg = <0x25>;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Z, 1) IRQ_TYPE_LEVEL_LOW>;
connector@0 {
port@0 {
fusb_p0: endpoint {
remote-endpoint = <&typec_p0>;
};
};
};
};
};
/* C1 - M.2 Key-E */
pcie@14100000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
phys = <&p2u_hsio_3>;
phy-names = "p2u-0";
};
/* C4 - M.2 Key-M */
pcie@14160000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
<&p2u_hsio_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
};
/* C8 - Ethernet */
pcie@140a0000 {
status = "okay";
num-lanes = <2>;
phys = <&p2u_gbe_2>, <&p2u_gbe_3>;
phy-names = "p2u-0", "p2u-1";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
vpcie3v3-supply = <&vdd_3v3_pcie>;
};
/* C7 - M.2 Key-M */
pcie@141e0000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
phys = <&p2u_gbe_0>, <&p2u_gbe_1>;
phy-names = "p2u-0", "p2u-1";
};
/* PWM1, 40pin header, pin 15 */
pwm@3280000 {
status = "okay";
};
/* PWM3, FAN */
pwm@32a0000 {
status = "okay";
};
/* PWM5, 40pin header, pin 33 */
pwm@32c0000 {
status = "okay";
};
/* PWM7, 40pin header, pin 32 */
pwm@32e0000 {
status = "okay";
};
serial@31d0000 {
current-speed = <115200>;
};
tachometer@39c0000 {
status = "okay";
upper-threshold = <0xfffff>;
lower-threshold = <0x0>;
};
hsp@3d00000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
nvidia,num-slices = <3>;
};
mttcan@c310000 {
status = "okay";
};
host1x@13e00000 {
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tegra_soc_hwpm {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
nvjpg@15380000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
};
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
};
dce@d800000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
tegra-hsp@b950000 {
status = "okay";
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
#endif
bus@0 {
actmon@d230000 {
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
/* UARTA, 40 pin header, Pin 8(TX), Pin 10(RX) */
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
status = "okay";
};
/* UARTE, M2.E connector */
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@31b0000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
/* SPI1, 40pin header, Pin 19(MOSI), Pin 21(MISO), Pin 23(CLK), Pin 24(CS) */
spi@3210000{
status = "okay";
spi@0 {
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
spi@1 {
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
};
/* SPI3, 40pin header, Pin 37(MOSI), Pin 22(MISO), Pin 13(CLK), Pin 18(CS) */
spi@3230000{
status = "okay";
spi@0 {
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
spi@1 {
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
};
padctl@3520000 {
ports {
usb2-0 {
port {
typec_p0: endpoint {
remote-endpoint = <&fusb_p0>;
};
};
};
};
};
i2c@c240000 {
status = "okay";
ina32211_1_40: ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_IN";
shunt-resistor-micro-ohms = <5000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_GPU_CV";
shunt-resistor-micro-ohms = <5000>;
};
channel@2 {
reg = <0x2>;
label = "VDD_SOC";
shunt-resistor-micro-ohms = <5000>;
};
};
fusb301@25 {
compatible = "onsemi,fusb301";
reg = <0x25>;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Z, 1) IRQ_TYPE_LEVEL_LOW>;
connector@0 {
port@0 {
fusb_p0: endpoint {
remote-endpoint = <&typec_p0>;
};
};
};
};
};
/* C1 - M.2 Key-E */
pcie@14100000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
phys = <&p2u_hsio_3>;
phy-names = "p2u-0";
};
/* C4 - M.2 Key-M */
pcie@14160000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
<&p2u_hsio_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
};
/* C8 - Ethernet */
pcie@140a0000 {
status = "okay";
num-lanes = <2>;
phys = <&p2u_gbe_2>, <&p2u_gbe_3>;
phy-names = "p2u-0", "p2u-1";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
vpcie3v3-supply = <&vdd_3v3_pcie>;
};
/* C7 - M.2 Key-M */
pcie@141e0000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
phys = <&p2u_gbe_0>, <&p2u_gbe_1>;
phy-names = "p2u-0", "p2u-1";
};
/* PWM1, 40pin header, pin 15 */
pwm@3280000 {
status = "okay";
};
/* PWM3, FAN */
pwm@32a0000 {
status = "okay";
};
/* PWM5, 40pin header, pin 33 */
pwm@32c0000 {
status = "okay";
};
/* PWM7, 40pin header, pin 32 */
pwm@32e0000 {
status = "okay";
};
serial@31d0000 {
current-speed = <115200>;
};
tachometer@39c0000 {
status = "okay";
upper-threshold = <0xfffff>;
lower-threshold = <0x0>;
};
hsp@3d00000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
nvidia,num-slices = <3>;
};
mttcan@c310000 {
status = "okay";
};
host1x@13e00000 {
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tegra_soc_hwpm {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
nvjpg@15380000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
};
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
};
dce@d800000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
tegra-hsp@b950000 {
status = "okay";
};
};

View File

@@ -2,44 +2,35 @@
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
#ifndef REMOVE_FRAGMENT_SYNTAX
fragment-t234-p3768-0000@0 {
target-path = "/";
__overlay__ {
#endif
bus@0 {
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901100 {
ports {
port@1 {
hdr40_snd_i2s_dap_ep: endpoint {
};
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901100 {
ports {
port@1 {
hdr40_snd_i2s_dap_ep: endpoint {
};
};
};
};
};
tegra_sound_graph: tegra_sound: sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson Orin NX APE";
hdr40_snd_link_i2s: nvidia-audio-card,dai-link@77 { };
};
#ifndef REMOVE_FRAGMENT_SYNTAX
};
};
tegra_sound_graph: tegra_sound: sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson Orin NX APE";
hdr40_snd_link_i2s: nvidia-audio-card,dai-link@77 { };
};
#endif
};