Compare commits

...

29 Commits

Author SHA1 Message Date
Yi-Wei Wang
b75727c664 t23x: dts: restructure soctherm sensors
Previously soctherm sensors were included in platform-level (cvm+cvb)
files. This change moves them to module-level files, since the settings
are module-specific.

Bug 4893772

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I3b52dbc6f3183ef18087921cc2782f46d3229fa0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3226551
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-10-09 21:54:21 -07:00
Vishwaroop A
1dd7612d8a dts: qspi: update parent clock and bus width
Add assigned clock parent and rate properties
in device tree for qspi and update the p3701 bus width
for qspi to 4 instead of 1.

Bug 4739710
Bug 4535595

Change-Id: I32cdc917af9ed6c4bbeb94e27d8b007ba704ca8b
Signed-off-by: Vishwaroop A <va@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3174161
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
2024-10-03 03:08:56 -07:00
Gautham Srinivasan
332e56ee15 t23x: overlay: display pin state for i2c and uart
In Jetson-IO, I2C and UART pins are configured by default,
and there is no option to disable or display them as enabled.
By adding the appropriate "nvidia,function" value, Jetson-IO
updates the "Configure header pins manually" section to show
the pin state, allowing the user to enable or disable these pins.

Also, add the input and tristate values so that the pin can be
enabled back to the right configuration.

Bug 3866629

Change-Id: I2c01ac7355259e4a3e0a10905699b5dfbbbaf177
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3219025
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-30 20:38:56 -07:00
Ninad Malwade
354519a4a5 t234: nv-platform: p3768: delete the suspend key
As per the Orin Nano Dev Kit schematic, GPIO_G.02 is not available
on this device family. It should not be used at all on Orin NX/Nano.

Orin NX/Nano uses GPIO_EE.04 as both a "power" button and a "suspend"
button.  However, we cannot have two gpio-keys mapped to the same
GPIO. Therefore delete the "suspend" key.

Bug 4868022

Change-Id: Ib027748800e271ecf95bf644a803289d69abda2c
Signed-off-by: Ninad Malwade <nmalwade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3219226
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-26 21:39:00 -07:00
Dara Stotland
968dd08eb9 arm64: tegra: Add thermal nodes to AGX Orin SKU8
One of the key differences between p3701-0000 and p3701-0008 is the
temperature range. Add this info for p3701-0008.

Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: Iafe1202a8e9197dcb20c07971e8067c9168bfb6c
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207087
(cherry picked from commit e8c48cf67c)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216040
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:27:16 -07:00
Brad Griffis
ae593efe21 t23x: nv-platform: remove redundant bpmp nodes
The tmp451 sensor definition has moved to the tegra234-p3701.dtsi file
and so it is common to all platforms using AGX Orin. Remove the
older definitions from nv-platform that are no longer needed.

Bug 4707773

Change-Id: I0053e3a08f4e6e6cf4f9ebe957925b283f18fdd5
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207122
(cherry picked from commit 01cbc20086)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216039
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:27:12 -07:00
Dara Stotland
f195b43a73 arm64: tegra: Move BPMP nodes to AGX Orin module
All SKUs of the p3701 module contain a temp sensor connected to the
BPMP I2C. Move the associated nodes from tegra234-p3701-0008.dtsi
to tegra234-p3701.dtsi. Add missing compatible.

Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I5ac5e654468dc2a6119127243aeacb217067c6b8
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207086
(cherry picked from commit 1586ba0480)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216038
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:27:09 -07:00
Dara Stotland
1dbd59336c arm64: tegra: Move padctl supply nodes to AGX Orin module
Some padctl supply nodes currently reside in board file, when they
should reside on module level. The nodes are part of module,
not board. Move these nodes to the correct AGX Orin
module file.

Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I7af97cc993d9561d1b05b7326e374ae50a724d05
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207085
(cherry picked from commit e0103b5f09)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216037
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:27:05 -07:00
Dara Stotland
db20300575 arm64: tegra: Move AGX Orin nodes to correct location
Some of the nodes inside the AGX Orin module file are in the
wrong location. In particular, the SD card interface and
two of the PCIe regulators in the module file should instead
reside in the board file. These components are not part of the
module. They are part of the carrier board. Move these
nodes to the correct location.

Fixes: cd42b26a527f ("arm64: tegra: Add regulators required for PCIe")
Fixes: d71b893a119d ("arm64: tegra: Add Tegra234 SDMMC1 device tree node")
Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I46aba99d96cc5d016b186c4df862db1f2b3d7a05
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207084
(cherry picked from commit 6920c55072)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216036
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:27:01 -07:00
Dara Stotland
4d2beebacd arm64: tegra: Combine IGX Orin board files
Current IGX Orin structure has both a top-level module+board
file as well as a board file. Most of the data in the board-file
is closely related to the module itself. The benefit of this
extra file is outweighed by the additional complexity. Merge
the board file into the module+board file for simplicity.

Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I99b4c3d85e7ce4b16945c35341fd483bfb291228
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207083
(cherry picked from commit b3e546aaf3)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216035
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:57 -07:00
Dara Stotland
9ea6381794 arm64: tegra: Combine AGX Orin board files
The current AGX Orin structure has both a top-level module+board
file as well as a board file. Most of the data in the board-file
is closely related to the module itself. The benefit of this
extra file is outweighed by the additional complexity. Merge
the board file into the module+board file for simplicity.

Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: Ic37a105bcf9d0bd72f73cb16c0721189bf8c4921
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207082
(cherry picked from commit 0666251418)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216034
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:53 -07:00
Dara Stotland
26e03e5de7 arm64: tegra: Add common nodes to AGX Orin module
The AGX Orin module boards contain common nodes that can
be moved to the included module dtsi. This eliminates
redundancy within the files and reduces lines of code.
Data from tegra234-p3701-0000 and tegra234-p3701-0008 that
is common is now in tegra234-p3701.dtsi.

Signed-off-by: Dara Stotland <dstotland@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I50984aab3390d65fa8fd3eb2766be2bb06d44bdf
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207081
(cherry picked from commit f382829e61)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216033
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:49 -07:00
Brad Griffis
aaa0ed3116 t23x: nv-platform: remove redundant p3767-ep
Patches have gone upstream to add p3767-ep support into the base dtb
files. Remove the nv-platform definitions since these are no longer
needed.

Bug 4707773

Change-Id: Ibfb6df91cb74814a084b23d6087f33caa0bfe922
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207121
(cherry picked from commit 9edb64d771)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216032
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-09-24 19:26:45 -07:00
Vedant Deshpande
f41d403b25 arm64: tegra: Add p3767 PCIe C4 EP details
Add implementation details for Orin NX/Nano PCIe EP on C4.

Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: Ie64897c6772ab00efc5099fa69e4a75eb78463df
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207080
(cherry picked from commit fae586695f)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216031
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:42 -07:00
Brad Griffis
2b1996eb05 t23x: nv-soc: remove pcie-ep nodes that are upstream
Most of the definition to pcie-ep@14160000 has been added to
tegra234.dtsi. Remove those pieces that are already part of
that file so we don't have redundant definitions.

Bug 4707773

Change-Id: I73d1c44f6e07bd16fda22256590218c4f1a6ed39
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207120
(cherry picked from commit 9e50a2a3fd)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216030
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:38 -07:00
Vedant Deshpande
4470ed7355 arm64: tegra: Add Tegra234 PCIe C4 EP definition
Add PCIe C4 EP controller definition in device tree for Tegra234
devices.

Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: Ib7d962389aafd2cc5eef4e5afaa2171c8009270c
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207079
(cherry picked from commit 9551f57a77)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216029
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:34 -07:00
Jon Hunter
fe482fee38 arm64: tegra: Correct location of power-sensors for IGX Orin
The power-sensors are located on the carrier board and not the
module board and so update the IGX Orin device-tree files to fix this.

Fixes: 9152ed09309d ("arm64: tegra: Add power-sensors for Tegra234 boards")
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: Ib7884b864beacc9599050e67ef50f0f1d1d95aa9
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207078
(cherry picked from commit bb72637742)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216028
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:31 -07:00
Brad Griffis
de8982e0de t23x: nv-platform: remove redundant hsuart nodes from p3768
The latest upstream files remove the need for some hsuart-related lines
in our nv-platform files for p3768. Remove these unneeded lines.

Bug 4707773

Change-Id: I48f96b0c68392986b59999ddc7f0eb0e79ca927f
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207119
(cherry picked from commit 2088c3255b)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216027
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:27 -07:00
Vedant Deshpande
68cc6a0b28 arm64: tegra: enable same UARTs for Orin NX/Nano
This patch ensures that Orin NX and Orin Nano enable an identical
set of serial ports. UARTA/UARTE will be enabled by adding
respective nodes to the board dtsi file.

Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I782d858f89a6691c35235165bf233e936b38d632
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207077
(cherry picked from commit 49e2df39c0)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216026
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:23 -07:00
Vedant Deshpande
be1ea5053f arm64: tegra: Add DMA properties for Tegra234 UARTA
Adding the missing dmas and dma-names properties which are required
for UARTA when using with the Tegra HSUART driver.

Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I3b952cf72b534e9478c2e679ab0f58b4d837bfaf
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207076
(cherry picked from commit 8fdf97141d)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216025
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:19 -07:00
Vedant Deshpande
6fb6a1dc2f arm64: tegra: Restructure Orin NX/Nano device tree
The Orin NX and Orin Nano boards share a common carrier board and the
module boards for both platforms are very similar. Therefore,
restructure the Orin NX/Nano device-tree source files to adhere to a
simple hierarchical format. This will help make clear where changes
should go, and eliminates redundancy within the files.

Previously the carrier board file was independent. However, given
that it is so tightly coupled with the module design, it will be
more practical to combine files together for a simpler layout.

Following changes are made to restructure the device tree source files:
1) Change include hierarchy. Top-level dts includes board dtsi.
   Board dtsi includes module dtsi. Module dtsi includes SoC dtsi.
2) Data from the top level dts file that is common to both Orin NX
   and Orin Nano is in tegra234-p3768-0000+p3767.dtsi.
3) Only data that is unique to NX/Nano is present in the top-level dts.

Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

Change-Id: I45d73a33db0c654b7d98fdfa456c52f7b024a26a
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207075
(cherry picked from commit c1afccabc1)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216024
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:15 -07:00
Brad Griffis
fc394bbcfa t23x: nv-public: update spacing to match upstream
An earlier patch did not match the spacing used upstream. Fix
the spacing to maintain consistency such that patches can be
applied cleanly.

Bug 4152207

Change-Id: I12254a939f9b812b125e17c525a5b527e0067ef9
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207072
(cherry picked from commit 6f5fd618d3)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216023
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:12 -07:00
Brad Griffis
435cef0dc5 t23x: nv-soc: Enable USB remote wakeup support
Add SC7 wake support:
- wake 76 for SS port 0
- wake 77 for SS port 1
- wake 78 for SS port 2 and SS port 3
- wake 79 for USB2 port 0
- wake 80 for USB2 port 1
- wake 81 for USB2 port 2
- wake 82 for USB2 port 3

Bug 4166189

Change-Id: I16bf1215178f0b7bc0486794a42f169fc6185315
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3217045
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:08 -07:00
Brad Griffis
e0688a1de6 Revert "[UPSTREAM PENDING] soc: tegra234: Enable USB remote wakeup support"
This reverts commit ac9e946992.

Reason for revert: Patch is not upstream.

Bug 4166189

Change-Id: Id30bb9625ccfd822e9f49145225c7f1903d2de86
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3206861
(cherry picked from commit be133b5e99)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216022
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-09-24 19:26:04 -07:00
Brad Griffis
a10f6254a5 t23x: dts: fix up previous patch to align with upstream
Clean up errors in this patch:

7670c8e ("UPSTREAM: arm64: tegra: Add audio support for IGX Orin")

It added nodes that were not part of the upstream patch.  Remove
those nodes since they are not present upstream.

Bug 4115300

Change-Id: Ieab09a185b0ea64e6dc71b90cfca948fb29ca68f
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3207071
(cherry picked from commit 3bdc809ebc)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3216021
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-24 19:26:00 -07:00
Laxman Dewangan
6bcdd520f2 t23x: nv-platforms: Remove INA device node
The INA device nodes are added in the base DTB
files which is integrated from mainline. Hence,
it is not required to add the same devices frm
override base DTB files.

Remove the duplicate entries.

Bug 4037899
Bug 4707773

Change-Id: I60e13b6daf0dec819c4ced4add019097f4735c66
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3036336
(cherry picked from commit 46c1a0c49d)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172826
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-09-24 19:25:56 -07:00
Jon Hunter
cb9f5b0c38 arm64: tegra: Add power-sensors for Tegra234 boards
Populate the ina219 and ina3221 power-sensors for the various Tegra234
boards. These sensors are located on the Tegra234 module boards and the
configuration of some sensors is common across the different Tegra234
modules. Therefore, add any common sensor configurations to appropriate
device tree source file so it can be re-used across modules.

Bug 4707773

Change-Id: I3a1244497a27f6ecb2364bcb9112522a22dbae60
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3036335
(cherry picked from commit 9d60e5aaa8)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172825
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-09-24 19:25:52 -07:00
ruppala
8d0b857c8f nv-platform: Add PEX WAKE GPIO interrupt for C1 controller
Add PEX WAKE GPIO interrupt in PCIe controller-1 device tree node
to support PEX WAKE for WiFi.

Bug 4701216

Change-Id: I5132caaef02f031696e39294e20b5ea9a91e8449
Signed-off-by: ruppala <ruppala@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3210119
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-09-09 15:23:56 -07:00
Jerry Chang
0dc0f4c2a3 overlay: camera: remove deprecated properties
it's now using upstream ICC API, devm_of_icc_get().
remove below properties since they are deprecated.
- num_csi_lanes
- max_lane_speed
- max_pixel_rate
- min_bits_per_pixel
- vi_peak_byte_per_pixel
- vi_bw_margin_pct
- isp_peak_byte_per_pixel
- isp_bw_margin_pct

Bug 4712696

Change-Id: I387290e02e91d9ad2cbb7b25903e1445b3d73c2b
Signed-off-by: Jerry Chang <jerchang@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3162430
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-09-09 04:39:19 -07:00
45 changed files with 770 additions and 1622 deletions

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2017-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/clock/tegra234-clock.h> #include <dt-bindings/clock/tegra234-clock.h>
@@ -339,41 +339,6 @@
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 general guideline for naming badge_info contains 3 parts, and is as follows,

View File

@@ -2,63 +2,12 @@
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-p3701-0000-prod-overlay.dtsi" #include "tegra234-p3701-0000-prod-overlay.dtsi"
#include "nv-soc/tegra234-soc-thermal.dtsi"
#include "nv-soc/tegra234-soc-thermal-slowdown-cluster.dtsi"
#include "nv-soc/tegra234-soc-thermal-shutdown.dtsi"
#include "nv-soc/tegra234-soc-thermal-trip-event.dtsi"
/ { / {
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
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>;
ti,summation-disable;
};
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
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";
};
};
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
};
};
bpmp { bpmp {
i2c { i2c {
vrs@3c { vrs@3c {
@@ -73,11 +22,7 @@
}; };
tegra_tmp451: thermal-sensor@4c { tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>; #thermal-sensor-cells = <1>;
status = "okay";
}; };
vrs11_1@20 { vrs11_1@20 {

View File

@@ -2,10 +2,6 @@
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi" #include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-thermal.dtsi"
#include "nv-soc/tegra234-soc-thermal-slowdown-cluster.dtsi"
#include "nv-soc/tegra234-soc-thermal-shutdown.dtsi"
#include "nv-soc/tegra234-soc-thermal-trip-event.dtsi"
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi" #include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
#include "nv-soc/tegra234-soc-camera.dtsi" #include "nv-soc/tegra234-soc-camera.dtsi"
#include "tegra234-p3737-0000.dtsi" #include "tegra234-p3737-0000.dtsi"
@@ -36,40 +32,6 @@
status = "okay"; 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 { bus@0 {
smmu_test { smmu_test {
compatible = "nvidia,smmu_test"; compatible = "nvidia,smmu_test";

View File

@@ -2,10 +2,6 @@
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi" #include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-thermal.dtsi"
#include "nv-soc/tegra234-soc-thermal-slowdown-cluster.dtsi"
#include "nv-soc/tegra234-soc-thermal-shutdown.dtsi"
#include "nv-soc/tegra234-soc-thermal-trip-event.dtsi"
#include "nv-soc/tegra234-soc-camera.dtsi" #include "nv-soc/tegra234-soc-camera.dtsi"
#include "tegra234-camera-p3785.dtsi" #include "tegra234-camera-p3785.dtsi"
#include "tegra234-p3740-0002.dtsi" #include "tegra234-p3740-0002.dtsi"
@@ -21,12 +17,6 @@
bootargs = "console=ttyTCU0,115200n8"; bootargs = "console=ttyTCU0,115200n8";
}; };
bpmp {
thermal {
status = "okay";
};
};
cpus { cpus {
idle-states { idle-states {
c7 { c7 {
@@ -45,8 +35,6 @@
thermal-zones { thermal-zones {
cpu-thermal { cpu-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -55,8 +43,6 @@
}; };
cv0-thermal { cv0-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -65,8 +51,6 @@
}; };
cv1-thermal { cv1-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -75,8 +59,6 @@
}; };
cv2-thermal { cv2-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -85,8 +67,6 @@
}; };
gpu-thermal { gpu-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -95,8 +75,6 @@
}; };
soc0-thermal { soc0-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -105,8 +83,6 @@
}; };
soc1-thermal { soc1-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
@@ -115,18 +91,12 @@
}; };
soc2-thermal { soc2-thermal {
status = "okay";
cooling-maps { cooling-maps {
map-hot-surface-alert { map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>; cooling-device = <&hot_surface_alert 0 0>;
}; };
}; };
}; };
tj-thermal {
status = "okay";
};
}; };
bus@0 { bus@0 {

View File

@@ -6,6 +6,10 @@
/ { / {
bus@0 { bus@0 {
i2c@31c0000 { i2c@31c0000 {
audio-codec@1c {
#sound-dai-cells = <1>;
};
typec: stusb1600@28 { typec: stusb1600@28 {
status = "okay"; status = "okay";
compatible = "st,stusb1600"; compatible = "st,stusb1600";
@@ -31,32 +35,7 @@
}; };
i2c@c250000 { i2c@c250000 {
ina3221@41 { power-sensor@44 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
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"; label = "CVB_ATX_12V_8P";
}; };

View File

@@ -4,6 +4,10 @@
#include <dt-bindings/gpio/tegra234-gpio.h> #include <dt-bindings/gpio/tegra234-gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt/tegra234-irq.h> #include <dt-bindings/interrupt/tegra234-irq.h>
#include "nv-soc/tegra234-soc-thermal.dtsi"
#include "nv-soc/tegra234-soc-thermal-slowdown-corepair.dtsi"
#include "nv-soc/tegra234-soc-thermal-shutdown.dtsi"
#include "nv-soc/tegra234-soc-thermal-trip-event.dtsi"
/ { / {
bus@0 { bus@0 {

View File

@@ -2,10 +2,6 @@
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi" #include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-thermal.dtsi"
#include "nv-soc/tegra234-soc-thermal-slowdown-corepair.dtsi"
#include "nv-soc/tegra234-soc-thermal-shutdown.dtsi"
#include "nv-soc/tegra234-soc-thermal-trip-event.dtsi"
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi" #include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
#include "tegra234-p3768-0000.dtsi" #include "tegra234-p3768-0000.dtsi"
#include "tegra234-p3767-0000.dtsi" #include "tegra234-p3767-0000.dtsi"
@@ -103,18 +99,6 @@
}; };
}; };
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3180000 { i2c@3180000 {
status = "okay"; status = "okay";
}; };
@@ -192,27 +176,6 @@
i2c@c240000 { i2c@c240000 {
status = "okay"; status = "okay";
ina32211_1_40: ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
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 { fusb301@25 {
compatible = "onsemi,fusb301"; compatible = "onsemi,fusb301";
reg = <0x25>; reg = <0x25>;
@@ -231,18 +194,6 @@
}; };
}; };
pcie-ep@14160000 {/* C4 - End Point */
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
<&p2u_hsio_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
reset-gpios = <&gpio
TEGRA234_MAIN_GPIO(L, 1)
GPIO_ACTIVE_LOW>;
nvidia,refclk-select-gpios = <&gpio_aon
TEGRA234_AON_GPIO(AA, 4)
GPIO_ACTIVE_HIGH>;
};
/* PWM1, 40pin header, pin 15 */ /* PWM1, 40pin header, pin 15 */
pwm@3280000 { pwm@3280000 {
status = "okay"; status = "okay";
@@ -359,6 +310,10 @@
status = "okay"; status = "okay";
}; };
}; };
pcie@14100000 {
nvidia,pex-wake-gpios = <&gpio TEGRA234_MAIN_GPIO(L, 2) IRQ_TYPE_LEVEL_LOW>;
};
}; };
cpus { cpus {
@@ -377,40 +332,6 @@
status = "okay"; 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 { dce@d800000 {
status = "okay"; status = "okay";
}; };
@@ -425,3 +346,5 @@
status = "okay"; status = "okay";
}; };
}; };
/delete-node/ &{/gpio-keys/key-suspend};

View File

@@ -37,6 +37,26 @@
}; };
bus@0 { bus@0 {
usb@3610000 {
/delete-property/ interrupts;
interrupts-extended = <&gic GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
<&gic GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 76 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 77 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 78 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 79 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 80 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 81 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 82 IRQ_TYPE_LEVEL_HIGH>;
/*
wake0, wake1, wake2 are for USB3.0 ports
wake3, wake4, wake5, wake6 are for USB2.0 ports
*/
interrupt-names = "xhci", "mbox",
"wake0", "wake1", "wake2", "wake3",
"wake4", "wake5", "wake6";
};
pcie@140a0000 { pcie@140a0000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE8>; iommus = <&smmu_niso1 TEGRA234_SID_PCIE8>;
}; };
@@ -420,6 +440,10 @@
dma-names = "rx", "tx"; dma-names = "rx", "tx";
dma-coherent; dma-coherent;
iommus = <&smmu_niso1 TEGRA234_SID_QSPI0>; iommus = <&smmu_niso1 TEGRA234_SID_QSPI0>;
assigned-clocks = <&bpmp TEGRA234_CLK_QSPI0_2X_PM>,
<&bpmp TEGRA234_CLK_QSPI0_PM>;
assigned-clock-rates = <199999999 99999999>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLC>;
}; };
hardware-timestamp@3aa0000 { hardware-timestamp@3aa0000 {

View File

@@ -857,39 +857,12 @@
}; };
pcie-ep@14160000 { pcie-ep@14160000 {
compatible = "nvidia,tegra234-pcie-ep";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PCIEX4BB>;
reg = <0x00 0x14160000 0x0 0x00020000 /* appl registers (128K) */
0x00 0x36040000 0x0 0x00040000 /* iATU_DMA reg space (256K) */
0x00 0x36080000 0x0 0x00040000 /* DBI space (256K) */
0x21 0x40000000 0x3 0x00000000>; /* Address Space (12G) */
reg-names = "appl", "atu_dma", "dbi", "addr_space";
num-lanes = <4>;
clocks = <&bpmp TEGRA234_CLK_PEX0_C4_CORE>;
clock-names = "core";
resets = <&bpmp TEGRA234_RESET_PEX0_CORE_4_APB>,
<&bpmp TEGRA234_RESET_PEX0_CORE_4>;
reset-names = "apb", "core";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pex_rst_c4_in_state>; pinctrl-0 = <&pex_rst_c4_in_state>;
interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; /* controller interrupt */
interrupt-names = "intr";
nvidia,bpmp = <&bpmp 4>;
nvidia,enable-ext-refclk;
nvidia,aspm-cmrt-us = <60>;
nvidia,aspm-pwr-on-t-us = <20>;
nvidia,aspm-l0s-entrance-latency-us = <3>;
nvidia,host1x = <&host1x>; nvidia,host1x = <&host1x>;
num-ib-windows = <2>; num-ib-windows = <2>;
num-ob-windows = <8>; num-ob-windows = <8>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_PCIE4R &emc>,
<&mc TEGRA234_MEMORY_CLIENT_PCIE4W &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso0 TEGRA234_SID_PCIE4>;
dma-coherent;
status = "disabled";
}; };
pcie-ep@141a0000 { pcie-ep@141a0000 {

View File

@@ -6,46 +6,64 @@
/ { / {
thermal-zones { thermal-zones {
cpu-thermal { cpu-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
gpu-thermal { gpu-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
cv0-thermal { cv0-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
cv1-thermal { cv1-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
cv2-thermal { cv2-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
soc0-thermal { soc0-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
soc1-thermal { soc1-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
soc2-thermal { soc2-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };
tj-thermal { tj-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>; polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
}; };

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2018-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ { / {
fragment-camera@0 { fragment-camera@0 {
@@ -819,40 +819,7 @@
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <2>;
max_lane_speed = <15000000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2017-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ { / {
fragment-camera@0 { fragment-camera@0 {
@@ -210,42 +210,6 @@
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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
* Set this to the highest pix_clk_hz out of all available modes.
*
* 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 = <3>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <800000>;
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 general guideline for naming badge_info contains 3 parts, and is as follows,

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2015-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2015-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ { / {
fragment-camera@0 { fragment-camera@0 {
@@ -63,42 +63,6 @@
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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
* Set this to the highest pix_clk_hz out of all available modes.
*
* 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 = <12>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <160000>;
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 general guideline for naming badge_info contains 3 parts, and is as follows,

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2016-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ { / {
fragment-camera@0 { fragment-camera@0 {
@@ -402,40 +402,6 @@
__overlay__ { __overlay__ {
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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>;
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 general guideline for naming badge_info contains 3 parts, and is as follows,

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2017-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ { / {
fragment-camera@0 { fragment-camera@0 {
@@ -712,41 +712,7 @@
__overlay__ { __overlay__ {
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <8>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -278,40 +278,6 @@
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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>;
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 general guideline for naming badge_info contains 3 parts, and is as follows,

View File

@@ -1391,40 +1391,7 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <12>;
max_lane_speed = <15000000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -1391,40 +1391,7 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <12>;
max_lane_speed = <15000000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -684,41 +684,7 @@
tcp: tegra-camera-platform { tcp: tegra-camera-platform {
compatible = "nvidia, 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 = <240000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2021-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/* /*
* Device-tree overlay for tegra234-p3737-0000-p3701-0000 40-pin * Device-tree overlay for tegra234-p3737-0000-p3701-0000 40-pin
* Expansion Header. * Expansion Header.
@@ -30,9 +30,15 @@
}; };
hdr40-pin8 { hdr40-pin8 {
nvidia,pins = "uart1_tx_pr2"; nvidia,pins = "uart1_tx_pr2";
nvidia,function = "uarta";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
}; };
hdr40-pin10 { hdr40-pin10 {
nvidia,pins = "uart1_rx_pr3"; nvidia,pins = "uart1_rx_pr3";
nvidia,function = "uarta";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin11 { hdr40-pin11 {
nvidia,pins = "uart1_rts_pr4"; nvidia,pins = "uart1_rts_pr4";
@@ -145,10 +151,16 @@
hdr40-pin3 { hdr40-pin3 {
nvidia,pins = "gen8_i2c_scl_pdd1"; nvidia,pins = "gen8_i2c_scl_pdd1";
nvidia,pin-label = "i2c8"; nvidia,pin-label = "i2c8";
nvidia,function = "i2c8";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin5 { hdr40-pin5 {
nvidia,pins = "gen8_i2c_sda_pdd2"; nvidia,pins = "gen8_i2c_sda_pdd2";
nvidia,pin-label = "i2c8"; nvidia,pin-label = "i2c8";
nvidia,function = "i2c8";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin16a { hdr40-pin16a {
nvidia,pins = "can1_en_pbb1"; nvidia,pins = "can1_en_pbb1";
@@ -166,9 +178,15 @@
}; };
hdr40-pin27 { hdr40-pin27 {
nvidia,pins = "gen2_i2c_sda_pdd0"; nvidia,pins = "gen2_i2c_sda_pdd0";
nvidia,function = "i2c2";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin28 { hdr40-pin28 {
nvidia,pins = "gen2_i2c_scl_pcc7"; nvidia,pins = "gen2_i2c_scl_pcc7";
nvidia,function = "i2c2";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin29 { hdr40-pin29 {
nvidia,pins = "can0_din_paa1"; nvidia,pins = "can0_din_paa1";

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/* /*
* Jetson Device-tree overlay for Camera Dual-IMX274 on t23x platforms * Jetson Device-tree overlay for Camera Dual-IMX274 on t23x platforms
* *
@@ -316,15 +316,6 @@
ids = "LPRD-dual-imx274-002"; ids = "LPRD-dual-imx274-002";
sw-modules = "kernel"; sw-modules = "kernel";
}; };
__overlay__ {
num_csi_lanes = <8>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
};
}; };
/* pca9646 i2c mux */ /* pca9646 i2c mux */
fragment@27 { fragment@27 {

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2017-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/; /dts-v1/;
/plugin/; /plugin/;
@@ -41,14 +41,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform"; compatible = "nvidia, tegra-camera-platform";
num_csi_lanes = <3>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <800000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
modules { modules {
status = "okay"; status = "okay";

View File

@@ -1,5 +1,5 @@
/* SPDX-License-Identifier: GPL-2.0 */ /* SPDX-License-Identifier: GPL-2.0 */
/* SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. */ /* SPDX-FileCopyrightText: Copyright (c) 2017-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. */
/dts-v1/; /dts-v1/;
/plugin/; /plugin/;
@@ -1194,11 +1194,6 @@
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform"; compatible = "nvidia, tegra-camera-platform";
num_csi_lanes = <12>;
max_lane_speed = <2500000>;
min_bits_per_pixel = <16>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <67>;
modules { modules {
cam_module0: module0 { cam_module0: module0 {

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/* /*
* Jetson Device-tree overlay for Camera IMX185 on t23x platforms * Jetson Device-tree overlay for Camera IMX185 on t23x platforms
* *
@@ -178,15 +178,6 @@
ids = "LPRD-002001", "LPRD-002", "LPRD-001"; ids = "LPRD-002001", "LPRD-002", "LPRD-001";
sw-modules = "kernel"; sw-modules = "kernel";
}; };
__overlay__ {
num_csi_lanes = <4>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
};
}; };
/* pca9646 i2c mux */ /* pca9646 i2c mux */
fragment@30 { fragment@30 {

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. // SPDX-FileCopyrightText: Copyright (c) 2021-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/* /*
* Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. * Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* *
@@ -36,9 +36,15 @@
}; };
hdr40-pin8 { hdr40-pin8 {
nvidia,pins = "uart1_tx_pr2"; nvidia,pins = "uart1_tx_pr2";
nvidia,function = "uarta";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
}; };
hdr40-pin10 { hdr40-pin10 {
nvidia,pins = "uart1_rx_pr3"; nvidia,pins = "uart1_rx_pr3";
nvidia,function = "uarta";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin11 { hdr40-pin11 {
nvidia,pins = "uart1_rts_pr4"; nvidia,pins = "uart1_rts_pr4";
@@ -206,16 +212,28 @@
hdr40-pin3 { hdr40-pin3 {
nvidia,pins = "gen8_i2c_sda_pdd2"; nvidia,pins = "gen8_i2c_sda_pdd2";
nvidia,pin-label = "i2c8"; nvidia,pin-label = "i2c8";
nvidia,function = "i2c8";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin5 { hdr40-pin5 {
nvidia,pins = "gen8_i2c_scl_pdd1"; nvidia,pins = "gen8_i2c_scl_pdd1";
nvidia,pin-label = "i2c8"; nvidia,pin-label = "i2c8";
nvidia,function = "i2c8";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin27 { hdr40-pin27 {
nvidia,pins = "gen2_i2c_sda_pdd0"; nvidia,pins = "gen2_i2c_sda_pdd0";
nvidia,function = "i2c2";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
hdr40-pin28 { hdr40-pin28 {
nvidia,pins = "gen2_i2c_scl_pcc7"; nvidia,pins = "gen2_i2c_scl_pcc7";
nvidia,function = "i2c2";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
}; };
}; };
}; };

View File

@@ -37,41 +37,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -37,41 +37,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -46,41 +46,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -36,41 +36,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -36,41 +36,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -43,41 +43,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -43,41 +43,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -50,41 +50,6 @@
}; };
tegra-camera-platform { tegra-camera-platform {
compatible = "nvidia, 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 = <7500000>;
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 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 * The first part is the camera_board_id for the module; if the module is in a FFD

View File

@@ -1,146 +1,11 @@
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
#include "tegra234-p3701.dtsi" #include "tegra234-p3701.dtsi"
/ { / {
model = "NVIDIA Jetson AGX Orin"; model = "NVIDIA Jetson AGX Orin";
compatible = "nvidia,p3701-0000", "nvidia,tegra234"; compatible = "nvidia,p3701-0000", "nvidia,tegra234";
bus@0 {
i2c@3160000 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
label = "module";
vcc-supply = <&vdd_1v8_hs>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
spi@3270000 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <102000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
mmc@3400000 {
status = "okay";
bus-width = <4>;
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
disable-wp;
};
mmc@3460000 {
status = "okay";
bus-width = <8>;
non-removable;
};
padctl@3520000 {
vclamp-usb-supply = <&vdd_1v8_ao>;
avdd-usb-supply = <&vdd_3v3_ao>;
ports {
usb2-0 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-1 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-2 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
vbus-supply = <&vdd_5v0_sys>;
};
};
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
vdd_5v0_sys: regulator-vdd-5v0-sys {
compatible = "regulator-fixed";
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8_ls: regulator-vdd-1v8-ls {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_hs: regulator-vdd-1v8-hs {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_ao: regulator-vdd-1v8-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_ao: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_3v3_pcie: regulator-vdd-3v3-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_PCIE";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
vdd_12v_pcie: regulator-vdd-12v-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_12V_PCIE";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
regulator-boot-on;
};
thermal-zones { thermal-zones {
tj-thermal { tj-thermal {
polling-delay = <1000>; polling-delay = <1000>;

View File

@@ -1,112 +1,29 @@
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
#include "tegra234-p3701.dtsi" #include "tegra234-p3701.dtsi"
/ { / {
compatible = "nvidia,p3701-0008", "nvidia,tegra234"; compatible = "nvidia,p3701-0008", "nvidia,tegra234";
bus@0 { thermal-zones {
i2c@3160000 { tj-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
status = "okay"; status = "okay";
eeprom@50 { trips {
compatible = "atmel,24c02"; tj_trip_active0: active-0 {
reg = <0x50>; temperature = <85000>;
label = "module"; hysteresis = <4000>;
vcc-supply = <&vdd_1v8_hs>; type = "active";
address-width = <8>; };
pagesize = <8>;
size = <256>; tj_trip_active1: active-1 {
read-only; temperature = <105000>;
hysteresis = <4000>;
type = "active";
};
}; };
}; };
spi@3270000 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <102000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
mmc@3460000 {
status = "okay";
bus-width = <8>;
non-removable;
};
i2c@c240000 {
status = "okay";
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
bpmp {
i2c {
status = "okay";
thermal-sensor@4c {
status = "okay";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
};
};
thermal {
status = "okay";
};
};
vdd_1v8_ao: regulator-vdd-1v8-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_hs: regulator-vdd-1v8-hs {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_ls: regulator-vdd-1v8-ls {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_ao: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
regulator-name = "vdd-AO-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_5v0_sys: regulator-vdd-5v0-sys {
compatible = "regulator-fixed";
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
}; };
}; };

View File

@@ -1,5 +1,7 @@
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
/ { / {
compatible = "nvidia,p3701", "nvidia,tegra234"; compatible = "nvidia,p3701", "nvidia,tegra234";
@@ -44,5 +46,181 @@
status = "okay"; status = "okay";
}; };
}; };
i2c@3160000 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
label = "module";
vcc-supply = <&vdd_1v8_hs>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
spi@3270000 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <102000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
mmc@3460000 {
status = "okay";
bus-width = <8>;
non-removable;
};
padctl@3520000 {
vclamp-usb-supply = <&vdd_1v8_ao>;
avdd-usb-supply = <&vdd_3v3_ao>;
ports {
usb2-0 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-1 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-2 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
vbus-supply = <&vdd_5v0_sys>;
};
};
};
i2c@c240000 {
status = "okay";
power-sensor@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
input@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
input@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
ti,summation-disable;
};
};
power-sensor@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
status = "disabled";
};
input@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
input@2 {
reg = <0x2>;
status = "disabled";
};
};
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
bpmp {
i2c {
status = "okay";
thermal-sensor@4c {
compatible = "ti,tmp451";
status = "okay";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
};
};
thermal {
status = "okay";
};
};
vdd_1v8_ao: regulator-vdd-1v8-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_hs: regulator-vdd-1v8-hs {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_ls: regulator-vdd-1v8-ls {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_ao: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_5v0_sys: regulator-vdd-5v0-sys {
compatible = "regulator-fixed";
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
}; };
}; };

View File

@@ -3,9 +3,9 @@
#include <dt-bindings/input/linux-event-codes.h> #include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h> #include <dt-bindings/input/gpio-keys.h>
#include <dt-bindings/sound/rt5640.h>
#include "tegra234-p3701-0000.dtsi" #include "tegra234-p3701-0000.dtsi"
#include "tegra234-p3737-0000.dtsi"
/ { / {
model = "NVIDIA Jetson AGX Orin Developer Kit"; model = "NVIDIA Jetson AGX Orin Developer Kit";
@@ -22,23 +22,97 @@
}; };
bus@0 { bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901000 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
};
};
serial@3100000 { serial@3100000 {
compatible = "nvidia,tegra194-hsuart"; compatible = "nvidia,tegra194-hsuart";
reset-names = "serial"; reset-names = "serial";
status = "okay"; status = "okay";
}; };
i2c@3160000 {
status = "okay";
eeprom@56 {
compatible = "atmel,24c02";
reg = <0x56>;
label = "system";
vcc-supply = <&vdd_1v8_sys>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
serial@31d0000 { serial@31d0000 {
current-speed = <115200>; current-speed = <115200>;
status = "okay"; status = "okay";
}; };
i2c@31e0000 {
status = "okay";
audio-codec@1c {
compatible = "realtek,rt5640";
reg = <0x1c>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(AC, 5) GPIO_ACTIVE_HIGH>;
clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "mclk";
realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>;
realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>;
realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>;
sound-name-prefix = "CVB-RT";
port {
rt5640_ep: endpoint {
remote-endpoint = <&i2s1_dap>;
mclk-fs = <256>;
};
};
};
};
pwm@3280000 {
status = "okay";
};
pwm@32a0000 { pwm@32a0000 {
assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>; assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>; assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
status = "okay"; status = "okay";
}; };
pwm@32c0000 {
status = "okay";
};
pwm@32f0000 {
status = "okay";
};
mmc@3400000 {
status = "okay";
bus-width = <4>;
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
disable-wp;
};
hda@3510000 { hda@3510000 {
nvidia,model = "NVIDIA Jetson AGX Orin HDA"; nvidia,model = "NVIDIA Jetson AGX Orin HDA";
status = "okay"; status = "okay";
@@ -90,6 +164,7 @@
mode = "otg"; mode = "otg";
usb-role-switch; usb-role-switch;
status = "okay"; status = "okay";
port { port {
hs_typec_p1: endpoint { hs_typec_p1: endpoint {
remote-endpoint = <&hs_ucsi_ccg_p1>; remote-endpoint = <&hs_ucsi_ccg_p1>;
@@ -100,6 +175,7 @@
usb2-1 { usb2-1 {
mode = "host"; mode = "host";
status = "okay"; status = "okay";
port { port {
hs_typec_p0: endpoint { hs_typec_p0: endpoint {
remote-endpoint = <&hs_ucsi_ccg_p0>; remote-endpoint = <&hs_ucsi_ccg_p0>;
@@ -120,6 +196,7 @@
usb3-0 { usb3-0 {
nvidia,usb2-companion = <1>; nvidia,usb2-companion = <1>;
status = "okay"; status = "okay";
port { port {
ss_typec_p0: endpoint { ss_typec_p0: endpoint {
remote-endpoint = <&ss_ucsi_ccg_p0>; remote-endpoint = <&ss_ucsi_ccg_p0>;
@@ -130,6 +207,7 @@
usb3-1 { usb3-1 {
nvidia,usb2-companion = <0>; nvidia,usb2-companion = <0>;
status = "okay"; status = "okay";
port { port {
ss_typec_p1: endpoint { ss_typec_p1: endpoint {
remote-endpoint = <&ss_ucsi_ccg_p1>; remote-endpoint = <&ss_ucsi_ccg_p1>;
@@ -211,6 +289,7 @@
port@0 { port@0 {
reg = <0>; reg = <0>;
hs_ucsi_ccg_p0: endpoint { hs_ucsi_ccg_p0: endpoint {
remote-endpoint = <&hs_typec_p0>; remote-endpoint = <&hs_typec_p0>;
}; };
@@ -218,6 +297,7 @@
port@1 { port@1 {
reg = <1>; reg = <1>;
ss_ucsi_ccg_p0: endpoint { ss_ucsi_ccg_p0: endpoint {
remote-endpoint = <&ss_typec_p0>; remote-endpoint = <&ss_typec_p0>;
}; };
@@ -237,6 +317,7 @@
port@0 { port@0 {
reg = <0>; reg = <0>;
hs_ucsi_ccg_p1: endpoint { hs_ucsi_ccg_p1: endpoint {
remote-endpoint = <&hs_typec_p1>; remote-endpoint = <&hs_typec_p1>;
}; };
@@ -244,6 +325,7 @@
port@1 { port@1 {
reg = <1>; reg = <1>;
ss_ucsi_ccg_p1: endpoint { ss_ucsi_ccg_p1: endpoint {
remote-endpoint = <&ss_typec_p1>; remote-endpoint = <&ss_typec_p1>;
}; };
@@ -333,8 +415,11 @@
}; };
}; };
pwm-fan { fan: pwm-fan {
compatible = "pwm-fan";
cooling-levels = <66 215 255>; cooling-levels = <66 215 255>;
pwms = <&pwm3 0 45334>;
#cooling-cells = <2>;
}; };
serial { serial {
@@ -436,4 +521,31 @@
}; };
}; };
}; };
vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_SYS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_pcie: regulator-vdd-3v3-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_PCIE";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
vdd_12v_pcie: regulator-vdd-12v-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_12V_PCIE";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
regulator-boot-on;
};
}; };

View File

@@ -1,90 +0,0 @@
// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/sound/rt5640.h>
/ {
compatible = "nvidia,p3737-0000";
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901000 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
};
};
i2c@3160000 {
status = "okay";
eeprom@56 {
compatible = "atmel,24c02";
reg = <0x56>;
label = "system";
vcc-supply = <&vdd_1v8_sys>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
i2c@31e0000 {
status = "okay";
audio-codec@1c {
compatible = "realtek,rt5640";
reg = <0x1c>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(AC, 5) GPIO_ACTIVE_HIGH>;
clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "mclk";
realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>;
realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>;
realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>;
sound-name-prefix = "CVB-RT";
port {
rt5640_ep: endpoint {
remote-endpoint = <&i2s1_dap>;
mclk-fs = <256>;
};
};
};
};
pwm@3280000 {
status = "okay";
};
pwm@32c0000 {
status = "okay";
};
pwm@32f0000 {
status = "okay";
};
};
fan: pwm-fan {
compatible = "pwm-fan";
pwms = <&pwm3 0 45334>;
#cooling-cells = <2>;
};
vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_SYS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
};

View File

@@ -3,8 +3,8 @@
#include <dt-bindings/input/linux-event-codes.h> #include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h> #include <dt-bindings/input/gpio-keys.h>
#include <dt-bindings/sound/rt5640.h>
#include "tegra234-p3701-0008.dtsi" #include "tegra234-p3701-0008.dtsi"
#include "tegra234-p3740-0002.dtsi"
/ { / {
model = "NVIDIA IGX Orin Development Kit"; model = "NVIDIA IGX Orin Development Kit";
@@ -20,6 +20,32 @@
}; };
bus@0 { bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901300 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
i2s@2901500 {
ports {
port@1 {
endpoint {
bitclock-master;
frame-master;
};
};
};
};
};
};
serial@3100000 { serial@3100000 {
compatible = "nvidia,tegra194-hsuart"; compatible = "nvidia,tegra194-hsuart";
reset-names = "serial"; reset-names = "serial";
@@ -45,6 +71,40 @@
i2c@31c0000 { i2c@31c0000 {
status = "okay"; status = "okay";
rt5640: audio-codec@1c {
compatible = "realtek,rt5640";
reg = <0x1c>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(F, 3) GPIO_ACTIVE_HIGH>;
clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "mclk";
realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>;
realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>;
realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>;
sound-name-prefix = "CVB-RT";
port {
rt5640_ep: endpoint {
remote-endpoint = <&i2s4_dap>;
mclk-fs = <256>;
};
};
};
/* carrier board ID EEPROM */
eeprom@55 {
compatible = "atmel,24c02";
reg = <0x55>;
label = "system";
vcc-supply = <&vdd_1v8_ls>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
}; };
i2c@31e0000 { i2c@31e0000 {
@@ -60,6 +120,115 @@
status = "okay"; status = "okay";
}; };
padctl@3520000 {
status = "okay";
pads {
usb2 {
lanes {
usb2-0 {
nvidia,function = "xusb";
status = "okay";
};
usb2-1 {
nvidia,function = "xusb";
status = "okay";
};
usb2-2 {
nvidia,function = "xusb";
status = "okay";
};
usb2-3 {
nvidia,function = "xusb";
status = "okay";
};
};
};
usb3 {
lanes {
usb3-0 {
nvidia,function = "xusb";
status = "okay";
};
usb3-1 {
nvidia,function = "xusb";
status = "okay";
};
usb3-2 {
nvidia,function = "xusb";
status = "okay";
};
};
};
};
ports {
usb2-0 {
mode = "otg";
usb-role-switch;
status = "okay";
};
usb2-1 {
mode = "host";
status = "okay";
};
usb2-2 {
mode = "host";
status = "okay";
};
usb2-3 {
mode = "host";
status = "okay";
};
usb3-0 {
nvidia,usb2-companion = <2>;
status = "okay";
};
usb3-1 {
nvidia,usb2-companion = <0>;
status = "okay";
};
usb3-2 {
nvidia,usb2-companion = <1>;
status = "okay";
};
};
};
usb@3550000 {
status = "okay";
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
phy-names = "usb2-0", "usb3-0";
};
usb@3610000 {
status = "okay";
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>,
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3",
"usb3-0", "usb3-1", "usb3-2";
};
fuse@3810000 { fuse@3810000 {
status = "okay"; status = "okay";
}; };
@@ -70,6 +239,37 @@
i2c@c250000 { i2c@c250000 {
status = "okay"; status = "okay";
power-sensor@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
label = "CVB_ATX_12V";
shunt-resistor-micro-ohms = <2000>;
};
input@1 {
reg = <0x1>;
label = "CVB_ATX_3V3";
shunt-resistor-micro-ohms = <2000>;
};
input@2 {
reg = <0x2>;
label = "CVB_ATX_5V";
shunt-resistor-micro-ohms = <2000>;
};
};
power-sensor@44 {
compatible = "ti,ina219";
reg = <0x44>;
shunt-resistor = <2000>;
};
}; };
host1x@13e00000 { host1x@13e00000 {
@@ -235,4 +435,32 @@
"CVB-RT DMIC1", "CVB-RT MIC", "CVB-RT DMIC1", "CVB-RT MIC",
"CVB-RT DMIC2", "CVB-RT MIC"; "CVB-RT DMIC2", "CVB-RT MIC";
}; };
vdd_3v3_dp: regulator-vdd-3v3-dp {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_DP";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&vdd_3v3_sys>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 6) 0>;
enable-active-high;
regulator-always-on;
};
vdd_3v3_sys: regulator-vdd-3v3-sys {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vdd_3v3_wifi: regulator-vdd-3v3-wifi {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_WIFI";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(G, 3) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
}; };

View File

@@ -1,221 +0,0 @@
// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/sound/rt5640.h>
/ {
compatible = "nvidia,p3740-0002";
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901300 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
i2s@2901500 {
ports {
port@1 {
endpoint {
bitclock-master;
frame-master;
};
};
};
};
};
};
i2c@31c0000 {
rt5640: audio-codec@1c {
compatible = "realtek,rt5640";
reg = <0x1c>;
clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "mclk";
realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>;
realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>;
realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>;
/* Codec IRQ output */
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(F, 3) GPIO_ACTIVE_HIGH>;
#sound-dai-cells = <1>;
sound-name-prefix = "CVB-RT";
status = "okay";
port {
rt5640_ep: endpoint {
remote-endpoint = <&i2s4_dap>;
mclk-fs = <256>;
};
};
};
/* carrier board ID EEPROM */
eeprom@55 {
compatible = "atmel,24c02";
reg = <0x55>;
label = "system";
vcc-supply = <&vdd_1v8_ls>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
padctl@3520000 {
vclamp-usb-supply = <&vdd_1v8_ao>;
avdd-usb-supply = <&vdd_3v3_ao>;
status = "okay";
pads {
usb2 {
lanes {
usb2-0 {
nvidia,function = "xusb";
status = "okay";
};
usb2-1 {
nvidia,function = "xusb";
status = "okay";
};
usb2-2 {
nvidia,function = "xusb";
status = "okay";
};
usb2-3 {
nvidia,function = "xusb";
status = "okay";
};
};
};
usb3 {
lanes {
usb3-0 {
nvidia,function = "xusb";
status = "okay";
};
usb3-1 {
nvidia,function = "xusb";
status = "okay";
};
usb3-2 {
nvidia,function = "xusb";
status = "okay";
};
};
};
};
ports {
usb2-0 {
mode = "otg";
usb-role-switch;
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
usb2-1 {
mode = "host";
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
usb2-2 {
mode = "host";
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
mode = "host";
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
usb3-0 {
nvidia,usb2-companion = <2>;
status = "okay";
};
usb3-1 {
nvidia,usb2-companion = <0>;
status = "okay";
};
usb3-2 {
nvidia,usb2-companion = <1>;
status = "okay";
};
};
};
usb@3550000 {
status = "okay";
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
phy-names = "usb2-0", "usb3-0";
};
usb@3610000 {
status = "okay";
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>,
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3",
"usb3-0", "usb3-1", "usb3-2";
};
};
vdd_3v3_dp: regulator-vdd-3v3-dp {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_DP";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vin-supply = <&vdd_3v3_sys>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 6) 0>;
enable-active-high;
regulator-always-on;
};
vdd_3v3_sys: regulator-vdd-3v3-sys {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vdd_3v3_wifi: regulator-vdd-3v3-wifi {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_WIFI";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(G, 3) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
};

View File

@@ -83,6 +83,35 @@
avdd-usb-supply = <&vdd_3v3_ao>; avdd-usb-supply = <&vdd_3v3_ao>;
}; };
i2c@c240000 {
status = "okay";
power-sensor@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
label = "VDD_IN";
shunt-resistor-micro-ohms = <5000>;
};
input@1 {
reg = <0x1>;
label = "VDD_CPU_GPU_CV";
shunt-resistor-micro-ohms = <5000>;
};
input@2 {
reg = <0x2>;
label = "VDD_SOC";
shunt-resistor-micro-ohms = <5000>;
};
};
};
rtc@c2a0000 { rtc@c2a0000 {
status = "okay"; status = "okay";
}; };

View File

@@ -1,111 +1,19 @@
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/linux-event-codes.h> #include "tegra234-p3768-0000+p3767.dtsi"
#include <dt-bindings/input/gpio-keys.h>
#include "tegra234-p3767.dtsi"
#include "tegra234-p3768-0000.dtsi"
/ { / {
compatible = "nvidia,p3768-0000+p3767-0000", "nvidia,p3767-0000", "nvidia,tegra234"; compatible = "nvidia,p3768-0000+p3767-0000", "nvidia,p3767-0000", "nvidia,tegra234";
model = "NVIDIA Jetson Orin NX Engineering Reference Developer Kit"; model = "NVIDIA Jetson Orin NX Engineering Reference Developer Kit";
aliases {
serial1 = &uarta;
serial2 = &uarte;
};
bus@0 { bus@0 {
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
pwm@32a0000 {
assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
status = "okay";
};
hda@3510000 { hda@3510000 {
nvidia,model = "NVIDIA Jetson Orin NX HDA"; nvidia,model = "NVIDIA Jetson Orin NX HDA";
}; };
padctl@3520000 {
status = "okay";
};
};
gpio-keys {
compatible = "gpio-keys";
key-force-recovery {
label = "Force Recovery";
gpios = <&gpio TEGRA234_MAIN_GPIO(G, 0) GPIO_ACTIVE_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <BTN_1>;
};
key-power {
label = "Power";
gpios = <&gpio_aon TEGRA234_AON_GPIO(EE, 4) GPIO_ACTIVE_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <KEY_POWER>;
wakeup-event-action = <EV_ACT_ASSERTED>;
wakeup-source;
};
key-suspend {
label = "Suspend";
gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <KEY_SLEEP>;
};
};
pwm-fan {
cooling-levels = <0 88 187 255>;
};
vdd_3v3_pcie: regulator-vdd-3v3-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_PCIE";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio_aon TEGRA234_AON_GPIO(AA, 5) GPIO_ACTIVE_HIGH>;
enable-active-high;
}; };
sound { sound {
label = "NVIDIA Jetson Orin NX APE"; label = "NVIDIA Jetson Orin NX APE";
}; };
thermal-zones {
tj-thermal {
cooling-maps {
map-active-0 {
cooling-device = <&fan 0 1>;
trip = <&tj_trip_active0>;
};
map-active-1 {
cooling-device = <&fan 1 2>;
trip = <&tj_trip_active1>;
};
map-active-2 {
cooling-device = <&fan 2 3>;
trip = <&tj_trip_active2>;
};
};
};
};
}; };

View File

@@ -1,11 +1,7 @@
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/linux-event-codes.h> #include "tegra234-p3768-0000+p3767.dtsi"
#include <dt-bindings/input/gpio-keys.h>
#include "tegra234-p3767.dtsi"
#include "tegra234-p3768-0000.dtsi"
/ { / {
compatible = "nvidia,p3768-0000+p3767-0005", "nvidia,p3767-0005", "nvidia,tegra234"; compatible = "nvidia,p3768-0000+p3767-0005", "nvidia,p3767-0005", "nvidia,tegra234";
@@ -17,32 +13,7 @@
}; };
}; };
pwm-fan {
cooling-levels = <0 88 187 255>;
};
sound { sound {
label = "NVIDIA Jetson Orin Nano APE"; label = "NVIDIA Jetson Orin Nano APE";
}; };
thermal-zones {
tj-thermal {
cooling-maps {
map-active-0 {
cooling-device = <&fan 0 1>;
trip = <&tj_trip_active0>;
};
map-active-1 {
cooling-device = <&fan 1 2>;
trip = <&tj_trip_active1>;
};
map-active-2 {
cooling-device = <&fan 2 3>;
trip = <&tj_trip_active2>;
};
};
};
};
}; };

View File

@@ -1,10 +1,16 @@
// SPDX-License-Identifier: GPL-2.0 // SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h>
#include "tegra234-p3767.dtsi"
/ { / {
compatible = "nvidia,p3768-0000";
aliases { aliases {
serial0 = &tcu; serial0 = &tcu;
serial1 = &uarta;
serial2 = &uarte;
}; };
chosen { chosen {
@@ -12,6 +18,18 @@
}; };
bus@0 { bus@0 {
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3160000 { i2c@3160000 {
status = "okay"; status = "okay";
@@ -168,6 +186,18 @@
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3"; phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
}; };
pcie-ep@14160000 {/* C4 - End Point */
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
<&p2u_hsio_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
reset-gpios = <&gpio
TEGRA234_MAIN_GPIO(L, 1)
GPIO_ACTIVE_LOW>;
nvidia,refclk-select-gpios = <&gpio_aon
TEGRA234_AON_GPIO(AA, 4)
GPIO_ACTIVE_HIGH>;
};
/* C7 - M.2 Key-M */ /* C7 - M.2 Key-M */
pcie@141e0000 { pcie@141e0000 {
status = "okay"; status = "okay";
@@ -210,6 +240,7 @@
compatible = "pwm-fan"; compatible = "pwm-fan";
pwms = <&pwm3 0 45334>; pwms = <&pwm3 0 45334>;
#cooling-cells = <2>; #cooling-cells = <2>;
cooling-levels = <0 88 187 255>;
}; };
vdd_1v8_sys: regulator-vdd-1v8-sys { vdd_1v8_sys: regulator-vdd-1v8-sys {
@@ -241,4 +272,25 @@
serial { serial {
status = "okay"; status = "okay";
}; };
thermal-zones {
tj-thermal {
cooling-maps {
map-active-0 {
cooling-device = <&fan 0 1>;
trip = <&tj_trip_active0>;
};
map-active-1 {
cooling-device = <&fan 1 2>;
trip = <&tj_trip_active1>;
};
map-active-2 {
cooling-device = <&fan 2 3>;
trip = <&tj_trip_active2>;
};
};
};
};
}; };

View File

@@ -2763,6 +2763,8 @@
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&bpmp TEGRA234_CLK_UARTA>; clocks = <&bpmp TEGRA234_CLK_UARTA>;
resets = <&bpmp TEGRA234_RESET_UARTA>; resets = <&bpmp TEGRA234_RESET_UARTA>;
dmas = <&gpcdma 8>, <&gpcdma 8>;
dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
@@ -3252,23 +3254,8 @@
<0x0 0x03650000 0x0 0x10000>; <0x0 0x03650000 0x0 0x10000>;
reg-names = "hcd", "fpci", "bar2"; reg-names = "hcd", "fpci", "bar2";
interrupts-extended = <&gic GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>, interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
<&gic GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
<&pmc 76 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 77 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 78 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 79 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 80 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 81 IRQ_TYPE_LEVEL_HIGH>,
<&pmc 82 IRQ_TYPE_LEVEL_HIGH>;
/*
wake0, wake1, wake2 are for USB3.0 ports
wake3, wake4, wake5, wake6 are for USB2.0 ports
*/
interrupt-names = "xhci", "mbox",
"wake0", "wake1", "wake2", "wake3",
"wake4", "wake5", "wake6";
clocks = <&bpmp TEGRA234_CLK_XUSB_CORE_HOST>, clocks = <&bpmp TEGRA234_CLK_XUSB_CORE_HOST>,
<&bpmp TEGRA234_CLK_XUSB_FALCON>, <&bpmp TEGRA234_CLK_XUSB_FALCON>,
@@ -4855,6 +4842,37 @@
status = "disabled"; status = "disabled";
}; };
pcie-ep@14160000 {
compatible = "nvidia,tegra234-pcie-ep";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PCIEX4BB>;
reg = <0x00 0x14160000 0x0 0x00020000 /* appl registers (128K) */
0x00 0x36040000 0x0 0x00040000 /* iATU_DMA reg space (256K) */
0x00 0x36080000 0x0 0x00040000 /* DBI space (256K) */
0x21 0x40000000 0x3 0x00000000>; /* Address Space (12G) */
reg-names = "appl", "atu_dma", "dbi", "addr_space";
num-lanes = <4>;
clocks = <&bpmp TEGRA234_CLK_PEX0_C4_CORE>;
clock-names = "core";
resets = <&bpmp TEGRA234_RESET_PEX0_CORE_4_APB>,
<&bpmp TEGRA234_RESET_PEX0_CORE_4>;
reset-names = "apb", "core";
interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; /* controller interrupt */
interrupt-names = "intr";
nvidia,bpmp = <&bpmp 4>;
nvidia,enable-ext-refclk;
nvidia,aspm-cmrt-us = <60>;
nvidia,aspm-pwr-on-t-us = <20>;
nvidia,aspm-l0s-entrance-latency-us = <3>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_PCIE4R &emc>,
<&mc TEGRA234_MEMORY_CLIENT_PCIE4W &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso0 TEGRA234_SID_PCIE4>;
dma-coherent;
status = "disabled";
};
pcie@14180000 { pcie@14180000 {
compatible = "nvidia,tegra234-pcie"; compatible = "nvidia,tegra234-pcie";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PCIEX4BA>; power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PCIEX4BA>;