Compare commits

...

267 Commits

Author SHA1 Message Date
Ninad Malwade
17bf896932 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
(cherry picked from commit 354519a4a5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3222787
Reviewed-by: Amulya Yarlagadda <ayarlagadda@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2025-01-08 08:31:49 -08:00
Hiteshkumar Patel
4af5ccaef4 t23x: dts: Add IGX500 to public repo
Add IGX500 dts support to nv-public

Bug 5018940

Change-Id: Ida4a7de3d060dc660acbbdbf9b5020ba198dc5d3
Signed-off-by: Hiteshkumar Patel <hiteshkumarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3271404
(cherry picked from commit 34a5de4f2c)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3273097
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-12-23 15:24:01 -08:00
Yi-Wei Wang
3495420dc1 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
(cherry picked from commit b75727c664)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3227428
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-12-19 07:24:42 -08:00
ruppala
aef6e7a9ba 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
(cherry picked from commit 8d0b857c8f)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3210313
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Amulya Yarlagadda <ayarlagadda@nvidia.com>
Tested-by: Amulya Yarlagadda <ayarlagadda@nvidia.com>
2024-09-10 08:19:36 -07:00
Brad Griffis
bbe01efff9 t23x: overlay: add no-map to vpr carveout
The VPR carveout has special security constraints. It must not be
read by the CPU. Add "no-map" property to this region to avoid
issues.

Currently linux-next builds are failing to boot because we hit
an error related to this mapping.

[    0.000000] Call trace:
[    0.000000]  numa_memblks_init+0x28c/0x32c
[    0.000000]  numa_init+0x48/0x218
[    0.000000]  arch_numa_init+0x48/0x84
[    0.000000]  bootmem_init+0x6c/0x174
[    0.000000]  setup_arch+0x23c/0x5fc
[    0.000000]  start_kernel+0x68/0x710
[    0.000000]  __primary_switched+0x80/0x88
[    0.000000] Code: a8c77bfd d50323bf d65f03c0 f9800051 (c85f7c46)

Addition of no-map resolves the issue.

Bug 4749580

Change-Id: I16cd52d5ce969d3af5e1814c51e061e2d584cc22
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3208483
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Ketan Patil <ketanp@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
2024-09-05 13:24:12 -07:00
Mark Zhang
a082494d45 dts: optee: Update fTPM v2.0 nodes
This patch updates the fTPM nodes in Tegra234 OP-TEE dts to conform to the fTPM v2.0 design.

Bug 200771475
Bug 4610123

Change-Id: I6a620f7097b9b7a3b6698f50c3cc0e8b83c7c7f8
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3193965
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: Joseph Lo <josephl@nvidia.com>
Reviewed-by: Jimmy Zhang <jimmzhang@nvidia.com>
Reviewed-by: Joseph Lo <josephl@nvidia.com>
2024-09-05 03:09:55 -07:00
Dipen Patel
ab9b7d747f nv-platform: Add edge safety services
The edge safety is profisafe demo app which is part of the SEP package
deliverables. Add necessary DT changes so that current
userspace components related to fsicomm software stack can parse
it. This includes updating total channels, adding two new nodes
belonging to edge safety server and its related frame size and count.

Bug 4766823

Change-Id: I2326a911ab384f26f8388d7136ee2a48b91ec0b7
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3115003
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
2024-08-21 22:54:26 -07:00
Wayne Wang
188ebb37f1 p3768: dts: disable PCIe C8 in p3767 0000 PX1
Since PX1 does not use PCIe C8, set it to disabled.

Bug 4601516

Signed-off-by: Wayne Wang(SW-TEGRA) <waywang@nvidia.com>
Change-Id: Ic757fdf87e4efcbca609b25d41cf8a523746c2c7
(cherry picked from commit 40a3011636474e2b361444422cf6ef8a40a5e2ca)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3131844
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Yi-Wei Wang <yiweiw@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
2024-08-13 10:24:11 -07:00
Vedant Deshpande
a987d2d0ea nv-platform: Rename se nodes to crypto
Rename the se nodes to crypto to maintain synchronization with
upstream changes.

Bug 4707773

Change-Id: I3018c945ab8f85ae372c2888f6f6d893ba8878a7
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3191650
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-08-10 05:39:13 -07:00
Vedant Deshpande
bf4f67f9d9 nv-platform: Remove duplicate PCIe nodes
Remove redundant nodes from common dtsi file which are already present
in upstream board level common include file.

Bug 4707773

Change-Id: I1f751005b3c5f19b8fea5a01c95ce912e31bc08d
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3189292
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
2024-08-06 23:09:12 -07:00
Yi-Wei Wang
1f405def24 t23x: p3701-0000-as-p3767-000*: Update CPU Fmax
Update CPU Fmax for Orin NX / Nano emulation platforms.

Bug 4196830

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I6e0d1a08eeb9e6477f3e07d5e85b08867654e46a
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3189135
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Ivan Pravdin <ipravdin@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-08-06 10:53:57 -07:00
Praveen AC
f84d681a56 t23x:P3783: Fix failed to read 2nd Hawk EEPROM serial number.
Changed EEPROM address to 0x15 for 2nd Hawks EEPROM
to avoid fail to read serial number.

Bug 4244937

Change-Id: I562a2c9c81b99baaf252e44f1e8530256a0b6643
Signed-off-by: Praveen AC <pac@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3184250
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
2024-08-01 23:39:20 -07:00
Sumit Gupta
dadc4a48b6 t23x: nv-public: tegra: fix typo in dce fabric compatible
Fix typo in the compatible string of DCE fabric.

Bug 4369009

Change-Id: Ic68a46a89f3859dd93034fd0e774e379699d7859
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3185578
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-31 11:09:07 -07:00
Yi-Wei Wang
82746253aa t23x: nv-public: Disable hot surface alert for IGX
For IGX platform, the module and baseboard are inside the chassis, the
hot surface alert should not rely on on-chip or on-board thermal sensors
to judge whether the surface is hot or not. So, this change disables the
hot surface alert for IGX platform to avoid the false alarm.

Bug 4084478
Bug 4561083
Bug 4611631

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ib4f9ca3e2822c593744668a82ebaabb3910ac594
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3181470
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-25 12:24:01 -07:00
Ankur Pawar
9c1a6b2d11 overlay: t23x: fix IMX390 SDR mode corruption
Bottom two lines in IMX390 SDR mode are completely
black. Issue is fixed in IMX390 driver. Change the
image resolution to 1936x1096.

Bug 4505240

Change-Id: Ie72ffc66e3ca67ce30e6ad5b56766486f78b1d0a
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3179853
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2024-07-25 09:54:18 -07:00
Sumit Gupta
43c90b2f83 t23x: nv-public: tegra: disable sce fabric node
Disable SCE fabric node to avoid overwrite of the actual CBB error and
to print info about the original error. Access to SCE fabric registers
was blocked by firewall after the introduction of FSI. After that any
illegal access by some SW to SCE registers is correctly resulting in
the CBB firewall error. But when CCPLEX tries accessing the SCE-fabric
registers to print error info, then another firewall error comes as
the fabric registers are also firewall protected. This causes second
error info to be printed which is misleading. Disable SCE fabric node
to avoid printing the misleading second error. The first error will
get printed on interrupt from the fabric causing the actual access.

Bug 4369009

Change-Id: I8f47516248bf239d9a5c7780d0f10456b1ebd9de
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3179289
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-23 01:09:00 -07:00
Ashish Mhetre
977fb0aa31 tegra234: Add smmu_test node
Add smmu_test node in t23x dts and enable it. It's used by
smmu tests.

Bug 4739062

Change-Id: Ibcbb0fe1896b49987d4a77a99bd466da16c3634b
Signed-off-by: Ashish Mhetre <amhetre@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3179041
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-22 02:26:58 -07:00
Brad Griffis
fb6feb2209 Revert "nv-public: arm64: tegra: disable sce fabric node"
This reverts commit 6acdd6c524.

Reason for revert: Cannot update upstream files.

Change-Id: I473b6d0a740eaa0ff235246a8f7fef88f6b2aba4
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3178463
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2024-07-19 18:54:05 -07:00
Brad Griffis
c188adf0b1 Revert "tegra234: Add smmu_test node"
This reverts commit c85caf7ae9.

Reason for revert: Only changes merged upstream can be here.

Change-Id: Ica7759a94ecde6f8adaa904082efb302617e02de
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3178462
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-19 16:38:59 -07:00
Ashish Mhetre
c85caf7ae9 tegra234: Add smmu_test node
Add smmu_test node in t23x dts and enable it. It's used by
smmu tests.

Bug 4739062

Change-Id: Ib42cb4feed4eaf4947bb9734db6801fa25f772a5
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3178085
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2024-07-19 11:25:14 -07:00
Vishwaroop A
4cf13bde38 nv-public: qspi: update prod entries for qspi.
Avoid configuring command2 register in prod.

Bug 4739710

Change-Id: I7c644427effa10455cb1fa02788e86ae2d6dd181
Signed-off-by: Vishwaroop A <va@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3176993
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-18 18:24:02 -07:00
Vedant Deshpande
5b71d8a42b nv-soc: Remove redundant properties of eth node
Remove the properties of the ethernet device node
which are already present in tegra234.dtsi.

Bug 4707773

Change-Id: Ic65955c587c18ad185b42e4f3317c0eba39b456c
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3170872
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2024-07-16 06:54:42 -07:00
Laxman Dewangan
deb67bdfad t23x: Remove override of clock speed for SBSA UART
The clock speed of the SBSA UART is configured in
common/base DTS file, hence remove the override of
this property from platform common override file.

Bug 4037899
Bug 4707773

Change-Id: Ib871ec7fe7561cfc42336d87125883a1fe224468
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3037843
(cherry picked from commit a7d01fe7f4)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172851
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-16 06:54:31 -07:00
Thierry Reding
d9ee65d083 arm64: tegra: Add missing current-speed for SBSA UART
The SBSA UART device tree bindings require a current-speed property that
specifies the baud rate configured by the firmware. Add it on Jetson AGX
Orin and Jetson Orin Nano/NX.

Bug 4037899
Bug 4707773

Change-Id: I73a72f7278892e2331368f1d13dd2c306bf4c5ed
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/+/3037842
(cherry picked from commit bddb2afb0e)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172850
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-16 06:54:26 -07:00
Vedant Deshpande
d3df85c64a nv-soc: Rename security engine nodes
Renamed the se node to crypto to maintain synchronization with
upstream changes. Also, updated compatible property to maintain
synchronization.

Bug 4707773

Change-Id: Ia08f08a3bdffd22eafdc274f0443e29eb6ef401d
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172699
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-16 06:54:21 -07:00
Vedant Deshpande
5c1e11f1bc UPSTREAM: arm64: tegra: Add Tegra Security Engine DT nodes
Add device tree nodes for Tegra AES and HASH engines.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

Bug 4707773

(cherry picked from mainline commit 0d23cacb2ae0fc9d8d40f36cb37ad272b3249ffe)
Change-Id: I5fe86a6943f3a57cd6426c3a1ed20e2f773b8430
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3169654
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-16 06:54:16 -07:00
Thierry Reding
6792bbce69 arm64: tegra: Add dmas and dma-names for Tegra234 UARTE
Commit 940acdac99b2 ("arm64: tegra: Add UARTE device tree node on
Tegra234") added the device tree node for the UARTE on Tegra234 but
didn't include the "dmas" and "dma-names" properties required for this
device when it's used in high-speed mode.

Bug 4037899
Bug 4707773

Change-Id: Ia06436b77706395c1b69ebdcd9db4cfcc3a7d221
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/+/3035768
(cherry picked from commit 82bdc94bf1)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172824
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-12 19:39:18 -07:00
Thierry Reding
16cc3a21f8 arm64: tegra: Mark Tegra234 SPI as compatible with Tegra114
According to the bindings, both Tegra210 and Tegra114 compatible strings
need to be specified since the version of this hardware block found in
Tegra210 is backwards-compatible.

Bug 4037899
Bug 4707773

Change-Id: I8391f486ac829b00b7232b4edb30a7eb5896339f
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/+/3035767
(cherry picked from commit 722ad13030)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172823
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-12 19:39:13 -07:00
Thierry Reding
941cde9d73 arm64: tegra: Use correct format for clocks property
phandle and clock specifier pairs should be enclosed in angular
brackets.

Bug 4037899
Bug 4707773

Change-Id: I07fcce3729ebf74d17847f6502b87438b0548cbb
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/+/3035766
(cherry picked from commit 089ac40a2e)
Signed-off-by: Vedant Deshpande <vedantd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172822
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-07-12 19:39:09 -07:00
Hiteshkumar Patel
1ffe07b61c nv-public:P3783: Fix probe fail of Hawks during boot.
1. Made all sensors of Hawks as master sensors so any sensor is capable
   to program SERIALIZERS i2c address translation during probe time
   i.e first come first basis.So, We wont miss or skip SERIALIZERS
   i2c trans
2. Corrected CAM0_PWDN GPIO from (H, 6) to (E, 6)

Bug 4510846
Bug 4565904

Change-Id: I6d0b881ce3e3425d70672ea56064209ac65c3c2a
Signed-off-by: Hiteshkumar Patel <hiteshkumarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3173608
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-12 11:54:02 -07:00
Praveen AC
4bb0bcd039 tegra234-camera: Update DT property for VI HW.
Update DT property for VI from "non-coherent" to "dma-noncoherent"
to adopt to the latest upstream kernel change which intrun fixes
the RAW image corruption.

Bug 4640366

Change-Id: Ib49d5d69fb144a0ec87683b6c650507373be5579
Signed-off-by: Praveen AC <pac@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3172429
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
2024-07-12 09:38:59 -07:00
ruppala
a289da3a6f t23x: nv-soc: Disable nvidia,macsec-enable
Disable macsec for nvethernet in L4T platforms

Bug 4640382

Change-Id: Ie2203015008b3972499602557edd296461ae6c58
Signed-off-by: ruppala <ruppala@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3166951
(cherry picked from commit b0a87160ca)
Reviewed-by: Sanath Kumar Gampa <sgampa@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3173667
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-12 05:09:23 -07:00
Ankur Pawar
e979b90a55 t23x: Add Hawk & Owl overlays for P3762
Add following overlays for Hawk+Owl
1xHAWK: tegra234-p3737-camera-p3762-a00-1Hawk-overlay.dtbo
2xHAWK: tegra234-p3737-camera-p3762-a00-2Hawk-overlay.dtbo
3xHAWK+3xOWL: tegra234-p3737-camera-p3762-a00-3Hawk-3Owl-overlay.dtbo
4xHAWK: tegra234-p3737-camera-p3762-a00-4Hawk-overlay.dtbo
4xOWL: tegra234-p3737-camera-p3762-a00-4Owl-overlay.dtbo

Bug 4583168

Change-Id: I7d03978628ead5b761668b58e05d6c35553ac52f
Signed-off-by: Ankur Pawar<ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3109502
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
2024-07-11 06:54:10 -07:00
Sumit Gupta
6acdd6c524 nv-public: arm64: tegra: disable sce fabric node
Access to SCE fabric registers was blocked by firewall after the
introduction of FSI. After that any illegal access by some SW to SCE
registers is correctly resulting in the CBB firewall error. But when
CCPLEX tries accessing the SCE-fabric registers to print error info,
then another firewall error comes as the fabric registers are also
firewall protected. This causes second error info to be printed in
CBB error dump which is misleading. Disabling the SCE fabric node
to avoid printing the misleading info. The first error info will be
printed by the interrupt from the fabric causing the actual access.

Bug 4369009

Change-Id: Ic53283b79b5ca385f051b002d986da5e81aa4eb2
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3170439
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-07-09 01:27:49 -07:00
Yi-Wei Wang
d08ec0eb9f nv-platform: unregister tmp451 from thermal zone
Unregister tmp451 from thermal zone as no cooling action is required
from the thermal framework. Temperature readings of tmp451 sensors are
still available from the sysfs nodes exposed by the hwmon framework.

Bug 4139424
Bug 4652433
Bug 4715251

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ie7b61fc9d2712374b3b3ddb6b7448e801044cb7f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3165613
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
2024-07-02 02:10:27 -07:00
ByungKuk Seo
1a5be92d47 Revert "Revert "concord: add display hdcp property
This reverts commit 0772bd52c7.

Reason: back to hdcp_enabled, fixed by
http://git-p4swmirror/r/c/p4swmirror/tegra/gpu/drv_v1/+/258600

Bug 4620917

Change-Id: Iedf15d35d2872f199002d8f46656f652a524c7a0
Signed-off-by: ByungKuk Seo <bseo@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3155263
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Nikesh Oswal <noswal@nvidia.com>
2024-06-25 14:55:37 -07:00
Laxman Dewangan
6bdc4f9063 tegra234: Correct the PCIE prefetch memory range
Fix the PCIE prefetch memory range for p3740-0002+p3701-0008.

Bug 4650009

Change-Id: I229de350c5ab1e87b5c60181569468e00558441a
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3137700
(cherry picked from commit 57c3e682de)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3157507
Reviewed-by: Paritosh Dixit <paritoshd@nvidia.com>
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-06-18 13:39:31 -07:00
sheetal
64f98049f2 [UPSTREAM] arm64: tegra: Remove Jetson Orin NX and Jetson Orin Nano DTSI
Jetson Orin NX and Jetson Orin Nano DTSI files just define the HDA label
and it is already added as part of base DTS files.
Hence, removing these files.

Upstream commit ID: cc36acb8a67ddfe4bc7bc722748f6c1b72eed5ed

Bug 4429992
TAS-2240

Change-Id: I07450f4165905393728224d412462a2835e30abc
Signed-off-by: sheetal <sheetal@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3086461
Reviewed-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-by: Mohan kumar <mkumard@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
(cherry picked from commit 11c5935bc2)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3151096
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-06-06 06:24:50 -07:00
sheetal
f36a1176b5 [UPSTREAM] arm64: tegra: Add audio support for Jetson Orin NX and Jetson Orin Nano
Add audio support for the NVIDIA Jetson Orin NX (p3767, SKU0) module and
Jetson Orin Nano (p3767, SKU5) module Developer Kit with P3768 carrier
board.

APE and HDA sound cards are enabled.

Supported IO interfaces: I2S2 and I2S4.

Upstream commit ID: 5f360dbc22f17bb0f850039e955656528c6e8772

Bug 4429992
TAS-2240

Change-Id: I81f2086c7131a51ae8023ae82194e239008d55dc
Signed-off-by: sheetal <sheetal@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3086460
Reviewed-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Mohan kumar <mkumard@nvidia.com>
(cherry picked from commit 36c8e53545)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3151095
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
2024-06-06 06:24:46 -07:00
sheetal
0c60f448cb [UPSTREAM] arm64: tegra: Define missing IO ports
I2S3, I2S5, DMIC1, DMIC2, DMIC4, DSPK1 and DSPK2 IO ports are not
defined. Those are not defined earlier because it was inside platform
DT and defined only for supported IOs by the platform.
Now these are part of SoC DTSI, all IOs ports are defined
so that all the ports are available to be used by platforms.

Upstream commit ID: f5c8e31e71711061338b572c26f456bf5acdf6a0

Bug 4429992
TAS-2240

Change-Id: I6367806291d7e7685087710f646c412c8194b263
Signed-off-by: sheetal <sheetal@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3086459
(cherry picked from commit e3664fd0c9)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3151094
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-06-06 06:24:41 -07:00
sheetal
dd5e2c462d [UPSTREAM] arm64: tegra: Move AHUB ports to SoC DTSI
AHUB and its child nodes ports are part of platform DTS and with new
platform support these entries need to be defined again.
As they are common across the platforms, moving them to SoC
DTSI to avoid code duplicacy.

AHUB HW accelerators are used for audio processing and typically all of
these are made available. Platforms can enable all of these just by
enabling the AHUB parent device. However IO interfaces (which are also
children of AHUB) are selectively enabled based on what the platform
actually exposes for interaction with external world.

Upstream commit ID: 71a3b9b17537a114705d2d01d227e19fd7353bff

Bug 4429992
TAS-2240

Change-Id: I3c148efaa5ea7ca1ac2063e3425fa54172aff346
Signed-off-by: sheetal <sheetal@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3086458
(cherry picked from commit 6790d74964)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3151093
Tested-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
2024-06-06 06:24:36 -07:00
Sheetal
638b4d5881 nv-public: p3767: Remove change from mainline DT
- While enabling audio for Orin NX and Nano maniline DT are modified
  Removed the change from mainline DT and required nodes which will
  not be defined in mainline DT is added to nv-platform DT file.
- Audio related changes for Orin NX and Nano are now in mainline.
  Those will be taken while backporting.

Bug 4429992
TAS-2240

Change-Id: Ic93aabedd7b478e1b1c28e132139857e814b1c98
Signed-off-by: Sheetal <sheetal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3082469
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-by: Sandipan Patra <spatra@nvidia.com>
Reviewed-by: Mohan kumar <mkumard@nvidia.com>
(cherry picked from commit fb98e4d8ba)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3151092
Tested-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-06-06 06:24:32 -07:00
Sahil Mukund Patki
0772bd52c7 Revert "concord: add display hdcp property"
This reverts commit 14a735049d.

Reason for revert: TSEC T/O issues blocking JP-6.0 GA release

Bug 4620917

Change-Id: Id4cb8787bc3e678698050c6a4638955ec21d7781
Signed-off-by: spatki <spatki@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3127615
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Vinod Atyam <vatyam@nvidia.com>
2024-06-03 02:55:00 -07:00
Ankur Pawar
92a36dcc76 overlay: t23x: enable IMX390 WDR mode
Enable WDR(wide dynamic range) mode for IMX390.
1 Add WDR mode table to IMX390 overlay.
2 Support only link A in desrializer
  (only one sensor is supported for now).

Add tegra234-p3737-camera-imx390-addr-0x21-overlay.dtbo
for IMX390 sensor with i2c address 0x21.

Bug 4505240

Change-Id: I6ccff56d0943674bc2f0142c8829fb4c812569a1
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3105263
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
2024-05-30 05:39:45 -07:00
Shubhi Garg
aa281b277b nv-public: p3740: fix cvb eeprom bus id
Since IGX CVM eeprom uses different I2C controller than CVB, bus id
in eeprom manager should be different. Currently, CVM and CVB has bus@0,
which brings CVB eeprom inside wrong i2c controller. Fixes it by differentiating
bus ids. Now, bus@0 has CVM and bus@1 has CVB eeprom.

Bug 4625456

Change-Id: Ied4cd3c66bf0c1122bce9899b3fa749c4ff38d26
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3135834
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
2024-05-15 20:54:20 -07:00
Jon Hunter
5d0c186f3a t23x: overlay: Remove legacy Sidecar overlay
The overlay tegra234-jetson.dtbo was added for Sidecar and is no longer
needed or used and so remove this.

Bug 4164621

Change-Id: I2dc56d69ac4320c4dae1379445367b2d6dee7e1f
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3130861
(cherry picked from commit 39a40385a8)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3132473
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-05-14 01:10:13 -07:00
Praveen AC
3d225ae86a t234:[P3762/P3783]:Increase i2cbus-8 freq to 400khz.
Add overlay to increase i2c bus-8 freq to 400khz.

Bug 4510846

Change-Id: I662c075b34992e088b2baa6a03c8db744171be4b
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3131809
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: Narendra Kondapalli <nkondapalli@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Anubhav Rai <arai@nvidia.com>
2024-05-07 01:54:48 -07:00
Evgeny Kornev
f735cf3f58 dt: soc: t234: add iommu mappings for vi&isp units
Access the syncpoint shim and gos (if any) via SMMU.

Bug 4152947

Change-Id: Id78bd8615587691f548b7ec2628d6ffc049053b6
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3113896
Reviewed-by: Semi Malinen <smalinen@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Tested-by: Pratik Prajapati <pratikp@nvidia.com>
Tested-by: Mika Liljeberg <mliljeberg@nvidia.com>
Reviewed-by: Kalle Jokiniemi <kjokiniemi@nvidia.com>
Reviewed-by: Mika Liljeberg <mliljeberg@nvidia.com>
2024-05-06 02:40:37 -07:00
Joseph Lo
3411f7a548 tegra234: overlay: Add fTPM node
This adds a ftpm node for the fTPM TEE CA driver in the kernel.

Jira L4T-1317
Jira L4T-2972
Bug 200771475

Change-Id: Ie2ba35012006a01f930b1d355cd0bca35cf1a26f
Signed-off-by: Joseph Lo <josephl@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2920215
(cherry picked from commit f8c6ff8c2c)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2967687
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-04-30 12:39:52 -07:00
Joseph Lo
00705063bc t23x: optee-dts: Fix the TPM event log addr DT
After migrating OP-TEE DT memory to TZDRAM, we enabled
CFG_MAP_EXT_DT_SECURE in the OP-TEE OS that needs to use the property
name "tpm_event_log_addr" instead of "tpm_event_log_sm_addr" to make
it work correctly. So fix it accordingly.

Bug 4013192
Bug 3960022

Change-Id: I039011998b690f3ed057da13107744f0efeee48f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/2934220
(cherry picked from commit cc84293e18)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3126680
Reviewed-by: Joseph Lo <josephl@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Joseph Lo <josephl@nvidia.com>
2024-04-30 12:39:47 -07:00
Yi-Wei Wang
9394fdfa56 nv-platform: add support for p3767 0000 PX1
This change adds kernel device tree support for p3767 0000 PX1 platform.

Bug 4477796
Bug 4558654
Bug 4571535

Change-Id: I6874406fc5b73c1e108c37526845bf19be4c3472
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3125972
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-04-29 00:40:34 -07:00
Henry Lin
1db409403e soc: tegra234: 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: I1b519a58784e533c9c41f470f1e5bf884b366764
Signed-off-by: Henry Lin <henryl@nvidia.com>
Signed-off-by: Wayne Chang <waynec@nvidia.com>
Signed-off-by: Haotien Hsu <haotienh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3121598
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: WK Tsai <wtsai@nvidia.com>
Reviewed-by: Sing-Han Chen <singhanc@nvidia.com>
2024-04-26 00:39:47 -07:00
Praveen AC
9944294772 nv-public:P3762: Fix probe fail of Hawks during boot.
1. Made all sensors of Hawks as master sensors so any sensor is capable
to program SERIALIZERS i2c address translation during probe time
i.e first come first basis.So, We wont miss or skip SERIALIZERS i2c trans.
2. Changed i2c bus 8 freq to 400khz

Bug 4510846

Change-Id: Ia627ebd430709efac64ec849b37167c88b5cf012
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3112253
Tested-by: Praveen AC <pac@nvidia.com>
Tested-by: Shubham Chandra <shubhamc@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2024-04-12 09:09:18 -07:00
Mark Zhang
748f517742 dts: optee: Update fTPM nodes according to v1.8 design
This patch updates the fTPM nodes in optee dts to conform to the v1.8
fTPM design.

Bug 200771475

Change-Id: I37199bd901c43224fd820ae0f4c41597739625f1
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/3022465
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3103570
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Nitin Kumbhar <nkumbhar@nvidia.com>
Reviewed-by: Jimmy Zhang <jimmzhang@nvidia.com>
Tested-by: Mark Zhang <markz@nvidia.com>
2024-04-10 02:40:18 -07:00
Yi-Wei Wang
fc80e50350 nv-public: enable hot surface alert for safety IGX
Previously hot surface alert was disabled for safety IGX, but
it makes more sense to enable it to warn the user not to touch
the surface.

Bug 4084478
Bug 4561083

Change-Id: Ica725828f31c7e0336aea2376c7721130d675d96
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3112109
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-04-09 22:09:25 -07:00
Praveen AC
418dce3580 nv-public:overlay: Change P3762/P3783 sensor badge.
Change Hawk & Owl sensor badge to unique string.

Bug 4573086

Change-Id: I71556bfe1f434bc88f17113e8d9047ba29dcce91
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3104661
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Anubhav Rai <arai@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-04-04 10:24:19 -07:00
Gautham Srinivasan
1d5af222e5 nv-platform: UARTA and UARTE for Orin NX and Nano
Enable UARTA and UARTE for Orin NX and Nano devices.

- UARTA is accessible via the 40-pin header with pin 8 and 10 (TX/RX)
- UARTE utilizes the M2.E connector

Bug 4502469

Change-Id: Ia4705ad8153a128d1a2a694abdc51e6483cf4e7d
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3097782
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2024-03-21 09:24:32 -07:00
spatki
14a735049d concord: add display hdcp property
HDCP is only supposed to be enabled on L4T and only on concord
and slt platforms. A property hdcp_enabled in dtsi is checked
to decide whether hdcp should be enabled or not. This change
adds the property

Bug 3920465

Change-Id: I7749441d48302c83669692760c95643df91c7adb
Signed-off-by: spatki <spatki@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3088268
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2024-03-18 03:54:10 -07:00
Ankur Pawar
0aa4389b31 t23x: overlay: enable IMX219 autodetection
1 Enable dual IMX219 by default for autodetection.
2 Rename the overlay configs.
3 Fix the IMX477 4 lane overlay.

Bug 4547993

Change-Id: Iaeb1b1d2be6bbda589d5fd6fedb410ce310f09cb
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3092357
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-03-15 09:39:33 -07:00
Ninad Malwade
01d14d7458 t23x: nv-public: move taylor dts to nv-platform
Since the taylor high and low sku dts files are the overlay
files, moving them to nv-platform and correct the include
dt file accordingly.

Bug 4404298

Change-Id: I8d1b221e09e89c9b89264a072204f20ee21c9247
Signed-off-by: Ninad Malwade <nmalwade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3093888
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
Reviewed-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-by: Ken Chang <kenc@nvidia.com>
2024-03-15 00:40:02 -07:00
Hiteshkumar Patel
edea2581e4 nv-platform: Enable nvpps driver on AGX Orin
Enable nvpps driver so it can be tested.

AGX Orin has ethernet connected on mgbe0 emac so passing primary emac
mgbe0.

Bug 4489344

Change-Id: I8cbe61557364ae92c2428ec4f5db999f4c1bfe83
Signed-off-by: Hiteshkumar Patel <hiteshkumarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3075387
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
2024-03-14 15:39:31 -07:00
Gautham Srinivasan
adb700a890 t23x: overlay: update bmi088 with HTE info
BMI088 driver uses HTE to get timestamp instead of GTE. Add HTE
timestamp properties and correct accel and gyro gpio property
names.

Bug 4556289

Change-Id: I84e35e7bec778fe75a73d4bebc9a97f728043cd7
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3093763
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-03-12 18:09:07 -07:00
Ninad Malwade
6b52bea6a0 t23x: nv-public: Add high low sku kernel dts
Adding kernel dts for the taylor high and low sku

Bug 4404298

Change-Id: Ibd8c620dfab376a41678b9b2d3239b1c3c4b9c8a
Signed-off-by: Ninad Malwade <nmalwade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3085508
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-03-05 00:24:36 -08:00
Ankur Pawar
50b33874c0 overlay: camera: fix E3333 argus issue
Set status to okay for module0 to module5 nodes
under tegra-camera-platform in E3333(ov5693) overlay.
This will fix the issue of camera not detected by
argus.

Bug 4283726

Change-Id: Ie968a09e9661892f6f744946083198696bae5fd8
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3088333
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-03-04 01:24:59 -08:00
Ankur Pawar
6e69509448 overlay: camera: IMX477: Fix half preview issue
Change IMX477 line_length to 11200 and 7000 for mode0 and
mode1 respectively, this will the half preview issue. And
IMX477 framerate will be fixed while using gstreamer app.

Bug 4384649

Change-Id: I91dcae1f0417a23d685ecbc64fa09f126b3c8543
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3034410
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-03-04 01:24:44 -08:00
Shubhi Garg
6b483b3c28 nv-public: fix mttcan1 prod settings
For can1 controller, prod setting TDCR register address is wrong.
When we make can1 up on network with dbitrate configuration, it reads
TDCR register. Being wrong address, kernel throws cbb errors.

Bug 4504609

Change-Id: I5ee51e93d627c69c40b39e844fbfd495e5028010
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3087390
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-03-03 20:54:15 -08:00
Paritosh Dixit
091037754c t23x: nv-public: Reorder ethernet@6800000 regs
Currently, with our downstream DT the onboard ethernet devices
enumerates as ethernet@6810000.  With the upstream DT, this device
enumerates as ethernet@6800000. Reorder registers under the
ethernet@6800000 node in the DT so that it enumerates as
ethernet@6800000 on the target.

Bug 4494706

Change-Id: I63851784d696a66bb0985b0f60b98f30809583d2
Signed-off-by: Paritosh Dixit <paritoshd@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3084079
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-27 18:56:00 -08:00
Jason Mei
a5388aba8b t23x: nv-public: add host1x handle in PCIe EP
Some EPF function, such as tvnet need host1x support.
This involves adding the handle of host1x in PCIe EP.

Bug 4456727
Bug 4451567

Change-Id: I398c8041f652fa84b555e228f06c0ca4a066ed31
Signed-off-by: Jason Mei <jianjunm@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3081924
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-25 21:40:09 -08:00
Jon Hunter
4d2010af58 t23x: nv-public: Remove duplicated MGBE properties
The 'phy-mode' and 'power-domains' properties for the MGBE ethernet
controller is present in the upstream SoC and platform files and so need
to duplicate these properties in the SoC and platform overlay files.

Bug 3820445
Bug 4293378

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Change-Id: Ibf99701be0796a1b84db439c262a3f718587ab7b
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3082847
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-23 15:54:40 -08:00
Jon Hunter
0424f757a5 UPSTREAM: arm64: tegra: Fix Tegra234 MGBE power-domains
The MGBE power-domains on Tegra234 are mapped to the MGBE controllers as
follows:

 MGBE0 (0x68000000) --> Power-Domain MGBEB
 MGBE1 (0x69000000) --> Power-Domain MGBEC
 MGBE2 (0x6a000000) --> Power-Domain MGBED

Update the device-tree nodes for Tegra234 to correct this.

Bug 3820445
Bug 4293378

Fixes: 610cdf3186bc ("arm64: tegra: Add MGBE nodes on Tegra234")
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: I470a7128e2bc05c5c66539fab544d091b2f846a4
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3082846
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-23 15:54:35 -08:00
Thierry Reding
e8a5ee3d34 UPSTREAM: arm64: tegra: Add AXI configuration for Tegra234 MGBE
The MGBE devices found on Tegra234 need their AXI interface configured
to operate at peak performance. Ideally we would do this in the driver
based off the compatible string, but the DT bindings already specify a
separate mechanism, so reuse that.

Bug 3820445
Bug 4293378

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Change-Id: I206b4f47b0243b21064df1dedcad05e9f316507f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3082845
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-23 15:54:30 -08:00
Thierry Reding
13afbb33f5 UPSTREAM: arm64: tegra: Set the correct PHY mode for MGBE
The PHY is configured in 10GBASE-R, so make sure to reflect that in DT.

Bug 3820445
Bug 4293378

Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Change-Id: I36f54566fee253515546663a332f41cf66be90b0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3082844
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-23 15:54:25 -08:00
Jon Hunter
fb920bea54 t23x: nv-public: Remove unused clock and reset names
Clock and reset names are being removed from upstream device-tree for
devices that only have a single clock or reset. The QSPI driver does not
use the 'reset-names' property and so this can be removed for these
devices.

UART devices may use either the 8250 serial driver or the Tegra HS
serial driver. The default is the 8250 driver. When the Tegra HS serial
driver is used, the 'reset-names' property is required because the
driver specifically uses the reset name although there is only one. The
clock-names and reset-names for the 0x3100000 UART can be removed from
the base overlay file because the reset-names is correctly specified
in the files where the compatibility string for the Tegra HS serial
driver is set.

Bug 4037899

Change-Id: I501cd36609824e5703a6b756fc5f5389dd8d2368
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3074829
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-12 14:09:35 -08:00
Jon Hunter
6114a37466 t23x: nv-public: Fix serial aliases
When booting Linux with GRUB, the serial console does not show the
kernel boot messages as expected. By default GRUB does not add the
'console' kernel parameter and relies on device-tree to configure the
default serial port. Device-tree configures the default serial port by
setting the property 'stdout-path=serial0:115200n8' where 'serial0' is
an alises to one of the devices serial ports. The default serial port
for Tegra234 devices is the TCU0 and so 'serial0' should be mapped to
this interface. However, the 'serial0' is being updated to be mapped to
a different UART.

Fix this by removing the additional 'serialX' aliases in the base
overlay file and add any alises that are not already defined to the
appropriate board file. This does change the mapping of some aliases but
this aligns the boards with the aliases as they are defined upstream.

Bug 4264560

Change-Id: Icf6bdb1e7d5c9abf5bdbf5378b4ed8122910b507
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3072368
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Paritosh Dixit <paritoshd@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-12 14:09:30 -08:00
Thierry Reding
3b8b08c22b UPSTREAM: arm64: tegra: Remove duplicate nodes on Jetson Orin NX
The SBSA UART and TCU as well as the TCU alias and the stdout-path are
configured via the P3768 carrier board DTS include, so the can be
removed from the system DTS file.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/linux-tegra/20230817141407.3678613-3-thierry.reding@gmail.com/
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Change-Id: I42c8d76fef102b2d0ccfd3d427ab553b9043f5c3
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3072426
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-12 14:09:25 -08:00
Praveen AC
e20df250cd t23x:P3762: Fix failed to read 2nd Hawk EEPROM serial number.
Changed EEPROM address to 0x15 for 2nd Hawks EEPROM
to avoid fail to read serial number.

Bug 4244937

Change-Id: I24ae399de65e082c70487442ec0f93c9f8b17863
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3066246
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Anubhav Rai <arai@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Tested-by: Praveen AC <pac@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-02-01 22:39:31 -08:00
Russell Xiao
b72f483520 UPSTREAM: arm64: tegra: Use consistent SD/MMC aliases on Tegra234
Tegra234 boards use a mixture of aliases for the
SD/MMC hardware blocks, which can lead to confusion.
A common method was to use mmc3 as the alias for the
eMMC because "SDMMC3" happens to be the name of the
corresponding controller in the reference manual.
This isn't a great choice because there is no hardware
named SDMMC0, so the mmc0 alias would never get used
with that nomenclature and in fact mmc1 and mmc2
wouldn't either in many configurations, thereby
creating weird discontiguous enumeration.

Instead of trying to match the aliases to the hardware
block names, use mmc0 to denote the device's primary
SD/MMC controller (typically eMMC) and mmc1 for the
secondary SD/MMC controller (typically removable SD).
In cases where eMMC is the only controller we can omit
the mmc1 alias and if a device has no eMMC, the
removable SD card can be aliased to mmc0 instead.

Bug 4182005

Co-developed-by: Russell Xiao <russellx@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://lore.kernel.org/linux-tegra/20231219171523.557928-1-thierry.reding@gmail.com/
Signed-off-by: Russell Xiao <russellx@nvidia.com>
Change-Id: I67fed6013346031ab56422b1dab804a67645cae1
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3012675
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Wei Ni <wni@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-01-24 19:54:29 -08:00
Wayne Wang
5767db6887 t23x: nv-public: add support for P3737 C5 PCIe EP
1. Add missing properties to enable C5 PCIe EP on P3737
2. Also add missing properties for some old p3737 boards

Bug 4428373

Change-Id: Ic7a6a36c6874a1d42fe903ce726b8aa075d108c4
Signed-off-by: Wayne Wang(SW-TEGRA) <waywang@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3040254
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-01-18 01:09:21 -08:00
Girish Mahadevan
ab02824e09 t234: soc: add mapping for scratch register space
Add the mapping for the scratch register space needed for StMM
TA. StMM needs to know A/B used during boot to access appropriate
GPT.

Bug 4261930
Change-Id: I84e000aa901479506d5bf66de1e2edba3440458b
Signed-off-by: Girish Mahadevan <gmahadevan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3055048
Tested-by: Ashish Singhal <ashishsingha@nvidia.com>
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Reviewed-by: Nitin Kumbhar <nkumbhar@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-01-17 09:09:41 -08:00
Anubhav Rai
b4b5c42ae1 p3785: update the i2c slave address
update the i2c slave address for supporting
shadow EDID with Lontium HDMI chip

bug 4266018
bug 4301203
bug 4168489

Change-Id: I04bae434656effdf1db8a9d90d14d000436be0a0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3009478
(cherry picked from commit af027cbe55)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3030927
Tested-by: Anubhav Rai <arai@nvidia.com>
Reviewed-by: Anubhav Rai <arai@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-01-12 15:39:29 -08:00
Jon Hunter
ab126bc380 nv-public: p3737: Disable UFSHCI
The UFSHCI controller is not supported for Tegra234 Jetson platforms and
so disable this controller. Note that this change makes no difference
because the Tegra UFS driver is never automatically loaded based
device-tree for Jetson platforms. The Tegra UFS driver does not populate
the MODULE_DEVICE_TABLE() macro and so the driver has to be manually
loaded.

Change-Id: Ifb3a588b9bbd08a71bad9a71aa59e8b0e0fc038a
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3051223
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2024-01-12 05:40:30 -08:00
Dipen Patel
3382ef1179 t23x: platform: safety: Add FSI multicore support
The recent version of the FSI FW has updated it to include multi-core
FSI support where CCPLEX can communicate with multiple FSI cores, using
per core memory carveouts. This CL reflects the changes that it is
needed to accomplish that, specifically it adds mapping of the mailbox
to each core. While at it, it also corrects the epl DT node in line with
latest changes done in the safety SOC dtsi file otherwise it will create
two epl nodes which is not desirable.

JIRA L4T-4468

Change-Id: I782b57f67c553739ac76ab835da731ceb9a63c67
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2997185
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-27 10:24:43 -08:00
Dipen Patel
2d0af855ad t23x: soc: safety: Add FSI multicore support
Enable FSI multi core support to communicate using CCPLEX fsicom demo
apps. It adds following to enable:
- add top2 hsp mailbox 5 and 4 for core 1 usage
- add FSI_CPU1 stream id for core 1 memory map in AST and SMMU
- new node per FSI core per SMMU instance

Bug 4243457

Change-Id: Id66c060d5daa1ca6458e3cbeee81dafc88904560
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2977860
(cherry picked from commit 4e450ca886 in
dev-main)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2995454
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-27 10:24:38 -08:00
Ankur Pawar
7dfa45e768 overlay: camera: IMX477: Fix half preview issue
Change IMX477 line_length to 3000 to fix the half preview
issue.

Bug 4389380

Change-Id: I5c00d487d6ccdac336c241de091df6c608a0eace
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3030085
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-13 20:54:15 -08:00
Ilies CHERGUI
1f13b70e19 nv-platform: p3740: enable I/O expander
Enable I/O expander for IGX Orin Boards Kit

Bug 4358744

Signed-off-by: Ilies CHERGUI <ichergui@nvidia.com>
Change-Id: Iecbda281e4d3979adf8dcd776917a4faad41ec86
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3029467
Reviewed-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Amulya Yarlagadda <ayarlagadda@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-13 06:09:21 -08:00
Ian Stewart
9a81385241 t23x: igx: Resize 64-bit aperture of PCIe C5
Resize 64-bit aperture of PCIe C5 controller to accommodate
endpoints with bigger BARs.

Bug 4309882

Change-Id: I8ae999df42974e5ce1144896b6d657604ce5d95c
Signed-off-by: Ian Stewart <istewart@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2987793
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: David Ung <davidu@nvidia.com>
2023-12-11 12:09:35 -08:00
Praveen AC
d2ce15ed47 overlay:t23x:Fix failed to stream argus on some nodes.
Due to change in new DT arch,proc device tree path
is changes to sysfs device tree for P3762 & P3783.

Bug 4315055

Change-Id: I92fbeff974de152a0e928a45679ece7943f50048
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3020732
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Amit Purwar <apurwar@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-08 00:39:19 -08:00
Ankur Pawar
ff7a3db2aa DT: camera: single camera sensor overlay
Add single camera sensor overlay for IMX219 and IMX477.

Bug 4385287

Change-Id: I274d5305623d8cb14df71adebd341734b96e9293
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3022244
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-06 22:39:34 -08:00
Ankur Pawar
5be1acdba0 overlay: camera: IMX477: Fix half preview issue
Change IMX477 line_length to 3000 to fix the half preview
issue.

Bug 4389380

Change-Id: I294f595fa8b5757c32e635f3827a52e554d3679b
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3021259
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-06 20:24:21 -08:00
Vishwaroop A
d0aa71b652 nv-platform: p3737: enable hdr40 spi nodes
Enable SPI nodes for Concord 40-pin header.

Bug 4397019

Signed-off-by: Vishwaroop A <va@nvidia.com>
Change-Id: I1e475f404520aa847befa591d55f67563fcdad00
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3025462
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-12-04 21:54:39 -08:00
Praveen AC
10d83fe683 overlay:p3740: Add jeston-io support for csi file.
Add jetson-io support for configuring camera 122pin
connector.

Bug 4316763

Change-Id: I5e438e81d92b40beb482c7803865d3fe69078b92
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3020356
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Narendra Kondapalli <nkondapalli@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-29 02:24:22 -08:00
Vinod Atyam
11a8b72cf5 P3767: add hdmi hotplug support for p3767
Add HDMI hotplug support to p3767 hdmi variant.

Bug 4373614
Bug 4151995
Bug 4374769

Change-Id: Ib2bcf8423030f9522674caa6bcb22c9dad2de536
Signed-off-by: Vinod Atyam <vatyam@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3020682
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Santosh Galma <galmar@nvidia.com>
Reviewed-by: Mahesh Kumar <mahkumar@nvidia.com>
Reviewed-by: Arun Swain <arswain@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-28 13:25:00 -08:00
Ankur Pawar
2dea08a1e2 DT: camera: Remove CAMERA_I2C_MUX_BUS macro
Remove CAMERA_I2C_MUX_BUS macro as its not used.

Bug 4097754

Change-Id: Ia0c67cbcdacbb2b3f8ab2ae86815143dee1047c5
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3019453
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-23 06:39:29 -08:00
Gautham Srinivasan
cb084391ac nv-platform: remove enablement of uart devices
Enabling UARTA and UARTE have been moved to upstream file. Hence, no
longer required in the override.

Bug 4148340

Change-Id: I5f8cf0a682a501ad9c8e1a27aa12e3a221ed99c0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3019988
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
2023-11-21 14:10:28 -08:00
Gautham Srinivasan
ef1ffd96ac nv-soc: remove uart and spi definition
UARTE, SPI1, SPI2 and SPI3 controller definition have moved to
upstream file. These definitions are no longer required.

Bug 4148340
Bug 4130525

Change-Id: Ibef26f9f83ca9509847e348287cfab92d75a1c44
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3019987
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
2023-11-21 14:10:23 -08:00
Gautham Srinivasan
4c2aab0767 [UPSTREAM V6.6] arm64: tegra: Add SPI device tree nodes for Tegra234
Create the device tree nodes for the SPI1, SPI2 and SPI3 controllers
found on Tegra234.

Bug 4130525

Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
(cherry picked from mainline commit bb9667d8187b58f1524a3ce203a0ddd7b107347a)

Change-Id: I3269d358f8cac2500963afa26651e3f2995a3fc6
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3019986
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
2023-11-21 14:10:19 -08:00
Gautham Srinivasan
6084ef986a [UPSTREAM V6.6] arm64: tegra: Enable UARTA and UARTE for Orin Nano
Activate UARTA and UARTE functionalities for Orin Nano.

- UARTA is accessible via the 40-pin header with pin 8 and 10 (TX/RX)
- UARTE utilizes the M2.E connector

Bug 4148340

Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
(cherry picked from mainline commit 96ff27cecbc9dec9858786228c351341372b482f)

Change-Id: Iffce03a6a159d7909fb711e56344c00cc63ac96a
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3019985
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
2023-11-21 14:10:14 -08:00
Gautham Srinivasan
5a7c289143 [UPSTREAM V6.6] arm64: tegra: Add UARTE device tree node on Tegra234
This commit adds the device tree node for UARTE on Tegra234.

Bug 4148340

Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
(cherry picked from mainline commit 940acdac99b24cc96e8c55b71e7386ce2deb05cf)

Change-Id: I3d702277dd34575f63c80383e1bf76fa9d7a2ffd
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3019984
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
2023-11-21 14:10:09 -08:00
Yi-Wei Wang
9279090408 nv-public: add support for thermal trip event
This change binds thermal trip event cooling devices to the following
events:
- sw throttling event
- hot surface event

When the bound trip point temperature gets crossed, the associated
cooling device will become active, and its state can be learnt from the
user space to take the action accordingly.

The thermal trip event cooling device is not needed for safety IGX so
disable it.

Bug 4261645
Bug 1688327

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ifa7f2dfb5c95113e9902e3ea4dfc03197065c5e5
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3015753
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-11-20 20:09:46 -08:00
Vedashree Vidwans
9bc8cd05e7 nv-platform: p3768: enable hwpm, mc-hwpm DT node
HWPM node is removed from host1x and kept inside bus@0.
Fixed name from tegra_soc_hwpm to hwpm@f100000.
Enable mc-hwpm node as well.

Bug 4336579

Change-Id: I68cfa5dd362a5cd34798c14c9400e6a8b9a43c57
Signed-off-by: Vedashree Vidwans <vvidwans@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3017663
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-16 16:24:20 -08:00
Yi-Wei Wang
62c5d9f2f6 nv-platform: p3701: separate cvm from nv-common
Remove tegra234-p3701-0000.dtsi from
tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi and have cvm-specific
file included in tegra234-p3737-0000+p3701-000*-nv.dts accordingly.

In addition, create tegra234-p3701-0005.dtsi which includes same
definitions as tegra234-p3701-0000.dtsi but with CMA size set to 512MB.
Hence,  no longer to handle the CMA size in the dynamic overlay.

Bug 4378720

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I4230f7d7a0a3cc5e189ee5a121981123bbb889c5
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3016296
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-15 23:25:01 -08:00
Yi-Wei Wang
b3d85c9765 nv-platform: restructure tegra234-p3701-0008.dtsi
Most of the entries in tegra234-p3701-0000.dtsi and
tegra234-p3701-0008.dtsi are same, thus include tegra234-p3701-0000.dtsi
in tegra234-p3701-0008.dtsi and handle the different blocks in
tegra234-p3701-0008.dtsi.

Bug 4378720

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I4dc68d3f25651f9213f8b42f9e66000071c9234c
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3016679
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-15 23:24:56 -08:00
Yi-Wei Wang
c194f14a21 nv-platform: replace INA, hdr40_vdd_3v3, and CMA
The on-board INA sensors and hdr40_vdd_3v3 regulator should be defined
in CVB-specific device tree instead of CVM-specific.
CMA should be defined in CVM-specific instead of CVB-specific.

Bug 4378720

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I31ebb14ffacb6d1fb58ba3848f4ce1ac5322655f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3016311
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-11-15 23:24:51 -08:00
Brad Griffis
e5ce927b18 overlay: add name to tegra234-carveouts.dtbo
Add a name to the overlay.  This is helpful when debugging issues
related to overlays.

Bug 4290389

Change-Id: I08d0c991bcd2eeada0e9ab1a8254c902b713dfc2
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3016116
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-15 00:39:16 -08:00
Brad Griffis
04b77e5935 nv-platform: remove p3767-0000 cd-gpios override
The polarity has been corrected in the upstream file.  We no longer
need to specify the cd-gpios for p3767 in the override file.

Bug 4307643

Change-Id: Ie93b20953b0e1ff2e573be4639dbe35ed05a286e
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3015537
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-14 06:09:33 -08:00
Brad Griffis
0ffaaa271f arm64: tegra: Fix P3767 card detect polarity
The SD card detect pin is active-low on all Orin Nano and NX SKUs that
have an SD card slot.

Bug 4307643

Fixes: 13b0aca303e9 ("arm64: tegra: Support Jetson Orin NX")
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: Ib62725a90625027150f7b55c41af0f18bc5f5e69
(cherry picked from mainline commit c6b7a1d11d0fa6333078141251908f48042016e1)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3015536
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-14 06:09:28 -08:00
Brad Griffis
3a08e89b02 arm64: tegra: Fix P3767 QSPI speed
The QSPI device used on Jetson Orin NX and Nano modules (p3767) is
the same as Jetson AGX Orin (p3701) and should have a maximum speed of
102 MHz.

Bug 3854990

Fixes: 13b0aca303e9 ("arm64: tegra: Support Jetson Orin NX")
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: I150f32186f5102ff3e09873fc1c2784ebb3df87e
(cherry picked from mainline commit 57ea99ba176913c325fc8324a24a1b5e8a6cf520)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3015535
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-14 06:09:23 -08:00
Gautham Srinivasan
4351270491 overlay: p3767: enable C4 based on odm data
Handle alternate ODMDATA configurations related to PCIE EP mode on C4

Bug 4076164
Bug 4052872

Change-Id: Idf8a48f9915d928ed91da9382dd5e793a01cfeb9
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3013330
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-09 22:40:58 -08:00
Gautham Srinivasan
fb7d1ce43e nv-soc: Add PCIe C4 EP DTS node
Add PCIe C4 EP controller definition in device tree for T234 devices

Bug 4076164
Bug 4052872

Change-Id: I5fc4755c2105bc7c7cae4c41b7404002b2a60458
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3012402
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-09 22:40:54 -08:00
Ankur Pawar
c28baeab52 camera: orin-nx: fixes in IMX477+IMX219 overlay
Fix the following in the overlay
1. Put IMX219 lens node was bus@0 parent node.
2. sysfs-device-tree path of IMX219 v4l2-lens.
3. Node name of second IMX219 sensor.

Bug 4359952

Change-Id: I0dd6973de09f28bcdbef3951eec1cc1d2297c5ca
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3011007
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-09 04:41:23 -08:00
Brad Griffis
71752edda2 nv-public: SD card fixes for Concord and Nano
The power supply info is missing for the SD card interface:

1. SD card for Concord is implemented at the board level, not in
   the module itself.  Accordingly the updates are in the board
   files (p3737) rather than the module (p3701).

2. SD card for Orin Nano is implemented at the module level.
   Accordingly the updates are in the modules files (p3767)
   rather than the board files (p3768).

Bug 4307643

Change-Id: Id2bc9071387b3a16141db68076d29f0158f82cce
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3013069
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-08 18:09:28 -08:00
Gautham Srinivasan
4ce6d86157 nv-soc: add infrastructure for aon_echo
Add aon_echo node which is disabled by default. This
can be enabled with the feature in the SPE firmware.

Bug 4296173

Change-Id: If29fbcd01b978dec2dcaa3631ee0c14e0c4ab038
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2954310
(cherry picked from commit 9275899572)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2989797
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-11-08 09:24:34 -08:00
Yi-Wei Wang
58a9253a09 nv-platform: Disable CV engines for Orin Nano
Disable DLA and PVA for Orin Nano as they are not present.

Bug 4338263

Change-Id: I47377db6daa5db9894fa5783bfdbad8ae3a7a9c1
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3008711
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
2023-11-06 00:25:06 -08:00
Bibek Basu
723872c59c t234: igx: set default uart speed
Since controller 31d0000 speed is not passed from device tree,
probe failed.

Bug 4332566

Change-Id: I7087ba15001b22b259235e87e3591f0707b8a785
Signed-off-by: Bibek Basu <bbasu@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3007386
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-11-03 07:09:57 -07:00
Jon Hunter
d5f38ecfe7 t23x: nv-public: Update ina3221 properties
The ina3221 driver has been updated to pull in the latest upstream
changes. The property 'summation-bypass' has been replaced with
'ti,summation-disable' in upstream and so update the device-tree
accordingly.

Finally, remove the 'io-channel-cells' property because this is not used
at all and hence not needed.

Bug 3851858

Change-Id: Id1c1e7e994b185167f7b17ae682e26cb886f2704
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3005677
(cherry picked from commit 4fdf4e123b)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3005156
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-by: Ninad Malwade <nmalwade@nvidia.com>
2023-11-03 05:25:03 -07:00
Brad Griffis
abe7182afe nv-soc: add /firmware/uefi node
UEFI requires a node to exist at /firmware/uefi.

Without this node Orin Nano overlays failed to apply properly.

Bug 4273952

Change-Id: I123e5182ba47b5ffe7c562db284a42809fcdbca6
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3007596
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-31 14:39:19 -07:00
Kirill Artamonov
d5d3b69f29 nv-soc: increase camera dbg frame size
Increase dbg frame size to match updated firmware-api specs.

Jira CT26X-461
Bug 4356250

Change-Id: Ifee25c658b4bd5c87f07e801d0269bf3632871b7
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3004145
(cherry picked from commit 8044e67823)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3006648
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-10-31 06:09:25 -07:00
Shubhi Garg
22beb61c76 t23x: overlay: add aliases for tegra and vrs rtc
This change adds alias to bring rtc0 as VRS RTC and rtc1 as
tegra rtc upon kernel boot. This way VRS RTC being rtc0 will
be used to sync system time since VRS RTC has battery backup.

Bug 3937658

Change-Id: I67319ed444cebe476ab1b76391fe6817df7b0b09
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2999459
(cherry picked from commit ae60381081fc01aa3724c34b173b56a74b64fcf8)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2999330
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-31 01:39:48 -07:00
shaochunk
c0daab9962 t23x: overlay: remove dt devfreq config for gpu
Remove the dt configuration for gpu devfreq
because dt should contain only hw-related
configuration.

The gpu devfreq configuration would be supported
by nvgpu module parameters.

Bug 4084478

Change-Id: I9dfef11648203c6af281e980d3a5790b36742414
Signed-off-by: shaochunk <shaochunk@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2978819
Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com>
Reviewed-by: Ninad Malwade <nmalwade@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-23 05:09:44 -07:00
Ashish Mhetre
c601da8e39 overlay: Enable mc-hwpm DT node
Enable device tree node for mc-hwpm driver in T234 hope overlay file.

Bug 4235766

Change-Id: I855a48e91dff4431137894b2315600da9e014574
Signed-off-by: Ashish Mhetre <amhetre@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3001297
Reviewed-by: Ketan Patil <ketanp@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
Reviewed-by: Pritesh Raithatha <praithatha@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-20 05:24:20 -07:00
Yi-Wei Wang
ba1e77ae66 t23x: overlay: support p3701-0000-as-p3767-0004
Add tegra234-p3737-0000+p3701-0000-as-p3767-0004.dtbo which can be
applied on p3701-0000 and p3701-0005 to emulate p3767-0004.

Bug 4196830

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I32ec52f637c474a0c3ed86ad54a191b07c67cfcd
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3000667
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-20 03:11:39 -07:00
Yi-Wei Wang
4348607bf9 t23x: overlay: support p3701-0000-as-p3767-0003
Add tegra234-p3737-0000+p3701-0000-as-p3767-0003.dtbo which can be
applied on p3701-0000 and p3701-0005 to emulate p3767-0003.

Bug 4196830

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: If2328ce300658b21adda268e052de83d5fa89800
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3000485
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-20 03:11:28 -07:00
Yi-Wei Wang
b2de83215c t23x: overlay: support p3701-0000-as-p3767-0001
Add tegra234-p3737-0000+p3701-0000-as-p3767-0001.dtbo which can be
applied on p3701-0000 and p3701-0005 to emulate p3767-0001.

Bug 4196830

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: If5bf7a21ba20f5af19f680b4a6d92f8999e5be41
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3000424
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-20 03:11:17 -07:00
Yi-Wei Wang
efe6abb8fa t23x: overlay: support p3701-0000-as-p3767-0000
Add tegra234-p3737-0000+p3701-0000-as-p3767-0000.dtbo which can be
applied on p3701-0000 and p3701-0005 to emulate p3767-0000.

Bug 4196830

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I6a96ec751996724a8bccad0fa1ede582b682a31e
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3000376
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-20 03:11:06 -07:00
Yi-Wei Wang
85d6d86a2c t23x: overlay: support p3701-0000-as-p3701-0004
Add tegra234-p3737-0000+p3701-0000-as-p3701-0004.dtbo which can be
applied on p3701-0000 and p3701-0005 to emulate p3701-0004.

Bug 4196830

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I68201cacdec750ff3aed3ecb161ef8063b3749df
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2978923
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-20 03:10:56 -07:00
Brad Griffis
8f0cbdad83 nv-public: remove REMOVE_FRAGMENT_SYNTAX
These preprocessor conditionals were a temporary step to facilitate
step by step reviews.  Remove them and fix indentation.

Bug 4290389

Change-Id: Iecdbdf1869bec00538530d59420622d8563a116a
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3000004
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-19 18:24:24 -07:00
Gautham Srinivasan
ff77a8a1cd overlay: p3767: add hdmi dcb overlay
Add DCB overlay to support HDMI

Bug 4260444

Change-Id: I11b955e11928794b7393eb9f52ba47cf81740601
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2999888
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Vinod Atyam <vatyam@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-19 16:09:50 -07:00
Brad Griffis
ee6247a701 nv-public: add new nv dtb files
In this commit:

1. The large platform overlays are being directly built into
   a new base "nv" dtb. The names of these new dtbs directly tracks the
   name of the upstream dtb that it extends. For an upstream dtb named
   <base>.dtb the new corresponding new file is named <base>-nv.dtb.

2. The source files for <base>-nv.dtb are located in the nv-soc/ and
   nv-platform/ files.  Those files originated in the overlay/
   directory but are moved to reflect that they are no longer part of
   an overlay.

This new layout seeks to simplify building and handling of dtb files
while retaining close compatibility with the upstream dts sources.

Bug 4290389

Change-Id: Ic812e8e16c5515bb3e17b99a23815a99f67c42a2
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2996468
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-18 16:39:31 -07:00
Brad Griffis
a011a22ad5 overlay: remove fragment syntax with preprocessor
As part of the process to transitioning to a full featured
base dtb, we need the ability to include various files without
completely rewriting them.  This will be an incremental step.
Eventually these preprocessor commands will be removed and
the indentation fixed.

This change is not intended to change any behavior.  It is merely
adding the infrastructure for future patches.  It will be possible
for a base dts file to define REMOVE_FRAGMENT_SYNTAX and directly
include these files.

Bug 4290389

Change-Id: I778bc25dcd7e4fa96f003882e34e38fe5aaf40e7
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2992336
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-17 16:54:28 -07:00
Brad Griffis
323d1fd8b6 overlay: move camera-related files to dynamic overlay
Cameras are optional and so they should be part of the dynamic overlay.
Keep the soc-related camera file in the static overlay.

Bug 4290389

Change-Id: I216f271d39fb9e1e1585ede14d3ca28e5d49fd6c
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2996299
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-17 16:54:23 -07:00
Brad Griffis
10775b443a overlay: refactor fragments for main overlays
Use 1 fragment with target '/'. This makes it easier to migrate code
from an overlay to a base dtb.

Bug 4290389

Change-Id: I8427d9bb1b42d9cd7923a72a3ab026b4db4b6924
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2992246
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-17 13:24:24 -07:00
Kartik
2b8131ec80 Revert "overlay: p3701: Remove unused interrupts from timer node"
This reverts commit f29d381a73.

Bug 4173986

Change-Id: Ic0052acfb4af2641e76bd3b9bb9309f78e96cbc2
Signed-off-by: Kartik <kkartik@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2995357
(cherry picked from commit 4db512925f50748f39f68ff80db7190e51b30785)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2998483
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-17 00:09:32 -07:00
Kartik
5304377476 arm64: tegra: Use correct interrupts for Tegra234 TKE
The shared interrupts 0-9 of the TKE are mapped to interrupts 0-9, but
shared interrupts 10-15 are mapped to 256-261. Correct the mapping for
the final 6 interrupts. This prevents the TKE from requesting the RTC
interrupt (along with several GTE and watchdog interrupts).

Bug 4173986

Change-Id: I5357b9c57d0d01345da54e78a8d8d4506ac8971d
Reported-by: Shubhi Garg <shgarg@nvidia.com>
Fixes: 28d860ed02c2 ("arm64: tegra: Enable native timers on Tegra234")
Signed-off-by: Thierry Reding <treding@nvidia.com>
Tested-by: Kartik <kkartik@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2995358
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
Reviewed-by: Kartik Rajput <kkartik@nvidia.com>
(cherry picked from commit bc36839056)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2998420
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Kartik Rajput <kkartik@nvidia.com>
2023-10-17 00:09:27 -07:00
Brad Griffis
8659e49247 overlay: add overlay-name to dynamic overlays
Fixes: "overlay: put runtime fragments in separate overlay"

Newly created overlays were created in the above patch, but the names
were omitted.  Add overlay-name to each new overlay.

Bug 4290389

Change-Id: I3f9b8f44d3dc127f840d7e823500c026318234be
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2997389
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-16 14:39:19 -07:00
Sheetal
58e42d9b14 p3768: Enable APE nodes
- Enabled APE nodes.
- For Jetson IO tool:
  - Added required labels.
  - Defined regulator node.

Bug 4287075

Change-Id: I94a92fb460e00da2c59b9e537514a5d0a5b8710e
Signed-off-by: Sheetal <sheetal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2996845
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-16 07:54:21 -07:00
Ankur Pawar
014aa0884d DT: add interconnect information for RCE
Bug 3997304

Change-Id: I5cd5e532a8a5303367068cf4276a424a5770a12e
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2912199
(cherry picked from commit fa51d49880)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2997832
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-16 05:24:50 -07:00
Gautham Srinivasan
27a9472777 overlay: add missing "SPDX-FileCopyrightText" tag
svcacv is giving -1 as SPDX-FileCopyrightText tag was missing in
the license header. Fix them.

Bug 4327489

Change-Id: Ie71faf9d60550318d4722bdc0559af4cd2d3b441
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2995601
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-13 02:43:40 -07:00
Brad Griffis
af4c57cd95 overlay: put runtime fragments in separate overlay
This is an incremental step toward having a "with-oot" base dtb
that contains both the upstream dtb as well as the nvidia-oot
data in a single statically built dtb.

Note that currently the base dtb is stored and managed in the
rootfs via extlinux.conf file.  The overlays however live inside
the UEFI partition.  The ultimate goal is to have consistency
in how the dtb files are managed.

After we combine the data from nvidia-oot overlay dtb into the
future "with-oot" base dtb then we can move the remaining overlays
to the rootfs and manage all dtbs/overlays there.

This patch takes the first critical step toward this goal by
separating the static overlay data from the dynamic overlay data
that gets applied conditionally at run-time.

Bug 4290389

Change-Id: I403ac84b0737368b8bc96952552729ab7e46802b
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2991524
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-11 21:56:45 -07:00
Ankur Pawar
b6654615e2 camera: orin-nx: correct the lens path
IMX219 lens node is under bus@0, give same path in
sysfs-device-tree property.

Bug 4273295

Change-Id: Ic0a37e8f5be4af89052d0d6a7bf74c654330dd49
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2974784
Reviewed-by: Addarsh Srivastava <addarshs@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-11 21:56:35 -07:00
Brad Griffis
2fa2e4b191 overlay: p3768: enable i2c5
UEFI expects that i2c5 is enabled and will throw an assert otherwise.
In k5.10 dtb this was enabled there as well, so enabling here for
consistency and to avoid issues with UEFI.

The i2c5 controller is necessary for HDMI use case but it is ok to
have it enabled for DP use case.

Bug 4327032

Change-Id: Ib9af7c95198b7650df2537d0859ed8a5b8af1aa0
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2995550
Reviewed-by: Gautham Srinivasan <gauthams@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-11 19:40:41 -07:00
Gautham Srinivasan
a38de0f405 overlay: p3768: PCIE alternate UPHY config
Manage PCIe (C7 and C9) controllers using odm-data field.
PCIe alternate config "gbe-uphy-config-9" uses C7x1 and
C9x1 controllers.

Bug 4052872

Change-Id: I9608b17f0a99e0fd382e3f9c6da72753626e7f2c
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2993862
Reviewed-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-11 19:40:31 -07:00
Akhil R
e9f24537f9 overlay: soc: Update Tegra SE compatible
Update Tegra SE compatible to support the new driver
instead of tegra-se-nvhost driver.

Bug 4221414
Bug 3579794

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Change-Id: I8534daf772b1f0a514d691ad068ea9891fc1400b
(cherry picked from commit 550cab93e5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2992685
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-11 19:40:08 -07:00
Mark Zhang
67f121772d dts: optee: Add fTPM nodes
This patch adds several fTPM device tree nodes. These nodes are to pass
4 things from MB2 to OP-TEE:
- Silicon identity private key
- Silicon identity public key
- MB2 event log signature
- TOS event log signature

Bug 3960022

Change-Id: Id02dbcc4d92968eb93420bf327b243e5255ef16e
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/2915245
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2978522
Reviewed-by: Nitin Kumbhar <nkumbhar@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Mark Zhang <markz@nvidia.com>
2023-10-09 23:54:52 -07:00
Ankur Pawar
6d346a9167 concord: use predefined macro JETSON_COMPATIBLE
SKU8 is not included in compatible string of
camera sensor overlay. This is causing issue of
sensor not detected on SKU8 board.

Use JETSON_COMPATIBLE macro which has all
SKUs.

Bug 4301117

Change-Id: I93d34a6f8ece632bf25d7cd65a037bf3351b450a
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2988039
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-08 21:24:15 -07:00
Gautham Srinivasan
3ef47891d6 overlay: enable GTE node for Orin devices
Enable GTE node for Orin (AGX, NX and Nano) devices.
This is used by BMI and NVPPS driver.

Bug 4235325

Change-Id: I162311ef75e67ce65ac00679469de0882c6d8f99
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2990757
Reviewed-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-06 10:39:15 -07:00
Dipen Patel
544a766157 overlay: safety: Enable I2C SW fault reporting
In the safety environment, I2C should be able to report the pre-defined
faults through EPL to FSI. This CL enables the missing DT configuration
which enables reporting.

Bug 4289946

Change-Id: Ib3db16fb822aff61c89dd03fbbcd87fc48f8aab9
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2985294
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-10-03 20:54:26 -07:00
Kartik
dd6e6b7b38 overlay: p3701: Override timer interrupt property
RTC interrupts are not working as timer-tegra186 driver disables
the RTC interrupt.

Override timer interrupt property and only use IRQ 0 for
interrupts.

Bug 4173986

Change-Id: I106b09b7711b4a14bbaab5354fa75919f3bd851a
Signed-off-by: Kartik <kkartik@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2986600
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
(cherry picked from commit f29d381a73)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2989927
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-10-03 03:11:57 -07:00
Brad Griffis
bd791e40d2 overlay: p3768: enable ofa for all p3767 skus
All p3767 SKUs support OFA.  Enable it.

Bug 4283094

Change-Id: Ie0e90e8ba42c5786ace4c829ff534426851b2423
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2986226
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-09-27 21:54:30 -07:00
Yi-Wei Wang
b23f1c38c4 t23x: overlay: Disable c7 cpuidle for safety IGX
Only c1 (WFI) is needed for safety IGX, so disable the c7 cpuidle
status. As per upstream cpuidle-psci.c driver, the default
archictectural back-end already executes WFI on idle entry, so the idle
driver won't be initialized if only WFI is supported.

Bug 4084478

Change-Id: Id870cf22a7e5806e7f96c566c9782d6c1620e09c
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2986366
Reviewed-by: Johnny Liu <johnliu@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Johnny Liu <johnliu@nvidia.com>
2023-09-27 04:23:09 -07:00
Johnny Liu
308d171850 overlay: enable cpuidle for p3767
Enable C7 cpuidle state for p3767

Bug 4283702

Signed-off-by: Johnny Liu <johnliu@nvidia.com>
Change-Id: Iefb9b0c910f78a3a663253409c2e6ec034a06ac5
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2978878
(cherry picked from commit 73569dc99b)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2979382
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-27 04:18:39 -07:00
Praveen AC
3ccdb3d2be t23x: Disable cam tsc driver by default.
Since driver is enabled by default,Causing kernel
warnings during boot time.
Since cam_cdi_tsc driver is dependent on nv_hawk_owl driver
& in turn it depends on max96712 driver.
Now, cam_cdi_tsc driver is enabled from sensor overlay dt file.

Bug 4268876

Change-Id: I90bf4e8181f131169f2979544ca54af8e4a3917a
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2979516
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-25 07:17:09 -07:00
Praveen AC
1f91d5e8f5 t23x: Add Hawk & Owl support on P3762/P3783.
Made following changes:
1.Add 4xHawk & 4xOwl module support on P3762 & P3783.
2.Fix simultaneous streaming of Owl & Hawk.
3.Update EEPROM address for Hawk & Owl.
4.Add DT support for TSC gen.
5.Add virtual i2c mux node for p3762.
6.Add overlay support for P3762 & P3783.

Bug 3620984
Bug 3562348
Bug 3866131
Bug 3932004
Bug 4096788
Bug 4091221
Bug 4146784
Bug 4245526

Change-Id: I15d731249234711c706c2fb8f6a3cfc1d9fc125d
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2979458
Tested-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-25 07:17:04 -07:00
Johnny Liu
be3edd7c6a overlay: add interconnects information for vi
THI is inside Falcon, and Falcon is inside VI. Add essential
interconnects information for each individual device related to VI.

Bug 4199055

Signed-off-by: Johnny Liu <johnliu@nvidia.com>
Change-Id: I87a5a746371a0d712312d71be45465c2ea78beab
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2977696
(cherry picked from commit aa5a375761)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2982433
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-21 10:41:26 -07:00
Dipen Patel
01fcbefa8d overlay: safety: Enable hsi error injection
The IPs with no local error collator use error injection driver to
report the errors to FSI. This change enables is by default for the
safety package (SEP).

Bug 4289946

Change-Id: Ib126905d2806fa5baebaaf8dee0614fef96103f4
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2981057
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Tested-by: Prasun Kumar <prasunk@nvidia.com>
2023-09-21 10:40:48 -07:00
Ankur Pawar
b07915c32b concord: configure camera sensor using jetson-io
Add camera sensor overlay for auto detection
and selection using jetson-io tool.

Sensor enabled in this gerrit:
1 E-CON AR1335
2 E3653 AR0234 Dual Hawk
3 IMX390

Multiple overlay fragments converted to one fragment for
1 E3331
2 E3333

pca945x I2C mux driver fix the bus address
for camera sensor when it reads force_bus_start
property in DT, which has value 0x1e = 30. To remove
this hard coding, delete force_bus_start, devname
properties. And use sysfs-device-tree instead of
proc-device-tree.

Bug 4191790
Bug 4097754

Change-Id: If3fd7b5ef78509f30d7609363883be58855a0445
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2957103
(cherry picked from commit 0acae56138)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2981862
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Praveen AC <pac@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-20 09:40:45 -07:00
Santosh Galma
1762db59f1 Revert "t23x: dts: enable only few display clocks in simplefb"
This reverts commit 42a05491c8.

Reason for revert: This temporary change is no longer needed with proper fix in place

Bug 4197103
Bug 4262153
Bug 3767804

Change-Id: Ie654ae1131612026d96fca7d52e0ea086136352c
Signed-off-by: Santosh Reddy Galma <galmar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2979788
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
2023-09-19 20:41:00 -07:00
Gautham Srinivasan
3d3748f62b overlay: p3768: Enable vrs10 power seq
Enable vrs10 power sequencer for Orin NX/Nano devices.
This is used for rtc alarm.

Bug 3801368

Change-Id: I74a54ecb2099058840b4b1e199603d0f8946d9b4
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2977266
Reviewed-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-19 00:09:18 -07:00
Johnny Liu
723deb5202 p3701: overlay: Disable unconnected channels
Disable unconnected ina3221 channels so that those information are not
visible in the sysfs.

Bug 4168926

Signed-off-by: Johnny Liu <johnliu@nvidia.com>
Change-Id: Ia94f3f3cc0efe20371297faeabfe374b6db63982
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2925713
(cherry picked from commit 180b6ef7a5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2979151
Reviewed-by: Yi-Wei Wang <yiweiw@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-13 13:15:47 -07:00
Johnny Liu
98c4dcc03d overlay: enable cactmon, nvdec, nvenc, nvjpg
This change enables central actmon, and multimedia engines, such as
nvdec and nvenc.

Remove one redundant dts node of nvjpg.

Bug 4273157
Bug 4273121
Bug 4273117

Signed-off-by: Johnny Liu <johnliu@nvidia.com>
Change-Id: Id00aaaeb6af65060a37efc91d5e5b81cc7c0f70f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2974745
(cherry picked from commit b07b8ac217)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2977965
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-11 10:09:59 -07:00
Ankur Pawar
17e11bcdae orin-nx: configure camera sensor using jetson-io
Add camera sensor overlay for auto detection
and selection using jetson-io tool.

Sensor enabled in this gerrit:
dual IMX219
dual IMX477
4 lane dual IMX477
IMX477+IMX219

Bug 4191790

Change-Id: I9dad8c2c731d46533854ee25b3bd092c539fb08c
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2957157
(cherry picked from commit 35cf164bfb)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2974949
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-08 13:56:03 -07:00
Shubhi Garg
8d2787a534 overlay: correct VRS parent irq setting
In >=K5.15, PMIC IRQ is mapped using wake ID number instead of
IRQ number if IRQ is wake capable.

Bug 4173986

Change-Id: I1add39ee56d49603e45af6d216012e3a190fc990
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2969742
(cherry picked from commit ddc6a3414f)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2974990
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-08 06:15:05 -07:00
Aniket Bahadarpurkar
c3ca171415 overlay: Reduce camdbg carveout
Halve camdbg carveout for DRAM optimization

Bug 3995285

Change-Id: Ic5ca2b3c9dfee1fe54e50073d008c0e3f893e0e6
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2902774
(cherry picked from commit 4c979cbaf7)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2971528
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-09-08 05:01:02 -07:00
Santosh Reddy Galma
3d076d0290 soc: t23x: kernel-dts: fix display reserved region
- add "no-map" DT property to display reserved region DT
node to inform memory subsystem and prevent reserved
region fall into generic system pool of memory.
- add "memory-region" DT property to display DT node
with phandle to display reserved region for IOMMU to
map the region into display IOVA space.
- change display DT node alias name from "dc0" to
"display" to align the naming with Orin display
naming convention.

Bug 3601162

Change-Id: I2478765fc07c6e0808f86ad8b610e01df0679781
Signed-off-by: Santosh Reddy Galma <galmar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2973132
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-07 11:26:08 -07:00
Ankur Pawar
7ab4f383f1 concord: configure camera sensor using jetson-io
Add camera sensor overlay for auto detection
and selection using jetson-io tool.

Sensor enabled in this gerrit:
IMX274
IMX318
E3333
IMX185

Bug 4191790

Change-Id: I6b5aba39828d5bc3ffba216edc49370781def9c8
Signed-off-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2902663
(cherry picked from commit 11e6f4528d)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2971627
Reviewed-by: Praveen AC <pac@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-06 11:26:15 -07:00
Shubhi Garg
67aec33442 t23x: overlay: enable mttcan for Orin AGX
Orin AGX has 2 mttcan controllers on 40-pin header.
Enabled controllers for >=K5.15

Bug 4228080

Change-Id: Icbe95ba3abcf151edbe65b0d4bbd3120a006757f
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2973953
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-09-05 04:12:34 -07:00
Bitan Biswas
a81f5749f1 nv-public: t23x: select concord camera sensor
Select concord specific camera sensor
tegra234-p3737-0000-camera-imx274-dual.dtsi from
concord top level DT file

bug 3586361

Change-Id: I57493c234ff880c6d262e1a2be20873b6e1ec700
Signed-off-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-on: http://git-master/r/2920667
(cherry picked from commit 25e24d0f63)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2970457
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-05 04:11:42 -07:00
Vinod Atyam
42a05491c8 t23x: dts: enable only few display clocks in simplefb
- earlier all display partition clocks were enabled
in simplefb driver to prevent Kernel CCF from disabling
clocks as it could result in display going blank
depending on which head/SOR and display clocks were
enabled by UEFI driver.
- But this unconditional enabling of clocks results in
higher refcounts for few clocks which isn't required and
this results in clocks not actually getting disabled when
display driver tries to disable them. For example, vpll0
clock doesn't get disabled due to higher refcount and
results in failure to set rate.
- So, keep only few clocks required to prevent the display
partition from getting clock gated.
- This will result in display blank just around kernel booting
to shell and need to be fixed in another set of changes to
enable full glitchless boot.

Bug 4167760

Change-Id: I03adbf238e8ffcecd5aa5c78f2cb6b929ece807b
Signed-off-by: Santosh Reddy Galma <galmar@nvidia.com>
Reviewed-on:
https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/2930154
(cherry picked from commit b99c771b042cf52eed5377b1b928c9a9a330a4f3)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2956935
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-09-05 01:57:17 -07:00
Abhishek Mainkar
46064c31c3 t23x: overlay: create alias for nvdla controllers
Alias for nvdla controllers is needed for deriving the path of
controller node.

Bug 3761540

Signed-off-by: Abhishek Mainkar <abmainkar@nvidia.com>
Change-Id: Ie078a8051d363ab22bf7059e1ae77d05e2fb38f3
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2918220
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
(cherry picked from commit 7f63b010c9)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2969993
Reviewed-by: Ashish Singhal <ashishsingha@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-09-04 04:28:07 -07:00
Brad Griffis
ee2a9831fe overlay: nx/nano: enable dce and display
Enable DCE and display nodes for Orin NX/Nano devices.

Bug 4182533

Change-Id: I528d2439e5cfa3e752ca3e3d2ff7f12bf85f778d
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2966248
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-09-01 11:57:16 -07:00
Brad Griffis
5888137f08 t23x: overlay: remove tegra234-p3768-0000+p3767-0005
There should only be one overlay for p3768 carrier board and it
supports all module variants through use of the
tegra234-p3767-sku-handling.dtsi file.

For now the p3768 overlay will utilize the "corepair" instead of
"cluster" thermal cooling as it is compatible with all p3767
modules.  The "cluster" cooling would be preferred for SKU 0, but
it will soon be upstreamed to the base dtb.  To simplify overlay
maintenance we will use "corepair" for now.

Bug 4204734

Change-Id: I3908eca02b62a6a07f6ce7e7814cddab6f56449e
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2969217
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-08-30 10:42:12 -07:00
Asha Talambedu
41d6987300 t23x: prometheus: Add overlays for Hope DevKit
Following device-tree overlays for Orin Hope Developer Kit
are added:

1. M.2 Key E header
2. M.2 Key B header
2. Jetson 20-pin GPIO header

And header defining the compatible string is also added

Bug 3966930

Change-Id: I40012c496316f93eff5789fd441f42c96b1d35f0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2953681
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Dara Ramesh <dramesh@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-29 08:56:48 -07:00
Vishwaroop A
6d442ea3b4 p3701: overlay: add spi device nodes
Add support for SPI device nodes for
spi controllers.

Bug 4159700

Change-Id: I09f1557a7dd4e87201605075235a58710171d85a
Signed-off-by: Vishwaroop A <va@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2925735
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-29 08:56:42 -07:00
Gautham Srinivasan
288d8b36df overlay: p3768: Reduce pcie link speed for Orin Nano
Orin Nano SKUs (3, 4, 5) have a POR to support PCIe Gen3. By default,
all Orin SKUs support PCIe Gen4. Add overlay to update link speed to
Gen3 for Orin Nano SKUs.

Bug 3998955

Change-Id: I2fcd6ff930dd31251b8023f4a15abf5cea2a1c80
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2918315
(cherry picked from commit 36d06e7082)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2967678
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-26 22:29:13 -07:00
Gautham Srinivasan
284c1f1c62 overlay: tegra234: Update UARTB node
Following are the updates made for UARTB in device tree:
1. Add compatible string "nvidia,tegra234-uart", "nvidia,tegra20-uart"
in base overlay and "nvidia,tegra194-hsuart" in platform overlay
2. Use definitions GIC_SPI, TEGRA234_IRQ_UARTB and IRQ_TYPE_LEVEL_HIGH
3. Remove parent clock names as upstream driver do not use it
4. Move reset-names to platform overlay

Bug 4148340

Change-Id: I4d0c6456023233df019bf54b9cc220c45d3c0608
Signed-off-by: Gautham Srinivasan <gauthams@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2916558
(cherry picked from commit 6c91a6b646)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2967772
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Jonathan Hunter <jonathanh@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-25 12:41:29 -07:00
Ashish Mhetre
bf73cb3635 overlay: Add mc-hwpm DT node
Add device tree node for mc-hwpm driver in T234 overlay files.

Bug 4235766

Change-Id: I7deb3278a8796e51ed35235ee5ac8ed2c45eec9b
Signed-off-by: Ashish Mhetre <amhetre@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2963200
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-22 10:11:58 -07:00
Anubhav Rai
def89cea03 prometheus: remove voltage regulators in HDMI-CSI
remove voltage regulators from DTB to fix flash failure

bug 4243602
bug 4231431

Change-Id: I7f3c7e1098f321063efdd63e949ed7b8e4fdf4b5
Signed-off-by: Anubhav Rai <arai@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2962743
Reviewed-by: Ankur Pawar <ankurp@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-16 15:41:16 -07:00
Anubhav Rai
526f30e7a0 prometheus: add HDMI CSI bridge
add HDMI CSI bridge overlay

bug 4231431

Change-Id: Ie510275f5493d7cfb5113d4841d3e96ddd101e9d
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2959976
Reviewed-by: Amulya Yarlagadda <ayarlagadda@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Amulya Yarlagadda <ayarlagadda@nvidia.com>
2023-08-15 17:12:19 -07:00
Laxman Dewangan
3b03f7cf15 tegra234: p3737-0000: Move audio codec to base from overlay
The audio codec and sound nodes are added into the base DTS
file in mainline. Hence, to align the base DTB with mainline,
move the audio codec from overlay file to the base file.

Cherry picked from commit f3e2de01530fdeb1317d7680740f0b5894ffd607
Change: Partial integration limited to codec only. Rest of changes
        are already integrated.

Bug 4037899

Change-Id: I0d4835b2d1503610261dacc3049d61514592fea2
Signed-off-by: Mohan Kumar <mkumard@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/+/2949578
(cherry picked from commit 2cf1cedaa4)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955889
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:47 -07:00
Laxman Dewangan
5d38cfaa63 tegra234: Add ethernet node properties in base file
Add properties of ethernet node which are missing
from mainline 6.5-rc2.

The properties which are used for downstream are
applied via overlay.

Bug 4037899

Change-Id: I76bba693844b6c16f4e915b9c55c152e22824117
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2949571
(cherry picked from commit f0a23e3a6e)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955888
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:41 -07:00
Laxman Dewangan
45653446e2 tegra234: Avoid new label of node which is already labeled
The i2s4 endpoint node is already labeled as i2s4_dap

bus@0->aconnect@2900000->ahub@2900800->i2s@2901300->ports->port@1->endpoint.
So avoid relabeling again of same node, use the existing label.

This will help matching the file with kernel 6.5.rc2

Bug 4037899

Change-Id: I7206510f6556406bb4fb5b311a5832b79118aa0f
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2948445
(cherry picked from commit 2bfd356c6d)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955887
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:36 -07:00
Laxman Dewangan
8b15f87dc5 tegra234: Set audio-hub clock parent as PLLP
Set the audio-bub parent clock as PLLP instead of PLLA
to align the configuration to mainline 6.5.rc2.

Bug 4037899

Change-Id: Icbbcb7e22a5ef63701b507ad53bd53f83f063fed
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2948444
(cherry picked from commit 8e955b03dd)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955404
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:31 -07:00
Laxman Dewangan
aba3fe360c tegra234: Add bootargs in base DTB tegra234-p3737-0000+p3701-0000
Add bootargs matching with mainline for the platform
tegra234-p3737-0000+p3701-0000 as
	bootargs = "console=ttyTCU0,115200n8"

Bug 4037899

Change-Id: I8123348fd8b5b6ed344a6955e7294f77612511f4
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2948332
(cherry picked from commit 6e96c24966)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955886
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:26 -07:00
Vidya Sagar
7571e0a6f2 arm64: tegra: Fix non-prefetchable aperture of PCIe C3 controller
Fix the starting address of the non-prefetchable aperture of PCIe C3
controller.

Fixes: ec142c44b026 ("arm64: tegra: Add P2U and PCIe controller nodes to Tegra234 DT")

Cherry picked from 47a2f35d9ea76d92aa2385671f527b75aa9dfe45

Change-Id: I77dd2e744c11ab657719e2ec6c8357883967e6bc
Signed-off-by: Vidya Sagar <vidyas@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/+/2947578
Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
(cherry picked from commit 3a45ac52bd)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955403
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:21 -07:00
Laxman Dewangan
dbd67b026d tegra234: Move boot argument from base to overlay
The property "bootargs" is not available in base file
available in mainline. Hence, move this to overlay file.

Bug 4037899

Change-Id: I3065495c1d7e3e6f67f456fe0359c355cb024aff
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2947548
(cherry picked from commit 377744a854)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955885
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 22:11:16 -07:00
Laxman Dewangan
18c086b748 tegra234: Align serial, usb and regulator nodes with 6.5.rc2
Do the multiple minor alignment with mainline DTS/DTSI file
as follows:
- Rearranged the clock speed of serial port based on mainline.
- Corrected the pci3v3 regualotr GPIO on P3701-0000.
- Corrected usb phy-names on Pp3768-0000.

Bug 4037899

Change-Id: Ie39ede2eaed8f7eb0a2cbee6cdde47205a358c19
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945863
(cherry picked from commit 9912826b40)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955807
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-08-12 10:13:35 -07:00
Laxman Dewangan
6728ad5ff5 tegra234: overlay: Make hardware-timestamp node disabled by default
The node of "hardware-timestamp" is added in the base file but
there is no status property. Add status property and make as
disabled. The plafrom who needs these node will enable in their
respective DTS file.

Bug 4037899

Change-Id: I960eb024978aa4d424568b785433d2b295fb4f70
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945730
(cherry picked from commit 133a575efc)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955806
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 10:13:23 -07:00
Dipen Patel
bddfa3b017 [UPSTREAM V6.4]arm64: tegra: Add Tegra234 GTE nodes
Add GTE LIC and AON GPIO nodes for the tegra234 SoC.

Bug 3961133

Change-Id: I7cd2cea078aa48f8a36b73238f2e714165f5a406
Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Acked-by: Thierry Reding <treding@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2913469
(cherry picked from commit d7506e9d3a)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955402
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 10:13:19 -07:00
Laxman Dewangan
7993466be3 tegra234: overlay: Remove unnecessarily xpads overlay
The xusb pads initialisation of the USB nodes are synced
with mainline. This have the required phy initialisation
in usb nodes. Hence, it is not required from overlay.

Remove the non-required overlay and label.

Bug 4037899

Change-Id: I3001a76802bf9413e5c4657022b162f6fc166091
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945472
(cherry picked from commit 4299749de8)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955401
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 10:13:14 -07:00
Laxman Dewangan
b3c42980f9 tegra234: sync DTS file tegra234-p3737-0000+p3701-0000 with mainline
Sync the base DTS file tegra234-p3737-0000+p3701-0000.dts to mainlne.
Following are changes:
- Add serial1 alias.
- Add reset-names on serial1.
- Add extra lines before node in i2c@c240000 to match
  with mainline.

Bug 4037899

Change-Id: I09cc3efef053dddd5334e7155010f93f09655847
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945465
(cherry picked from commit d8f331d2c7)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955805
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 10:13:08 -07:00
Jon Hunter
bdfef2159e arm64: tegra: Enable USB device for Jetson AGX Orin
Enable USB device support for the Jetson AGX Orin platform and update
the mode for the usb2-0 port to be on-the-go.

Cherry picked from commit 620405856d591ef95b01ee3e275af3a636c05010
Bug 4037899

Change-Id: Ibf888805db8e613220f017fdb039251d614908f2
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/+/2945471
(cherry picked from commit ac3c6e8acc)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955804
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 10:13:03 -07:00
Brad Griffis
18db1ecf6c t23x: overlay: add fusb301 to p3768
The carrier board of the Orin Nano Dev Kit uses the fusb301
for determining which mode to set the USB.  Add the necessary
device tree entries to enable this IC.

Bug 4119758

Change-Id: I1915487bc9fd259118c6e785da4014424e5837fc
Signed-off-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2938182
(cherry picked from commit 53cd13710e)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2954949
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-12 10:12:59 -07:00
Laxman Dewangan
6ce3794fdb tegra234: Move reset/clock names property to overlay
The serial and qspi nodes of mainline version of tegra234.dtsi
do not have the clock and reset names as properties.

Match the tegra234.dtsi and move these properties to overlay.

Bug 4037899

Change-Id: I47647ece2d99430623bbaf7af5176298405c277a
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945386
(cherry picked from commit f596618d50)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955400
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:56 -07:00
Laxman Dewangan
c56740577d tegra234: Move un-upstreamed pci nodes to overlay
PCIE nodes get added in the base DTS file
"tegra234-p3768-0000+p3767-0000" which are not up-streamed
to mainline yet. Move such nodes to the overlay file.

Bug 4037899

Change-Id: I3b58e9d6a118ab399fd4dad512b51ea59e1aa443
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945336
(cherry picked from commit fb6e6b2f31)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955593
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:51 -07:00
Laxman Dewangan
2f06fecd0c tegar234: overlay: tegra234-p3740-0002: Remove duplicate regulator
Following regulators are synced from mainline 6.5.rc-3 into the
base DTSI file.
  - regulator-vdd-3v3-dp
  - regulator-vdd-3v3-sys
  - regulator-vdd-wifi-3v3

Removing the same regulator from the overlay files.

Bug 4037899

Change-Id: I2fe5e1f1e155f2249aaba6727501fc25b68b2357
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945323
(cherry picked from commit e27a7ad362)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955592
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:46 -07:00
Shubhi Garg
c78d072374 arm64: tegra: Add PCIe and DP 3.3V supplies
Add the 3.3V supplies for PCIe C1 controller and Display Port controller
for the NVIDIA IGX Orin platform.

Cherry picked from mainline commit 2fd2ad3a839efea5919f9a64ab74dd05b9ab0058
Bug 4037899

Change-Id: I4007ce7cdedaeda28fc3587452f8e6ab48553534
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-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/+/2945322
(cherry picked from commit ba0fab9eb5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955591
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:41 -07:00
Laxman Dewangan
d02c8f169c tegra234: Resequence the nodes matching with mainline 6.5.rc3
Resequence the nodes in base DTBs which are available in mainline
as per mainline version 6.5.rc3.

This will help on matching the files with mainline. There is no
change in the nodes other than just changing their position based
on mainline.

Bug 4037899

Change-Id: I2e3d12b44e22c3182d6246edc9e77fd6e6554ac1
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2944776
(cherry picked from commit aaa02ac7bf)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955590
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:35 -07:00
Jon Hunter
ff2c20a738 arm64: tegra: Add DSU PMUs for Tegra234
Populate the DynamIQ Shared Unit (DSU) Performance Monitor Unit (PMU)
devices for Tegra234 which has one DSU PMU per CPU cluster.

Cherry picked from commit 8e0ae0fb4b91655bcdca2a4d7d16ebb81fc5d786

Change-Id: Ie4fe03fcb04d2ea7022d650e222d1c44f408e9e0
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/+/2942606
(cherry picked from commit 5b1c490da5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955399
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:30 -07:00
Laxman Dewangan
e177fde95a tegra234: Move dma-coherant property from overlay to base
The base DTSI file of tegra234, tegra234.dtsi, have already
property of dma-coherent inside node host1x@13e00000 in mainline.

Move this property from overlay to the base file to match
tegra234.dtsi with mainline.

Bug 4037899

Change-Id: I1260ce822a594308e9a0cc672c4669d185e20277
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2940603
(cherry picked from commit 5fd589841f)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955398
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:25 -07:00
Laxman Dewangan
e01cba0fe5 tegra234: Rearrange the node sequence to match with mainline
Resequence the node in file tegra234-p3740-0002+p3701-0008.dts as
per mainline to reduce the differences.

Cherry picked from commit c95711d7dbc41cc0eb8927313f8482b2b07c8280
Change: Only move the nodes location.

Bug 4037899

Change-Id: Ib42f10b58483c7a3f570a6b23e3f4ee319ce4a06
Signed-off-by: Shubhi Garg <shgarg@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/+/2940480
(cherry picked from commit 756e73e1c4)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2955589
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 15:41:20 -07:00
Mahesh Kumar
8a5a3dffda t23x: display EMC phandle for interconnects property
interconnects property need emc phandle, add it to the
interconnect property for display.

Bug 4197323

Change-Id: Ia09580ea8472d04b01b9ed71c291e26fcef51f1c
Signed-off-by: Mahesh Kumar <mahkumar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2951023
Reviewed-by: Johnny Liu <johnliu@nvidia.com>
Reviewed-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-by: Vinod Atyam <vatyam@nvidia.com>
Reviewed-by: Shu Zhong <shuz@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Tested-by: Vinod Atyam <vatyam@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-11 06:27:34 -07:00
Sameer Pujar
2e0861ddb4 tegra234: overlay: Make sound upstream compatible
It is nice to have downstream DTB working well with upstream kernel
drivers. This gives a flexibile option for users to choose between
out-of-tree and upstream audio drivers by selectively adding either
of these to deny list.

However, this does not work today because of following reasons:
  - The compatible property is overridden to work only with
    downstream machine driver. Thus upstream machine driver
    doesn't get probed and downstream machine driver cannot
    work with upstream AHUB drivers.

  - The downstream machine driver uses 'pll_a_out0' as clock
    name for PLLA_OUT0. Where as upstream uses 'plla_out0'.
    This causes probe failure in upstream machine driver with
    downstream DTB.

To fix above issues following changes are made in the overlay:
  - Extend compatible property in the overlay rather than
    overriding. This means include compatibles for both upstream
    and downstream machine drivers.

  - Align with upstream compatible clock name.

Bug 4119612

Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2948459
(cherry picked from commit 2c1a3120cd)
Change-Id: Iad2adbf1a391f99c5102b0c7e49391e6c5f39942
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2954570
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
2023-08-11 01:36:46 -07:00
Yi-Wei Wang
f29dd7b7c4 t23x: overlay: Disable throttling for safety IGX
The clock frequency should be static and avoid any kind of throttling
mechanism for safety IGX. So, this change overwrites the cooling states
of the cpufreq and the devfreq cooling devices to 0 to avoid entering
any other cooling states that could throttle the clocks.

Bug 4035713
Bug 4084478

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I9756787c0e22f9325d32a4c6f3a2e7bccdd41274
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2952583
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-08-09 00:11:34 -07:00
Yi-Wei Wang
74f3a2846e t234: overlay: Enable thermal slowdown features
As slower clock frequency generates less heat, this change enables
thermal slowdown features which throttles CPU clock and GPU clock
when the passive trip points are crossed.

It's worth mentioning that all the CPU cores within the same cluster
are designed to operate at same clock frequency for Tegra234 platforms.
For AGX Orin series and Orin NX 16GB, there are 12 CPU cores which are
split into 3 clusters with 4 cores in each. So only one CPU core per
cluster needs to be registered as a cooling device.

But for Jetson Orin NX 8GB, Jetson Orin Nano 8GB, and Jetson Orin Nano
4GB platforms, there are only 6 CPU cores, 4 of which are in a cluster,
and the remaining 2 are in pairs in another cluster. Since it's
unpredictable at build-time which CPU cores will be disabled for a given
unit, there should be one CPU core registerd as cooling device per CPU
core pair to ensure the all the CPU clocks can be throttled.

So, this change adds tegra234-soc-thermal-slowdown-cluster.dtsi and
tegra234-soc-thermal-slowdown-corepair.dtsi to handle both of the cases.

The passive trip point temperatures are derived from
//hw/ar/doc/t23x/sysarch/power/global_functions/thermal_management/
T234_Thermal_Settings.xlsx#21.

Bug 4035713

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I5e0bea5ce6e2370710c303a057773b3d7352d168
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2952086
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-08-09 00:11:18 -07:00
Yi-Wei Wang
2f4bb5bc45 overlay: header: Copy thermal.h DT binding header
Copy thermal.h DT binding header file from core kernel which is needed
for the thermal overlay.

Bug 4035713

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I596e182bb1bb94bc90a9a2812dafafe6f1c4fbf3
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2952085
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-09 00:11:07 -07:00
Prathamesh Shete
903dc85e1b oot: overlay: add emmc HS mode properties
Add High speed mode properties in emmc DT node

Bug 4181788

Change-Id: Icc10f77ed552aa316fcefac8db76fb8ad78e0146
(cherry picked from commit f9fc949127)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2951313
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Prathamesh Shete <pshete@nvidia.com>
Reviewed-by: Shao-Chun Kao <shaochunk@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Tested-by: Shao-Chun Kao <shaochunk@nvidia.com>
2023-08-08 10:14:15 -07:00
Laxman Dewangan
01036cc870 tegra234: Do not use spaces for alignment
The device tree files are aligned with tabs. Replace
8 spaces with tabs to align with the coding of device tree.

Bug 4037899

Change-Id: Ia7de29a6061d749e1ea45109b48b5bc1194a6c11
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2946066
(cherry picked from commit 15a33e8a70)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2947304
Reviewed-by: Yi-Wei Wang <yiweiw@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Yi-Wei Wang <yiweiw@nvidia.com>
2023-08-04 09:13:55 -07:00
Thierry Reding
1bbfc41d27 arm64: tegra: Add 35°C trip point for Jetson Orin NX/Nano
It turns out that these devices can get quite hot to the touch with the
standard cooling configuration, so add another trip point at 35°C along
with a cooling map to help keep the system reasonably cool at very low
system load.

Cherry picked from commit 22237440d89c870ec3f905a59f469998233718ec

Bug 4204722

Change-Id: I7eb212241600f945173f4702fa2f9d09a6daf232
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/+/2946052
(cherry picked from commit d3aa3fafe2)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2947303
Reviewed-by: Yi-Wei Wang <yiweiw@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Yi-Wei Wang <yiweiw@nvidia.com>
2023-08-04 09:13:49 -07:00
Yi-Wei Wang
6c69a54be5 t23x: overlay: Disable rail-gating for safety IGX
This change disables GPU rail-gating as it's not a mandatory feature for
safety IGX. The ideal approach for disabling GPU rail-gating should be
deleting the `power-domains` property in GPU node. But the
/delete-property/ is not a valid syntax in the device tree overlay, the
`nvidia,tegra-joint_xpu_rail` is specified to achieve the same as an
alternative.

Bug 4084478

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ia186cc0bc18f5d1a216a511af3e5cc4588c07b21
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2946710
Reviewed-by: Sagar Kamble <skamble@nvidia.com>
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-04 09:13:38 -07:00
Santosh Reddy Galma
8b898bc900 soc: t23x: kernel-dts: add simplefb DT node for display
- Add simplefb device-tree node which is required to show
early boot-up logs on display when UEFI initializes display
- Default status of the node is disabled by default in DT
and is enabled dynamically by UEFI only when it initializes display

- Following information is contained in the simplefb node.

i) Add display power-domain property. Without this, genpd driver
will powergate the display power-domain during kernel boot.

ii) Add all display clocks handles (even if not enabled by UEFI).
Without this, kernel CCF will disable clocks during kernel boot-up.

iii) Add reference to fb reserved region memory node.
fb reserved region node is updated by UEFI driver when it
initializes display.

iv) Add width, height, stride properties initialized to
"0" and format of display surface initialized to 32bit RGB pixel
format. These are updated by UEFI when it initializes display as
per UEFI display surface properties.

Bug 3601162

Change-Id: If938853e1d29c08753e71e94bfd5a9a007a9585a
Signed-off-by: Santosh Reddy Galma <galmar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/2917196
(cherry picked from 8baa582f3e4b26d1354bb05ee4c88c868ba2e6a7)
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2942107
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-08-03 09:46:40 -07:00
Santosh Reddy Galma
09beba7104 soc: t23x: kernel-dts: Add display fb carveout node
- Add display fb carveout region node to the list of
reserved memory regions
- UEFI updates the "reg" property with base address and
size of display fb carveout memory region and "status"
of display fb carveout region node to "okay" if UEFI
initializes display.
- keeping the fb carveout region node disabled by default
such that it is enabled by UEFI dynamically only when UEFI
initializes display and handsoff display fb carveout region
to kernel.
- add display fb reserved region node handle to display DT node
for unity mapping of display reserved region when SMMU driver
comes up in kernel only if display fb carveout region DT node
is enabled by UEFI.

Bug 3601162

Change-Id: Ia7060558e0723f4c04c2b026bc93a7e58692898a
Signed-off-by: Santosh Reddy Galma <galmar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/t23x/+/2857443
(cherry picked from 5b2263f878459f4795e079d475cb0c3f416aaf7d)
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2942106
Reviewed-by: Vinod Atyam <vatyam@nvidia.com>
2023-08-03 09:46:29 -07:00
Mohan Kumar
3f56ab0564 dt-binding: move rt5640 header under dt-bindings
Move rt5640.h header under dt-bindings directory.

Bug 4115300

Change-Id: I3cfeb04d90e9937046090ab59acd8fdd11972204
Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2943046
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
(cherry picked from commit 416c472bb5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945329
Reviewed-by: Sheetal . <sheetal@nvidia.com>
2023-08-01 07:45:04 -07:00
Mohan Kumar
163d3aeae6 NVIDIA_INTERNAL: arm64: tegra: Audio support for P3740 + P3701
Add audio overlay support for P3740 + P3701 board.

Bug 4115300

Change-Id: I879c8a2cffdbd85ee5b34df43977d90133cbd3a2
Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2918645
(cherry picked from commit 794029d8b3)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945328
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-01 07:44:59 -07:00
Mohan Kumar
2deb2b5e93 UPSTREAM: arm64: tegra: Add audio support for IGX Orin
Add audio support for the NVIDIA IGX Orin development kit having P3701
module with P3740 carrier board.

Move the common device-tree nodes to a new file tegra234-p3701.dtsi and
use this for Jetson AGX Orin and NVIDIA IGX Orin platforms

89b143fbba40 ("arm64: tegra: Add audio support for IGX Orin")

Bug 4115300

Change-Id: I9fd278d75eaf550c554e6a4055d81356a6556b9f
(cherry picked from commit 89b143fbba40784b05debd69603ffb82b4254564)
Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
[treding@nvidia.com: properly sort nodes]
Signed-off-by: Thierry Reding <treding@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2906001
(cherry picked from commit 7670c8eb01)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945327
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-08-01 07:44:54 -07:00
Johnny Liu
77a741336e t234: overlay: add interconnect property to gpu
Add interconnects property with NVLINK MC client ID and
path info to the node representing NVGPU.

Bug 3997304

Signed-off-by: Johnny Liu <johnliu@nvidia.com>
Change-Id: I17ac18fdd6149720369f207c2336d96989f226a6
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2945206
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-07-31 08:57:13 -07:00
Sheetal
b2ecb56725 t23x: p3768: Split pins into AON and MAIN nodes
- Pinmux driver split the AON and MAIN GPIO pins into
  2 nodes. It requires the change in audio headers.
- Defined new fragment for AON GPIO pins.

Bug 3960866
Bug 3950014

Change-Id: Ic8c841a9422b5b684d9fed41e77a07551db2d732
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2943594
Reviewed-by: Mohan Kumar D <mkumard@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Sheetal . <sheetal@nvidia.com>
2023-07-31 03:39:22 -07:00
Sheetal
865ce043f6 t23x: concord: Split pins into AON and MAIN nodes
- Pinmux driver split the AON and MAIN GPIO pins into
  2 nodes. It requires the change in audio headers.
- Defined new fragment for AON GPIO pins.

Bug 3960866
Bug 3950014

Change-Id: I74153b8c0cbb4e1d9986142f32af814f5cb5625f
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2943593
Reviewed-by: Mohan Kumar D <mkumard@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Sheetal . <sheetal@nvidia.com>
2023-07-31 03:39:17 -07:00
Prathamesh Shete
894f5a9d0b nvidia-oot: dts: split and move pinmux dt node to base dts
Split pinmux DT node into MAIN and AON instance
and move it to base dtsi.

Cherry picked from commit 282fde002760d3a006128c1d70b329e68a6ef844

Change: Deleting the duplicate content from overlay file.

Bug 3950014
Bug 4204726

Change-Id: I7beb4074faf0c48e8ab38136ef7b495fd8c60fa6
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Prathamesh Shete <pshete@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2943363
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-07-31 03:38:48 -07:00
Laxman Dewangan
b56a660ecf include: dt-binding: Sync dt headers with 6.5.rc2
Sync the DT binding headers from mainline kernel version
6.5.rc2.

Bug 4037899

Change-Id: I6016c49c622057bff7ec01e080a87b246c747838
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2941155
(cherry picked from commit e5ab67a400)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2944873
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-30 21:56:59 -07:00
Sumit Gupta
4568a0edb4 tegra234: move opp from base overlay to tegra234 dts
OPP table in Upstream tegra234.dtsi is synched with latest
downstream table in below patch. In this change, moving
the table from base overlay to "nv-public/tegra234.dtsi" as
the tables are Upstreamed now.

https://lore.kernel.org/lkml/20230713133850.823-1-sumitg@nvidia.com/T/

Bug 4204733

Change-Id: I0969d0ac90b0c1c7c0a5c77eb532ffad646d3436
Signed-off-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2940613
(cherry picked from commit da6a15459c)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2944872
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-07-30 21:56:53 -07:00
Yi-Wei Wang
9caca45828 t23x: overlay: add tegra234-p3768-0000+p3767-0005
Add overlay/tegra234-p3768-0000+p3767-0005.dts with content equal to
tegra234-p3768-0000+p3767-0000.dts + overlay/tegra234-p3768-0000+p3767-0000.dts
- tegra234-p3768-0000+p3767-0005.dts.

Bug 4204734

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I48d0b2513f00748a7a8f7b39598fe36c4f1c7058
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2944157
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:14:31 -07:00
Yi-Wei Wang
4b1bfbd75f t23x: overlay: Remove staged p3768-0000+p3767-0005
Remove tegra234-p3768-0000+p3767-0005.dts from staging folder
as the same file landed on the mainline v6.5 and was backported.

Bug 4204734

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Iddce0e3ff13c7012afae4e80db2bef039a6fa539
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2944081
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:14:27 -07:00
Yi-Wei Wang
5108617a44 t23x: overlay: Remove duplicate thermal entries
Remove duplicate thermal entries which already landed on the mainline
v6.5 and were backported.

Bug 3960800
Bug 4035713
Bug 4204722

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Iaa7bbe01ed1cb6135ea360378559fcd931b15d75
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2944082
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:14:22 -07:00
Yi-Wei Wang
fab0ba210e [UPSTREAM v6.5]: arm64: tegra: Enable thermal support on Jetson Orin Nano
Enable the TJ thermal zone and hook up cooling maps for the PWM-
controlled fan and two trip points.

Cherry picked from commit 6312e57b3250085b196d9630d2eeea6a583b97ef

Bug 3960800
Bug 4035713
Bug 4204722

Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I329c1ee1ca48ae01e48300f8aa36d8ce4cc58ef0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2941398
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:13:49 -07:00
Yi-Wei Wang
0b985e6457 [UPSTREAM v6.5]: arm64: tegra: Support Jetson Orin Nano Developer Kit
The NVIDIA Jetson Orin Nano Developer Kit is the combination of the
NVIDIA Jetson Orin Nano (P3767, SKU 5) module and the P3768 carrier
board.

Cherry picked from commit 4d92116266485bc05a7d8cde41fba8845074d152

Bug 4204734

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ifd1e8df522e8c9f30e20fa16663e2d8e5351f90c
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2941397
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:13:45 -07:00
Yi-Wei Wang
50b6a5db24 [UPSTREAM v6.5]: arm64: tegra: Enable thermal support on Jetson Orin NX
Enable the TJ thermal zone and hook up cooling maps for the PWM-
controlled fan and two trip points.

This also removes a duplicate definition of the PWM fan and changes its
cooling levels. This should have no effect, though, because the fan
wasn't previously connected to anything and by default would be turned
off at probe time.

Cherry picked from commit a6fb90f0eefb13e2cf18f39f1a84a9ef6054153b

Bug 3960800
Bug 4035713
Bug 4204722

Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I222e43a16f8853ccec70006b72a40973b5e2cc86
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2941396
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:13:40 -07:00
Yi-Wei Wang
2352a5f822 [UPSTREAM v6.5]: arm64: tegra: Enable thermal support on Jetson AGX Orin
Add thermal zone details and enable the PWM fan as cooling device.

Note that this also changes the cooling levels for the PWM fan, which
should have no effect, though, because the fan wasn't previously
connected to anything and by default would be turned off at probe time.

Cherry picked from commit 1d3fbd3d41a6c7552126ce39b81591de942a4207

Bug 3960800
Bug 4035713
Bug 4204722

Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ice10f86ddbbd5c27b1967f1df2d840c69e002651
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2941395
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:13:35 -07:00
Yi-Wei Wang
0038ca5d15 [UPSTREAM v6.5]: arm64: tegra: Add Tegra234 thermal support
Add device tree node for the BPMP thermal node on Tegra234 and add
thermal zone definitions.

Cherry picked from commit 09d990782a243b97eb566717a2155a306a2f42af

Bug 3960800
Bug 4035713
Bug 4204722

Acked-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ifef49687ef550cbdcdf26a511a69b1e46502b376
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2941394
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-28 08:13:30 -07:00
Yi-Wei Wang
cf3129d52e t23x: overlay: Overwrite compatible for safety IGX
Correctly overwrite the compatible string for safety IGX so that the
userspace application can learn whether it's safety platform or not.
In addition, split "nvidia,p3740-0002+p3701-0008-safety" into
"nvidia,p3740-0002+p3701-0008" and "safety" which is platform agnostic.

Bug 4084478

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ibf701149c9b498a47e964082d999707b4f3475ac
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2942616
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-26 20:57:04 -07:00
shaochunk
7719633209 t23x: overlay: add CPU-EMC mapping for orin nano
Add additional opp entry having CPU frequency
and corresponding EMC bandwidth request for
Orin nano platforms.

CPU@1510.4 MHz => EMC@2133 MHz

Bug 4001806

Change-Id: Ia990b739c7d8b55d292ee69100e763448234f17d
Signed-off-by: shaochunk <shaochunk@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2935527
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Sumit Gupta <sumitg@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-18 23:41:37 -07:00
Yi-Wei Wang
9732ab899e t23x: overlay: Enable nvpmodel to cap EMC Fmax
Enable nvpmodel node for capping the max freq of the EMC clock.

Bug 4154438

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I50f8f8b1b59f70cdc483a879d3e1e71b52225d6b
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2934876
(cherry picked from commit 5e8cb17169)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2935460
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-13 05:14:08 -07:00
Yi-Wei Wang
3112b267e7 p3701: overlay: Update shutdown threshold for sku8
Update thermal software shutdown threshold to 117.5C for p3701-0008
according to //hw/ar/doc/t23x/sysarch/power/global_functions/
thermal_management/T234_Thermal_Settings.xlsx#21.

Bug 3963956
Bug 4035713

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I59007ac058fdaab52f20124bf4cf593d87e58834
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2931242
(cherry picked from commit 5f1c273029)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2934193
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-07-11 07:39:30 -07:00
Mohan Kumar
40b2db8584 t23x: overlay: Fix typo for clock in ahub node
Fix typo on the ahub node for assigned clock parent
property. This fixes the below warning during the boot.

clk: failed to reparent pll_a to plla_out0: \\-22

Bug 3974546

Change-Id: I72c4196d92b4dae797a994662a22006c5093f4d5
Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2931375
(cherry picked from commit 5492933556)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2932968
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-07-11 07:39:20 -07:00
Sameer Pujar
983fa62fa9 generic-dts: Remove compatible overrides for OOT
Kernel OOT audio support uses different compatibles to pick specific
OOT drivers for audio. This method requires additional compatible
overrides in the DT overlay which is not a very flexible way to pick
driver modules.

It is possible to pick specific driver modules by adding the not needed
ones to the denylist in the configuration files in '/etc/modprobe.d/'.
This means different compatibles are not necessary and modules can be
filtered based on the name in configuration files. With this it will
be easier to switch between driver modules and also will reduce the
overrides in the overlay. Thus remove all 'oot' reference from driver
compatibles.

Bug 4119612

Change-Id: I420007ee253c8e99c32db54a5e85b3aa79e7cc21
Signed-off-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927031
(cherry picked from commit 703a5974c6)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2932007
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Tested-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-11 07:38:58 -07:00
Sameer Pujar
3045fd315b t23x: Build overlays required for Jetson-IO
Update makefile to enable build for the Jetson-IO overlays. In doing so
fix build errors by update include paths and file names. Also update the
fragment names as per the platform.

Bug 4161664

Change-Id: Id53af1d1210bc418b020f65277c695d0a493f09e
Signed-off-by: Sheetal <sheetal@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2928110
(cherry picked from commit 7f973335a8)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2933429
Reviewed-by: Mohan Kumar D <mkumard@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-10 04:56:43 -07:00
Krishna Yarlagadda
90a0271714 t23x: add prod setting overlay
Prod settings added in generic-dt for T23x soc prod
and concord platform.

Bug 4165866

Change-Id: I4bf994d86a22ddae69d10797aba54c0a7aa53727
Signed-off-by: Krishna Yarlagadda <kyarlagadda@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2932560
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-by: Prathamesh Shete <pshete@nvidia.com>
2023-07-07 02:56:38 -07:00
Laxman Dewangan
f2f92ed64b t23x: optee-dts: Add optee-dts source file
Add optee-dts files for optee support. It is moved from the
hardware/nvidia/soc/t23x/optee-dts to get rid of the legacy
DT path.

Bug 4170369

Change-Id: Id31d9efde21139c628be63b25bc7f6db7342e67c
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2932011
2023-07-06 08:56:39 -07:00
Laxman Dewangan
efa9d80bdd tegra234: p3767: Remove sku based overlay for compatibility
There are base DTB based on the SKUs. Hence it is not required to
override the compatible of the platform via the overlay as it
can be done in base DTB only.

Bug 4161664
Bug 4148987

Change-Id: Iae852c8319f89d17688201d1b9ba66fed472fe37
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2931601
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-05 22:12:46 -07:00
Shubhi Garg
1642f39c4b overlay: enable remaining nodes for IGX
Enable remaining nodes left to be added for IGX platform in overlay dtsi.

Bug 4179391

Change-Id: I516cfd8c8a4301b491764a1b7b81a8b9fe055e2e
Signed-off-by: Shubhi Garg <shgarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2930733
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-07-05 06:26:47 -07:00
shaochunk
66dff8d4b3 t23x: overlay: Include camera dependencies for IGX
For tegra234-p3740-0002+p3701-0008,
Include camera DT overlay with camera related nodes

Bug 4180559

Change-Id: Ib3ed91723801f06db581a7bd7b7b2acc269c14a2
Signed-off-by: Shao-Chun Kao <shaochunk@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2930675
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-05 02:42:48 -07:00
shaochunk
abb5df5927 t23x: overlay: add CPU-EMC mapping for T234
Add additional opp entry having CPU frequency
and corresponding EMC bandwidth request for
below T234 platforms:

- p3701-0008: CPU@1971 MHz => EMC@2133 MHz
- p3767-0000: CPU@1984 MHz => EMC@2133 MHz

Bug 4001806

Change-Id: I7abef63a688bde10d98485adc76b8029a671f692
Signed-off-by: shaochunk <shaochunk@nvidia.com>
(cherry picked from commit 179a88ff04)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927622
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-07-05 02:41:59 -07:00
Jon Hunter
470e5b237b t23x: overlay: Enable GPU for IGX
Enable the GPU for Tegra234 on the NVIDIA IGX Orin platform.

Bug 4159372

Change-Id: I11d11f26766185c45623ac26c071a5082f28de83
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2929286
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-07-03 04:42:48 -07:00
Jon Hunter
2057949333 t23x: overlay: Remove Cypress Type-C from overlay
Now the Cypress Type-C is upstream for Jetson AGX Orin, remove the
Cypress Type-C from the overlay.

Bug 4152207

Change-Id: I8ded3c7c33bdd5917f66bd2dc17cf12755f0e0c3
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927125
(cherry picked from commit e2e74beedb)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2928520
Reviewed-by: Wayne Chang <waynec@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-30 03:44:41 -07:00
Jon Hunter
b7a5cde0d7 UPSTREAM: arm64: tegra: Populate USB Type-C Controller for Jetson AGX Orin
Add the USB Type-C controller that is present on the Jetson AGX Orin
board. The ports for the Type-C controller are not populated yet, but
will be added later once the USB host and device support for Jetson AGX
Orin is enabled.

This is based upon a patch from Wayne Chang <waynec@nvidia.com>.

Bug 4152207

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Change-Id: Ife26eeb58eb842430473ca57a394e952c935706e
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927124
(cherry picked from commit cc4606493a)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2928519
Reviewed-by: Wayne Chang <waynec@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-30 03:44:37 -07:00
Jon Hunter
3414210dbc t23x: overlay: Use upstream watchdog driver for Jetson
The upstream watchdog driver is sufficient for Jetson devices and so
remove the nodes that enable the out-of-tree watchdog driver.

Bug 3994400

Change-Id: Iaa874f1a1bc657bf88f77b29af5c7aa6f88cbf93
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927180
(cherry picked from commit c8aa8007b9)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2928303
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
2023-06-30 03:44:18 -07:00
Dipen Patel
43a5756fe6 overlay: Add safety dts for hope devkit
Add safety dts support for the hope devkit. The safety extension package
(SEP) includes safety dtb with below addition from non-safety dts.
- Requires SPI3 to communicate to SMCU as client device
- Requires hsp@1600000 instance to talk to FSI
- Requires FSI communication nodes for userspace safety apps

Why changes in the existing fsicom dtsi file:
- safety dts leverages fsicom dtsi
- fsicom_client label and node name are same which gives issue during
the compile time
- Added epl kernel node which is required for the Error propagation
library feature.

Bug 4122084
Bug 4128263

Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Change-Id: Ied29a993ab7f9141a3688b33c064721dfbbdff2b
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2907719
(cherry picked from commit bf73d28760 in dev-main)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927947
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-30 00:56:30 -07:00
Ninad Malwade
c15e27cdfc overlay: p3768: Enable ina3221
Enable ina3221 nodes for p3768-0000-p3767-*

Bug 4128538

Change-Id: I737775069fd20c8c104ef1d6e75dd00aada67dce
Signed-off-by: Ninad Malwade <nmalwade@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927852
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-29 06:11:20 -07:00
Laxman Dewangan
50f4dbdbf3 t23x: overlay: Integrate Jetson Audio overlays
Integrate Jetson Audio overlay files from the legacy DTS
repo.

Merge remote-tracking branch
	'origin/dev/ldewangan/audio-integ-rel-36' into
	merge-audio-integrate-rel-36

Bug 4161664

Change-Id: Ie4fc656ca7e42cf40f824c05b53d1607744e451f
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-06-28 09:32:44 +00:00
Laxman Dewangan
07d664e800 tegra234: platforms: dt-bindings: Fix license format
Use SPDX license format in the header files.

Change-Id: I84b9e439379c256762ca506348f293eeeeaf821b
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
08b498c357 dt-common: Add Orin NX/Nano board def
DT header file is added for supporting overlays on Orin NX
/Nano platforms. The file includes board compatible string
and definitions for 40-pin header.

Bug 3866629

Change-Id: I918c74a5f4faf98a294504805f131700194f2ee0
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2897882
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Dara Ramesh <dramesh@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
aa9d7b62ee dt-common: Add JAOi compatible in header
Adds JAOi compatible string in header so that
Jetson-IO tools works for the platform

Bug 4059565

Change-Id: I21a2f39ba2b37df9e5659940ad3ec09d3007c596
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2893529
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Gautham Srinivasan
bba61269b6 dt-common: Append JETSON_COMPATIBLE for Jango SKU5
Appended JETSON_COMPATIBLE with Jango SKU5 compatible to enable
the Jetson-IO support for the corresponding CVM based platforms

Bug 4028614

Change-Id: Ic48980d2403674efe81003aa45670e333f8c93b6
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2871166
(cherry picked from commit 6fd7ad0066d9a2ea30fe5a412419bd60304f96aa)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2871658
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Tested-by: Gautham Srinivasan <gauthams@nvidia.com>
2023-06-28 09:29:10 +00:00
Jerry Chang
f8d94758dc dt-common: revise a typo for HDR40_PIN33
revise GPIO definitions for HDR40_PIN33

Bug 3817505

Change-Id: If363bdd300201cd0e535db2c5aeaabc5e1258dfc
Signed-off-by: Jerry Chang <jerchang@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2785896
(cherry picked from commit 364b6b11ed0e67b98eb21c50c7f129321ac9c445)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2794502
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
fb8cabec2a dt-common: Add AGX Orin Dev Kit SKU4 variant ref
DT header file is modified for supporting overlays on Jetson AGX
Orin Developer Kit platform's SKU4 variant.
The file adds the necessary board compatible string

Bug 3689332

Change-Id: I75116202b0afa9c305ebe023b75139392d60e822
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2734824
(cherry picked from commit 08093f59bf3ba2c3d2c6d7abaf6733f8bcc2ce47)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2741673
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Sameer Pujar <spujar@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
d1fc24dc27 dt-common: Add Orin Jetson-Small Dev Kit board def
DT header file is added for supporting overlays on Orin Jetson-Small
Developer Kit platform. The file includes board compatible string
and definitions for 40-pin header.

Bug 200744243

Change-Id: I0ff28ac6ab0cdf944c89bbba7f7bf911efa54a45
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/soc/tegra/+/2595240
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Laxman Dewangan
d832355850 t23x: overlay: Fix license string format
Fix the license string format and copy right of
integrated files from legacy DTS repo.

Change-Id: Ia6bfe6b7449b175771889f214e0acfecbccd7cb0
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-06-28 09:29:10 +00:00
Laxman Dewangan
d9db1343c4 t234: overlay: Rename overlay files for audio
Rename the audio overlay files to have the
"audio" in its name for easy identifications.

Change-Id: Id451c06fcffed8616ebc8c51ea5bb729688c7484
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
9374dde502 t23x: p3768: Add Orin NX and Nano overlays
Following device-tree overlays for Orin NX Module +
Xavier NX Carrier, Orin NX/Nano DevKit Board are added:

  1. ADAFRUIT SPH0645LM4H (I2S MEMS Microphone)
  2. FE-PI Audio (SGTL5000 Audio Codec)
  3. Adafruit UDA1334A (I2S Stereo DAC)
  4. Respeaker 4 Mic Array Card
  5. M.2 Key E header
  6. Camera Header

- Added missing hdr40-pin7 node in hdr40 common dtsi.
- Added hdr40_vdd_3v3 symbol used by overlay files.
- Unified 40 pin header dts for Orin NX across different
  Carrier boards

Apart from header overlays, remaining overlays may be
applied using either Jetson-IO tool, or directly on the platform
base DTB file as below:

  $ fdtoverlay -i <base-dtb> -o <out-dtb> <overlay-dtbo>

Bug 3866629

Change-Id: I8808fc0317e4c173c44480447ac511ae32ce5480
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/p3768-dts/+/2897867
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Anubhav Rai <arai@nvidia.com>
Reviewed-by: Sheetal . <sheetal@nvidia.com>
Reviewed-by: Mohan Kumar D <mkumard@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha T
b7310ef8bb p3768: Added missing hdr40 pin config
Current hdr40 dtsi misses the extperiph clks
and pwm pins configuration. Hence added the same
through this CL

Bug 4033331

Change-Id: I39b2b54bbe1057dfee73451bb98e7faefd32ec9d
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/p3768-dts/+/2872809
(cherry picked from commit 572941f05417513d55b8e120b2f819e72cec127e)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/p3768-dts/+/2872805
(cherry picked from commit ba24d22a526ced00a0511aed2d425ffdfa986f04)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/p3768-dts/+/2889623
Reviewed-by: Dara Ramesh <dramesh@nvidia.com>
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Dipen Patel
70d869c90a arvala: dts: Change p3767 SKU
The public release of the p3767 module will be based on
the SKU0, while bringup happened with SKU2. Renaming the
files avoid duplicating those files for the SKU0 as both the
SKUs are identical except that SKU2 has SD card slot.

Bug 3759595

Signed-off-by: Dipen Patel <dipenp@nvidia.com>
Change-Id: I37fa3929a7bad6ae16f66d9a22ece09d8e6bb59c
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/arvala-dts/+/2795932
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
Reviewed-by: Rajkumar Kasirajan <rkasirajan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/arvala-dts/+/2798109
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Tested-by: Brad Griffis <bgriffis@nvidia.com>
2023-06-28 09:29:10 +00:00
Mohan Kumar
952d12bdb3 concord: dts: Fix DMIC3 pinmux config for hdr40
DMIC3 pin configuration for CLK and DAT are interchanged in the 40 pin
header dts file. Fix this issue for DMIC functionality to work.

Bug 4068355

Change-Id: I2acdbd8f6ad3ee44f144448f697e7285f4d3ee48
Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2886786
(cherry picked from commit 875d5ea60e29e66eec4147423bf0fba6edc0f736)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2896914
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
2023-06-28 09:29:10 +00:00
Shubham Chandra
bb8deb8096 concord: dts: use generic jetson-header name
Use generic jetson-header name as below for camera
& CSI dtb overlays for both Orin and Xavier boards -
- Jetson AGX CSI connector

Bug 3605511
Bug 3417537

Change-Id: I5aaa4136a8ca57da2985a0fc06bc2ff816046664
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2731328
(cherry picked from commit 79ced9db6692b59f9b0c11b5cd1102b7001f30e4)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2734709
Reviewed-by: Shubham Chandra <shubhamc@nvidia.com>
Reviewed-by: Anubhav Rai <arai@nvidia.com>
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
Tested-by: Shubham Chandra <shubhamc@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
5710029c5c t23x: concord: ReSpeaker 4 Mic Linear Array support
Added overlay for supporting ReSpeaker 4 Mic Linear Array
on galen

Bug 200679216

Change-Id: I08dbce8c1199a292e1909a263eefcd0c3fa70182
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2649278
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
400bbf7d23 t23x: concord: Fixed pin-name in hdr40 dts
Wrong pin name crept in the original cl for
40th pin hdr40. Corrected through this cl

Bug 200744243

Change-Id: I4ae9eed092f46daa57602200728acb19b2be30cb
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2628629
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Asha Talambedu
c29861dcc0 t23x: concord: Add overlays for Orin Jetson-small Devkit
Following device-tree overlays for Orin Jetson-Small Developer Kit
are added:

  1. ADAFRUIT SPH0645LM4H (I2S MEMS Microphone)
  2. FE-PI Audio (SGTL5000 Audio Codec)
  3. Adafruit UDA1334A (I2S Stereo DAC)
  4. Respeaker 4 Mic Array Card
  5. Jetson 40-pin Expansion Header
  6. M.2 Key E header
  7. Camera connector header

Apart from header overlays, remaining overlays may be
applied using either Jetson-IO tool, or directly on the platform
base DTB file as below:

  $ fdtoverlay -i <base-dtb> -o <out-dtb> <overlay-dtbo>

Change-Id: I616ee1836e2cff4a3eebd5b0cc1386d65d7fcec5
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-dts/+/2598064
Reviewed-by: svcacv <svcacv@nvidia.com>
Reviewed-by: Viswanath L <viswanathl@nvidia.com>
Reviewed-by: Asha Talambedu <atalambedu@nvidia.com>
Reviewed-by: Sharad Gupta <sharadg@nvidia.com>
Tested-by: Asha Talambedu <atalambedu@nvidia.com>
2023-06-28 09:29:10 +00:00
Laxman Dewangan
6153eb4d5d t23x: staging: Add base DTB for various SKU Jetson platforms
Add base DTB for the various SKU of Nvidia Tegra23x
based Jetson platform.

The SKU combination of base and compute modules are:
	tegra234-p3768-0000+p3767-0000.dts
	tegra234-p3768-0000+p3767-0001.dts
	tegra234-p3768-0000+p3767-0003.dts
	tegra234-p3768-0000+p3767-0004.dts
	tegra234-p3768-0000+p3767-0005.dts
	tegra234-p3737-0000+p3701-0000.dts
	tegra234-p3737-0000+p3701-0004.dts
	tegra234-p3737-0000+p3701-0005.dts
	tegra234-p3737-0000+p3701-0008.dts

The base file of following combinations already exist:
   tegra234-p3737-0000+p3701-0000.dts
   tegra234-p3768-0000+p3767-0000.dts

Adding the top level base DTB for remaining SKUs combination.

Bug 4161664
Bug 4148987

Change-Id: Ic652f7b12487b03e3e925930ca6225f9cde58322
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2927259
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
2023-06-27 23:47:08 -07:00
Yi-Wei Wang
f463fd1dfe p3701: overlay: Enable nvpmodel node for IGX
Enable nvpmodel for IGX for capping the max freq of the
specified clocks.

Bug 3963732
Bug 3972888

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: Ie299b058d80e20fc47ba265bb462c8f71dacb6f9
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2923508
(cherry picked from commit 997e629dd5)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2925923
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-27 23:46:27 -07:00
Yi-Wei Wang
e16a92d008 p3767: overlay: Enable overcurrent event node
Enable the soctherm-oc-event so that the user can learn the information
regarding the overcurrent enable state and the event count via the hwmon
sysfs interface.

Bug 3571683

Signed-off-by: Yi-Wei Wang <yiweiw@nvidia.com>
Change-Id: I143ca294b5f57e397aad674c084b6f2b497802e7
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2923475
(cherry picked from commit 99d5c4bf98)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/2925922
Reviewed-by: Laxman Dewangan <ldewangan@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
2023-06-27 23:46:21 -07:00
180 changed files with 32745 additions and 12189 deletions

View File

@@ -9,6 +9,7 @@ makefile-path := t23x/nv-public
dtb-y += tegra234-p3737-0000+p3701-0000.dtb
dtb-y += tegra234-p3740-0002+p3701-0008.dtb
dtb-y += tegra234-p3768-0000+p3767-0000.dtb
dtb-y += tegra234-p3768-0000+p3767-0005.dtb
ifneq ($(dtb-y),)
dtb-y := $(addprefix $(makefile-path)/,$(dtb-y))

View File

@@ -1,5 +1,4 @@
/* SPDX-License-Identifier: GPL-2.0 */
/* Copyright (c) 2023, NVIDIA CORPORATION. All rights reserved. */
/* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */
/*
* This header provides constants for most GPIO bindings.
*

View File

@@ -1,977 +0,0 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/*
* Input event codes
*
* *** IMPORTANT ***
* This file is not only included from C-code but also from devicetree source
* files. As such this file MUST only contain comments and defines.
*
* Copyright (c) 1999-2002 Vojtech Pavlik
* Copyright (c) 2015 Hans de Goede <hdegoede@redhat.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published by
* the Free Software Foundation.
*/
#ifndef _UAPI_INPUT_EVENT_CODES_H
#define _UAPI_INPUT_EVENT_CODES_H
/*
* Device properties and quirks
*/
#define INPUT_PROP_POINTER 0x00 /* needs a pointer */
#define INPUT_PROP_DIRECT 0x01 /* direct input devices */
#define INPUT_PROP_BUTTONPAD 0x02 /* has button(s) under pad */
#define INPUT_PROP_SEMI_MT 0x03 /* touch rectangle only */
#define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */
#define INPUT_PROP_POINTING_STICK 0x05 /* is a pointing stick */
#define INPUT_PROP_ACCELEROMETER 0x06 /* has accelerometer */
#define INPUT_PROP_MAX 0x1f
#define INPUT_PROP_CNT (INPUT_PROP_MAX + 1)
/*
* Event types
*/
#define EV_SYN 0x00
#define EV_KEY 0x01
#define EV_REL 0x02
#define EV_ABS 0x03
#define EV_MSC 0x04
#define EV_SW 0x05
#define EV_LED 0x11
#define EV_SND 0x12
#define EV_REP 0x14
#define EV_FF 0x15
#define EV_PWR 0x16
#define EV_FF_STATUS 0x17
#define EV_MAX 0x1f
#define EV_CNT (EV_MAX+1)
/*
* Synchronization events.
*/
#define SYN_REPORT 0
#define SYN_CONFIG 1
#define SYN_MT_REPORT 2
#define SYN_DROPPED 3
#define SYN_MAX 0xf
#define SYN_CNT (SYN_MAX+1)
/*
* Keys and buttons
*
* Most of the keys/buttons are modeled after USB HUT 1.12
* (see http://www.usb.org/developers/hidpage).
* Abbreviations in the comments:
* AC - Application Control
* AL - Application Launch Button
* SC - System Control
*/
#define KEY_RESERVED 0
#define KEY_ESC 1
#define KEY_1 2
#define KEY_2 3
#define KEY_3 4
#define KEY_4 5
#define KEY_5 6
#define KEY_6 7
#define KEY_7 8
#define KEY_8 9
#define KEY_9 10
#define KEY_0 11
#define KEY_MINUS 12
#define KEY_EQUAL 13
#define KEY_BACKSPACE 14
#define KEY_TAB 15
#define KEY_Q 16
#define KEY_W 17
#define KEY_E 18
#define KEY_R 19
#define KEY_T 20
#define KEY_Y 21
#define KEY_U 22
#define KEY_I 23
#define KEY_O 24
#define KEY_P 25
#define KEY_LEFTBRACE 26
#define KEY_RIGHTBRACE 27
#define KEY_ENTER 28
#define KEY_LEFTCTRL 29
#define KEY_A 30
#define KEY_S 31
#define KEY_D 32
#define KEY_F 33
#define KEY_G 34
#define KEY_H 35
#define KEY_J 36
#define KEY_K 37
#define KEY_L 38
#define KEY_SEMICOLON 39
#define KEY_APOSTROPHE 40
#define KEY_GRAVE 41
#define KEY_LEFTSHIFT 42
#define KEY_BACKSLASH 43
#define KEY_Z 44
#define KEY_X 45
#define KEY_C 46
#define KEY_V 47
#define KEY_B 48
#define KEY_N 49
#define KEY_M 50
#define KEY_COMMA 51
#define KEY_DOT 52
#define KEY_SLASH 53
#define KEY_RIGHTSHIFT 54
#define KEY_KPASTERISK 55
#define KEY_LEFTALT 56
#define KEY_SPACE 57
#define KEY_CAPSLOCK 58
#define KEY_F1 59
#define KEY_F2 60
#define KEY_F3 61
#define KEY_F4 62
#define KEY_F5 63
#define KEY_F6 64
#define KEY_F7 65
#define KEY_F8 66
#define KEY_F9 67
#define KEY_F10 68
#define KEY_NUMLOCK 69
#define KEY_SCROLLLOCK 70
#define KEY_KP7 71
#define KEY_KP8 72
#define KEY_KP9 73
#define KEY_KPMINUS 74
#define KEY_KP4 75
#define KEY_KP5 76
#define KEY_KP6 77
#define KEY_KPPLUS 78
#define KEY_KP1 79
#define KEY_KP2 80
#define KEY_KP3 81
#define KEY_KP0 82
#define KEY_KPDOT 83
#define KEY_ZENKAKUHANKAKU 85
#define KEY_102ND 86
#define KEY_F11 87
#define KEY_F12 88
#define KEY_RO 89
#define KEY_KATAKANA 90
#define KEY_HIRAGANA 91
#define KEY_HENKAN 92
#define KEY_KATAKANAHIRAGANA 93
#define KEY_MUHENKAN 94
#define KEY_KPJPCOMMA 95
#define KEY_KPENTER 96
#define KEY_RIGHTCTRL 97
#define KEY_KPSLASH 98
#define KEY_SYSRQ 99
#define KEY_RIGHTALT 100
#define KEY_LINEFEED 101
#define KEY_HOME 102
#define KEY_UP 103
#define KEY_PAGEUP 104
#define KEY_LEFT 105
#define KEY_RIGHT 106
#define KEY_END 107
#define KEY_DOWN 108
#define KEY_PAGEDOWN 109
#define KEY_INSERT 110
#define KEY_DELETE 111
#define KEY_MACRO 112
#define KEY_MUTE 113
#define KEY_VOLUMEDOWN 114
#define KEY_VOLUMEUP 115
#define KEY_POWER 116 /* SC System Power Down */
#define KEY_KPEQUAL 117
#define KEY_KPPLUSMINUS 118
#define KEY_PAUSE 119
#define KEY_SCALE 120 /* AL Compiz Scale (Expose) */
#define KEY_KPCOMMA 121
#define KEY_HANGEUL 122
#define KEY_HANGUEL KEY_HANGEUL
#define KEY_HANJA 123
#define KEY_YEN 124
#define KEY_LEFTMETA 125
#define KEY_RIGHTMETA 126
#define KEY_COMPOSE 127
#define KEY_STOP 128 /* AC Stop */
#define KEY_AGAIN 129
#define KEY_PROPS 130 /* AC Properties */
#define KEY_UNDO 131 /* AC Undo */
#define KEY_FRONT 132
#define KEY_COPY 133 /* AC Copy */
#define KEY_OPEN 134 /* AC Open */
#define KEY_PASTE 135 /* AC Paste */
#define KEY_FIND 136 /* AC Search */
#define KEY_CUT 137 /* AC Cut */
#define KEY_HELP 138 /* AL Integrated Help Center */
#define KEY_MENU 139 /* Menu (show menu) */
#define KEY_CALC 140 /* AL Calculator */
#define KEY_SETUP 141
#define KEY_SLEEP 142 /* SC System Sleep */
#define KEY_WAKEUP 143 /* System Wake Up */
#define KEY_FILE 144 /* AL Local Machine Browser */
#define KEY_SENDFILE 145
#define KEY_DELETEFILE 146
#define KEY_XFER 147
#define KEY_PROG1 148
#define KEY_PROG2 149
#define KEY_WWW 150 /* AL Internet Browser */
#define KEY_MSDOS 151
#define KEY_COFFEE 152 /* AL Terminal Lock/Screensaver */
#define KEY_SCREENLOCK KEY_COFFEE
#define KEY_ROTATE_DISPLAY 153 /* Display orientation for e.g. tablets */
#define KEY_DIRECTION KEY_ROTATE_DISPLAY
#define KEY_CYCLEWINDOWS 154
#define KEY_MAIL 155
#define KEY_BOOKMARKS 156 /* AC Bookmarks */
#define KEY_COMPUTER 157
#define KEY_BACK 158 /* AC Back */
#define KEY_FORWARD 159 /* AC Forward */
#define KEY_CLOSECD 160
#define KEY_EJECTCD 161
#define KEY_EJECTCLOSECD 162
#define KEY_NEXTSONG 163
#define KEY_PLAYPAUSE 164
#define KEY_PREVIOUSSONG 165
#define KEY_STOPCD 166
#define KEY_RECORD 167
#define KEY_REWIND 168
#define KEY_PHONE 169 /* Media Select Telephone */
#define KEY_ISO 170
#define KEY_CONFIG 171 /* AL Consumer Control Configuration */
#define KEY_HOMEPAGE 172 /* AC Home */
#define KEY_REFRESH 173 /* AC Refresh */
#define KEY_EXIT 174 /* AC Exit */
#define KEY_MOVE 175
#define KEY_EDIT 176
#define KEY_SCROLLUP 177
#define KEY_SCROLLDOWN 178
#define KEY_KPLEFTPAREN 179
#define KEY_KPRIGHTPAREN 180
#define KEY_NEW 181 /* AC New */
#define KEY_REDO 182 /* AC Redo/Repeat */
#define KEY_F13 183
#define KEY_F14 184
#define KEY_F15 185
#define KEY_F16 186
#define KEY_F17 187
#define KEY_F18 188
#define KEY_F19 189
#define KEY_F20 190
#define KEY_F21 191
#define KEY_F22 192
#define KEY_F23 193
#define KEY_F24 194
#define KEY_PLAYCD 200
#define KEY_PAUSECD 201
#define KEY_PROG3 202
#define KEY_PROG4 203
#define KEY_ALL_APPLICATIONS 204 /* AC Desktop Show All Applications */
#define KEY_DASHBOARD KEY_ALL_APPLICATIONS
#define KEY_SUSPEND 205
#define KEY_CLOSE 206 /* AC Close */
#define KEY_PLAY 207
#define KEY_FASTFORWARD 208
#define KEY_BASSBOOST 209
#define KEY_PRINT 210 /* AC Print */
#define KEY_HP 211
#define KEY_CAMERA 212
#define KEY_SOUND 213
#define KEY_QUESTION 214
#define KEY_EMAIL 215
#define KEY_CHAT 216
#define KEY_SEARCH 217
#define KEY_CONNECT 218
#define KEY_FINANCE 219 /* AL Checkbook/Finance */
#define KEY_SPORT 220
#define KEY_SHOP 221
#define KEY_ALTERASE 222
#define KEY_CANCEL 223 /* AC Cancel */
#define KEY_BRIGHTNESSDOWN 224
#define KEY_BRIGHTNESSUP 225
#define KEY_MEDIA 226
#define KEY_SWITCHVIDEOMODE 227 /* Cycle between available video
outputs (Monitor/LCD/TV-out/etc) */
#define KEY_KBDILLUMTOGGLE 228
#define KEY_KBDILLUMDOWN 229
#define KEY_KBDILLUMUP 230
#define KEY_SEND 231 /* AC Send */
#define KEY_REPLY 232 /* AC Reply */
#define KEY_FORWARDMAIL 233 /* AC Forward Msg */
#define KEY_SAVE 234 /* AC Save */
#define KEY_DOCUMENTS 235
#define KEY_BATTERY 236
#define KEY_BLUETOOTH 237
#define KEY_WLAN 238
#define KEY_UWB 239
#define KEY_UNKNOWN 240
#define KEY_VIDEO_NEXT 241 /* drive next video source */
#define KEY_VIDEO_PREV 242 /* drive previous video source */
#define KEY_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */
#define KEY_BRIGHTNESS_AUTO 244 /* Set Auto Brightness: manual
brightness control is off,
rely on ambient */
#define KEY_BRIGHTNESS_ZERO KEY_BRIGHTNESS_AUTO
#define KEY_DISPLAY_OFF 245 /* display device to off state */
#define KEY_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */
#define KEY_WIMAX KEY_WWAN
#define KEY_RFKILL 247 /* Key that controls all radios */
#define KEY_MICMUTE 248 /* Mute / unmute the microphone */
/* Code 255 is reserved for special needs of AT keyboard driver */
#define BTN_MISC 0x100
#define BTN_0 0x100
#define BTN_1 0x101
#define BTN_2 0x102
#define BTN_3 0x103
#define BTN_4 0x104
#define BTN_5 0x105
#define BTN_6 0x106
#define BTN_7 0x107
#define BTN_8 0x108
#define BTN_9 0x109
#define BTN_MOUSE 0x110
#define BTN_LEFT 0x110
#define BTN_RIGHT 0x111
#define BTN_MIDDLE 0x112
#define BTN_SIDE 0x113
#define BTN_EXTRA 0x114
#define BTN_FORWARD 0x115
#define BTN_BACK 0x116
#define BTN_TASK 0x117
#define BTN_JOYSTICK 0x120
#define BTN_TRIGGER 0x120
#define BTN_THUMB 0x121
#define BTN_THUMB2 0x122
#define BTN_TOP 0x123
#define BTN_TOP2 0x124
#define BTN_PINKIE 0x125
#define BTN_BASE 0x126
#define BTN_BASE2 0x127
#define BTN_BASE3 0x128
#define BTN_BASE4 0x129
#define BTN_BASE5 0x12a
#define BTN_BASE6 0x12b
#define BTN_DEAD 0x12f
#define BTN_GAMEPAD 0x130
#define BTN_SOUTH 0x130
#define BTN_A BTN_SOUTH
#define BTN_EAST 0x131
#define BTN_B BTN_EAST
#define BTN_C 0x132
#define BTN_NORTH 0x133
#define BTN_X BTN_NORTH
#define BTN_WEST 0x134
#define BTN_Y BTN_WEST
#define BTN_Z 0x135
#define BTN_TL 0x136
#define BTN_TR 0x137
#define BTN_TL2 0x138
#define BTN_TR2 0x139
#define BTN_SELECT 0x13a
#define BTN_START 0x13b
#define BTN_MODE 0x13c
#define BTN_THUMBL 0x13d
#define BTN_THUMBR 0x13e
#define BTN_DIGI 0x140
#define BTN_TOOL_PEN 0x140
#define BTN_TOOL_RUBBER 0x141
#define BTN_TOOL_BRUSH 0x142
#define BTN_TOOL_PENCIL 0x143
#define BTN_TOOL_AIRBRUSH 0x144
#define BTN_TOOL_FINGER 0x145
#define BTN_TOOL_MOUSE 0x146
#define BTN_TOOL_LENS 0x147
#define BTN_TOOL_QUINTTAP 0x148 /* Five fingers on trackpad */
#define BTN_STYLUS3 0x149
#define BTN_TOUCH 0x14a
#define BTN_STYLUS 0x14b
#define BTN_STYLUS2 0x14c
#define BTN_TOOL_DOUBLETAP 0x14d
#define BTN_TOOL_TRIPLETAP 0x14e
#define BTN_TOOL_QUADTAP 0x14f /* Four fingers on trackpad */
#define BTN_WHEEL 0x150
#define BTN_GEAR_DOWN 0x150
#define BTN_GEAR_UP 0x151
#define KEY_OK 0x160
#define KEY_SELECT 0x161
#define KEY_GOTO 0x162
#define KEY_CLEAR 0x163
#define KEY_POWER2 0x164
#define KEY_OPTION 0x165
#define KEY_INFO 0x166 /* AL OEM Features/Tips/Tutorial */
#define KEY_TIME 0x167
#define KEY_VENDOR 0x168
#define KEY_ARCHIVE 0x169
#define KEY_PROGRAM 0x16a /* Media Select Program Guide */
#define KEY_CHANNEL 0x16b
#define KEY_FAVORITES 0x16c
#define KEY_EPG 0x16d
#define KEY_PVR 0x16e /* Media Select Home */
#define KEY_MHP 0x16f
#define KEY_LANGUAGE 0x170
#define KEY_TITLE 0x171
#define KEY_SUBTITLE 0x172
#define KEY_ANGLE 0x173
#define KEY_FULL_SCREEN 0x174 /* AC View Toggle */
#define KEY_ZOOM KEY_FULL_SCREEN
#define KEY_MODE 0x175
#define KEY_KEYBOARD 0x176
#define KEY_ASPECT_RATIO 0x177 /* HUTRR37: Aspect */
#define KEY_SCREEN KEY_ASPECT_RATIO
#define KEY_PC 0x178 /* Media Select Computer */
#define KEY_TV 0x179 /* Media Select TV */
#define KEY_TV2 0x17a /* Media Select Cable */
#define KEY_VCR 0x17b /* Media Select VCR */
#define KEY_VCR2 0x17c /* VCR Plus */
#define KEY_SAT 0x17d /* Media Select Satellite */
#define KEY_SAT2 0x17e
#define KEY_CD 0x17f /* Media Select CD */
#define KEY_TAPE 0x180 /* Media Select Tape */
#define KEY_RADIO 0x181
#define KEY_TUNER 0x182 /* Media Select Tuner */
#define KEY_PLAYER 0x183
#define KEY_TEXT 0x184
#define KEY_DVD 0x185 /* Media Select DVD */
#define KEY_AUX 0x186
#define KEY_MP3 0x187
#define KEY_AUDIO 0x188 /* AL Audio Browser */
#define KEY_VIDEO 0x189 /* AL Movie Browser */
#define KEY_DIRECTORY 0x18a
#define KEY_LIST 0x18b
#define KEY_MEMO 0x18c /* Media Select Messages */
#define KEY_CALENDAR 0x18d
#define KEY_RED 0x18e
#define KEY_GREEN 0x18f
#define KEY_YELLOW 0x190
#define KEY_BLUE 0x191
#define KEY_CHANNELUP 0x192 /* Channel Increment */
#define KEY_CHANNELDOWN 0x193 /* Channel Decrement */
#define KEY_FIRST 0x194
#define KEY_LAST 0x195 /* Recall Last */
#define KEY_AB 0x196
#define KEY_NEXT 0x197
#define KEY_RESTART 0x198
#define KEY_SLOW 0x199
#define KEY_SHUFFLE 0x19a
#define KEY_BREAK 0x19b
#define KEY_PREVIOUS 0x19c
#define KEY_DIGITS 0x19d
#define KEY_TEEN 0x19e
#define KEY_TWEN 0x19f
#define KEY_VIDEOPHONE 0x1a0 /* Media Select Video Phone */
#define KEY_GAMES 0x1a1 /* Media Select Games */
#define KEY_ZOOMIN 0x1a2 /* AC Zoom In */
#define KEY_ZOOMOUT 0x1a3 /* AC Zoom Out */
#define KEY_ZOOMRESET 0x1a4 /* AC Zoom */
#define KEY_WORDPROCESSOR 0x1a5 /* AL Word Processor */
#define KEY_EDITOR 0x1a6 /* AL Text Editor */
#define KEY_SPREADSHEET 0x1a7 /* AL Spreadsheet */
#define KEY_GRAPHICSEDITOR 0x1a8 /* AL Graphics Editor */
#define KEY_PRESENTATION 0x1a9 /* AL Presentation App */
#define KEY_DATABASE 0x1aa /* AL Database App */
#define KEY_NEWS 0x1ab /* AL Newsreader */
#define KEY_VOICEMAIL 0x1ac /* AL Voicemail */
#define KEY_ADDRESSBOOK 0x1ad /* AL Contacts/Address Book */
#define KEY_MESSENGER 0x1ae /* AL Instant Messaging */
#define KEY_DISPLAYTOGGLE 0x1af /* Turn display (LCD) on and off */
#define KEY_BRIGHTNESS_TOGGLE KEY_DISPLAYTOGGLE
#define KEY_SPELLCHECK 0x1b0 /* AL Spell Check */
#define KEY_LOGOFF 0x1b1 /* AL Logoff */
#define KEY_DOLLAR 0x1b2
#define KEY_EURO 0x1b3
#define KEY_FRAMEBACK 0x1b4 /* Consumer - transport controls */
#define KEY_FRAMEFORWARD 0x1b5
#define KEY_CONTEXT_MENU 0x1b6 /* GenDesc - system context menu */
#define KEY_MEDIA_REPEAT 0x1b7 /* Consumer - transport control */
#define KEY_10CHANNELSUP 0x1b8 /* 10 channels up (10+) */
#define KEY_10CHANNELSDOWN 0x1b9 /* 10 channels down (10-) */
#define KEY_IMAGES 0x1ba /* AL Image Browser */
#define KEY_NOTIFICATION_CENTER 0x1bc /* Show/hide the notification center */
#define KEY_PICKUP_PHONE 0x1bd /* Answer incoming call */
#define KEY_HANGUP_PHONE 0x1be /* Decline incoming call */
#define KEY_DEL_EOL 0x1c0
#define KEY_DEL_EOS 0x1c1
#define KEY_INS_LINE 0x1c2
#define KEY_DEL_LINE 0x1c3
#define KEY_FN 0x1d0
#define KEY_FN_ESC 0x1d1
#define KEY_FN_F1 0x1d2
#define KEY_FN_F2 0x1d3
#define KEY_FN_F3 0x1d4
#define KEY_FN_F4 0x1d5
#define KEY_FN_F5 0x1d6
#define KEY_FN_F6 0x1d7
#define KEY_FN_F7 0x1d8
#define KEY_FN_F8 0x1d9
#define KEY_FN_F9 0x1da
#define KEY_FN_F10 0x1db
#define KEY_FN_F11 0x1dc
#define KEY_FN_F12 0x1dd
#define KEY_FN_1 0x1de
#define KEY_FN_2 0x1df
#define KEY_FN_D 0x1e0
#define KEY_FN_E 0x1e1
#define KEY_FN_F 0x1e2
#define KEY_FN_S 0x1e3
#define KEY_FN_B 0x1e4
#define KEY_FN_RIGHT_SHIFT 0x1e5
#define KEY_BRL_DOT1 0x1f1
#define KEY_BRL_DOT2 0x1f2
#define KEY_BRL_DOT3 0x1f3
#define KEY_BRL_DOT4 0x1f4
#define KEY_BRL_DOT5 0x1f5
#define KEY_BRL_DOT6 0x1f6
#define KEY_BRL_DOT7 0x1f7
#define KEY_BRL_DOT8 0x1f8
#define KEY_BRL_DOT9 0x1f9
#define KEY_BRL_DOT10 0x1fa
#define KEY_NUMERIC_0 0x200 /* used by phones, remote controls, */
#define KEY_NUMERIC_1 0x201 /* and other keypads */
#define KEY_NUMERIC_2 0x202
#define KEY_NUMERIC_3 0x203
#define KEY_NUMERIC_4 0x204
#define KEY_NUMERIC_5 0x205
#define KEY_NUMERIC_6 0x206
#define KEY_NUMERIC_7 0x207
#define KEY_NUMERIC_8 0x208
#define KEY_NUMERIC_9 0x209
#define KEY_NUMERIC_STAR 0x20a
#define KEY_NUMERIC_POUND 0x20b
#define KEY_NUMERIC_A 0x20c /* Phone key A - HUT Telephony 0xb9 */
#define KEY_NUMERIC_B 0x20d
#define KEY_NUMERIC_C 0x20e
#define KEY_NUMERIC_D 0x20f
#define KEY_CAMERA_FOCUS 0x210
#define KEY_WPS_BUTTON 0x211 /* WiFi Protected Setup key */
#define KEY_TOUCHPAD_TOGGLE 0x212 /* Request switch touchpad on or off */
#define KEY_TOUCHPAD_ON 0x213
#define KEY_TOUCHPAD_OFF 0x214
#define KEY_CAMERA_ZOOMIN 0x215
#define KEY_CAMERA_ZOOMOUT 0x216
#define KEY_CAMERA_UP 0x217
#define KEY_CAMERA_DOWN 0x218
#define KEY_CAMERA_LEFT 0x219
#define KEY_CAMERA_RIGHT 0x21a
#define KEY_ATTENDANT_ON 0x21b
#define KEY_ATTENDANT_OFF 0x21c
#define KEY_ATTENDANT_TOGGLE 0x21d /* Attendant call on or off */
#define KEY_LIGHTS_TOGGLE 0x21e /* Reading light on or off */
#define BTN_DPAD_UP 0x220
#define BTN_DPAD_DOWN 0x221
#define BTN_DPAD_LEFT 0x222
#define BTN_DPAD_RIGHT 0x223
#define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */
#define KEY_ROTATE_LOCK_TOGGLE 0x231 /* Display rotation lock */
#define KEY_BUTTONCONFIG 0x240 /* AL Button Configuration */
#define KEY_TASKMANAGER 0x241 /* AL Task/Project Manager */
#define KEY_JOURNAL 0x242 /* AL Log/Journal/Timecard */
#define KEY_CONTROLPANEL 0x243 /* AL Control Panel */
#define KEY_APPSELECT 0x244 /* AL Select Task/Application */
#define KEY_SCREENSAVER 0x245 /* AL Screen Saver */
#define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */
#define KEY_ASSISTANT 0x247 /* AL Context-aware desktop assistant */
#define KEY_KBD_LAYOUT_NEXT 0x248 /* AC Next Keyboard Layout Select */
#define KEY_EMOJI_PICKER 0x249 /* Show/hide emoji picker (HUTRR101) */
#define KEY_DICTATE 0x24a /* Start or Stop Voice Dictation Session (HUTRR99) */
#define KEY_CAMERA_ACCESS_ENABLE 0x24b /* Enables programmatic access to camera devices. (HUTRR72) */
#define KEY_CAMERA_ACCESS_DISABLE 0x24c /* Disables programmatic access to camera devices. (HUTRR72) */
#define KEY_CAMERA_ACCESS_TOGGLE 0x24d /* Toggles the current state of the camera access control. (HUTRR72) */
#define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */
#define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */
#define KEY_KBDINPUTASSIST_PREV 0x260
#define KEY_KBDINPUTASSIST_NEXT 0x261
#define KEY_KBDINPUTASSIST_PREVGROUP 0x262
#define KEY_KBDINPUTASSIST_NEXTGROUP 0x263
#define KEY_KBDINPUTASSIST_ACCEPT 0x264
#define KEY_KBDINPUTASSIST_CANCEL 0x265
/* Diagonal movement keys */
#define KEY_RIGHT_UP 0x266
#define KEY_RIGHT_DOWN 0x267
#define KEY_LEFT_UP 0x268
#define KEY_LEFT_DOWN 0x269
#define KEY_ROOT_MENU 0x26a /* Show Device's Root Menu */
/* Show Top Menu of the Media (e.g. DVD) */
#define KEY_MEDIA_TOP_MENU 0x26b
#define KEY_NUMERIC_11 0x26c
#define KEY_NUMERIC_12 0x26d
/*
* Toggle Audio Description: refers to an audio service that helps blind and
* visually impaired consumers understand the action in a program. Note: in
* some countries this is referred to as "Video Description".
*/
#define KEY_AUDIO_DESC 0x26e
#define KEY_3D_MODE 0x26f
#define KEY_NEXT_FAVORITE 0x270
#define KEY_STOP_RECORD 0x271
#define KEY_PAUSE_RECORD 0x272
#define KEY_VOD 0x273 /* Video on Demand */
#define KEY_UNMUTE 0x274
#define KEY_FASTREVERSE 0x275
#define KEY_SLOWREVERSE 0x276
/*
* Control a data application associated with the currently viewed channel,
* e.g. teletext or data broadcast application (MHEG, MHP, HbbTV, etc.)
*/
#define KEY_DATA 0x277
#define KEY_ONSCREEN_KEYBOARD 0x278
/* Electronic privacy screen control */
#define KEY_PRIVACY_SCREEN_TOGGLE 0x279
/* Select an area of screen to be copied */
#define KEY_SELECTIVE_SCREENSHOT 0x27a
/* Move the focus to the next or previous user controllable element within a UI container */
#define KEY_NEXT_ELEMENT 0x27b
#define KEY_PREVIOUS_ELEMENT 0x27c
/* Toggle Autopilot engagement */
#define KEY_AUTOPILOT_ENGAGE_TOGGLE 0x27d
/* Shortcut Keys */
#define KEY_MARK_WAYPOINT 0x27e
#define KEY_SOS 0x27f
#define KEY_NAV_CHART 0x280
#define KEY_FISHING_CHART 0x281
#define KEY_SINGLE_RANGE_RADAR 0x282
#define KEY_DUAL_RANGE_RADAR 0x283
#define KEY_RADAR_OVERLAY 0x284
#define KEY_TRADITIONAL_SONAR 0x285
#define KEY_CLEARVU_SONAR 0x286
#define KEY_SIDEVU_SONAR 0x287
#define KEY_NAV_INFO 0x288
#define KEY_BRIGHTNESS_MENU 0x289
/*
* Some keyboards have keys which do not have a defined meaning, these keys
* are intended to be programmed / bound to macros by the user. For most
* keyboards with these macro-keys the key-sequence to inject, or action to
* take, is all handled by software on the host side. So from the kernel's
* point of view these are just normal keys.
*
* The KEY_MACRO# codes below are intended for such keys, which may be labeled
* e.g. G1-G18, or S1 - S30. The KEY_MACRO# codes MUST NOT be used for keys
* where the marking on the key does indicate a defined meaning / purpose.
*
* The KEY_MACRO# codes MUST also NOT be used as fallback for when no existing
* KEY_FOO define matches the marking / purpose. In this case a new KEY_FOO
* define MUST be added.
*/
#define KEY_MACRO1 0x290
#define KEY_MACRO2 0x291
#define KEY_MACRO3 0x292
#define KEY_MACRO4 0x293
#define KEY_MACRO5 0x294
#define KEY_MACRO6 0x295
#define KEY_MACRO7 0x296
#define KEY_MACRO8 0x297
#define KEY_MACRO9 0x298
#define KEY_MACRO10 0x299
#define KEY_MACRO11 0x29a
#define KEY_MACRO12 0x29b
#define KEY_MACRO13 0x29c
#define KEY_MACRO14 0x29d
#define KEY_MACRO15 0x29e
#define KEY_MACRO16 0x29f
#define KEY_MACRO17 0x2a0
#define KEY_MACRO18 0x2a1
#define KEY_MACRO19 0x2a2
#define KEY_MACRO20 0x2a3
#define KEY_MACRO21 0x2a4
#define KEY_MACRO22 0x2a5
#define KEY_MACRO23 0x2a6
#define KEY_MACRO24 0x2a7
#define KEY_MACRO25 0x2a8
#define KEY_MACRO26 0x2a9
#define KEY_MACRO27 0x2aa
#define KEY_MACRO28 0x2ab
#define KEY_MACRO29 0x2ac
#define KEY_MACRO30 0x2ad
/*
* Some keyboards with the macro-keys described above have some extra keys
* for controlling the host-side software responsible for the macro handling:
* -A macro recording start/stop key. Note that not all keyboards which emit
* KEY_MACRO_RECORD_START will also emit KEY_MACRO_RECORD_STOP if
* KEY_MACRO_RECORD_STOP is not advertised, then KEY_MACRO_RECORD_START
* should be interpreted as a recording start/stop toggle;
* -Keys for switching between different macro (pre)sets, either a key for
* cycling through the configured presets or keys to directly select a preset.
*/
#define KEY_MACRO_RECORD_START 0x2b0
#define KEY_MACRO_RECORD_STOP 0x2b1
#define KEY_MACRO_PRESET_CYCLE 0x2b2
#define KEY_MACRO_PRESET1 0x2b3
#define KEY_MACRO_PRESET2 0x2b4
#define KEY_MACRO_PRESET3 0x2b5
/*
* Some keyboards have a buildin LCD panel where the contents are controlled
* by the host. Often these have a number of keys directly below the LCD
* intended for controlling a menu shown on the LCD. These keys often don't
* have any labeling so we just name them KEY_KBD_LCD_MENU#
*/
#define KEY_KBD_LCD_MENU1 0x2b8
#define KEY_KBD_LCD_MENU2 0x2b9
#define KEY_KBD_LCD_MENU3 0x2ba
#define KEY_KBD_LCD_MENU4 0x2bb
#define KEY_KBD_LCD_MENU5 0x2bc
#define BTN_TRIGGER_HAPPY 0x2c0
#define BTN_TRIGGER_HAPPY1 0x2c0
#define BTN_TRIGGER_HAPPY2 0x2c1
#define BTN_TRIGGER_HAPPY3 0x2c2
#define BTN_TRIGGER_HAPPY4 0x2c3
#define BTN_TRIGGER_HAPPY5 0x2c4
#define BTN_TRIGGER_HAPPY6 0x2c5
#define BTN_TRIGGER_HAPPY7 0x2c6
#define BTN_TRIGGER_HAPPY8 0x2c7
#define BTN_TRIGGER_HAPPY9 0x2c8
#define BTN_TRIGGER_HAPPY10 0x2c9
#define BTN_TRIGGER_HAPPY11 0x2ca
#define BTN_TRIGGER_HAPPY12 0x2cb
#define BTN_TRIGGER_HAPPY13 0x2cc
#define BTN_TRIGGER_HAPPY14 0x2cd
#define BTN_TRIGGER_HAPPY15 0x2ce
#define BTN_TRIGGER_HAPPY16 0x2cf
#define BTN_TRIGGER_HAPPY17 0x2d0
#define BTN_TRIGGER_HAPPY18 0x2d1
#define BTN_TRIGGER_HAPPY19 0x2d2
#define BTN_TRIGGER_HAPPY20 0x2d3
#define BTN_TRIGGER_HAPPY21 0x2d4
#define BTN_TRIGGER_HAPPY22 0x2d5
#define BTN_TRIGGER_HAPPY23 0x2d6
#define BTN_TRIGGER_HAPPY24 0x2d7
#define BTN_TRIGGER_HAPPY25 0x2d8
#define BTN_TRIGGER_HAPPY26 0x2d9
#define BTN_TRIGGER_HAPPY27 0x2da
#define BTN_TRIGGER_HAPPY28 0x2db
#define BTN_TRIGGER_HAPPY29 0x2dc
#define BTN_TRIGGER_HAPPY30 0x2dd
#define BTN_TRIGGER_HAPPY31 0x2de
#define BTN_TRIGGER_HAPPY32 0x2df
#define BTN_TRIGGER_HAPPY33 0x2e0
#define BTN_TRIGGER_HAPPY34 0x2e1
#define BTN_TRIGGER_HAPPY35 0x2e2
#define BTN_TRIGGER_HAPPY36 0x2e3
#define BTN_TRIGGER_HAPPY37 0x2e4
#define BTN_TRIGGER_HAPPY38 0x2e5
#define BTN_TRIGGER_HAPPY39 0x2e6
#define BTN_TRIGGER_HAPPY40 0x2e7
/* We avoid low common keys in module aliases so they don't get huge. */
#define KEY_MIN_INTERESTING KEY_MUTE
#define KEY_MAX 0x2ff
#define KEY_CNT (KEY_MAX+1)
/*
* Relative axes
*/
#define REL_X 0x00
#define REL_Y 0x01
#define REL_Z 0x02
#define REL_RX 0x03
#define REL_RY 0x04
#define REL_RZ 0x05
#define REL_HWHEEL 0x06
#define REL_DIAL 0x07
#define REL_WHEEL 0x08
#define REL_MISC 0x09
/*
* 0x0a is reserved and should not be used in input drivers.
* It was used by HID as REL_MISC+1 and userspace needs to detect if
* the next REL_* event is correct or is just REL_MISC + n.
* We define here REL_RESERVED so userspace can rely on it and detect
* the situation described above.
*/
#define REL_RESERVED 0x0a
#define REL_WHEEL_HI_RES 0x0b
#define REL_HWHEEL_HI_RES 0x0c
#define REL_MAX 0x0f
#define REL_CNT (REL_MAX+1)
/*
* Absolute axes
*/
#define ABS_X 0x00
#define ABS_Y 0x01
#define ABS_Z 0x02
#define ABS_RX 0x03
#define ABS_RY 0x04
#define ABS_RZ 0x05
#define ABS_THROTTLE 0x06
#define ABS_RUDDER 0x07
#define ABS_WHEEL 0x08
#define ABS_GAS 0x09
#define ABS_BRAKE 0x0a
#define ABS_HAT0X 0x10
#define ABS_HAT0Y 0x11
#define ABS_HAT1X 0x12
#define ABS_HAT1Y 0x13
#define ABS_HAT2X 0x14
#define ABS_HAT2Y 0x15
#define ABS_HAT3X 0x16
#define ABS_HAT3Y 0x17
#define ABS_PRESSURE 0x18
#define ABS_DISTANCE 0x19
#define ABS_TILT_X 0x1a
#define ABS_TILT_Y 0x1b
#define ABS_TOOL_WIDTH 0x1c
#define ABS_VOLUME 0x20
#define ABS_PROFILE 0x21
#define ABS_MISC 0x28
/*
* 0x2e is reserved and should not be used in input drivers.
* It was used by HID as ABS_MISC+6 and userspace needs to detect if
* the next ABS_* event is correct or is just ABS_MISC + n.
* We define here ABS_RESERVED so userspace can rely on it and detect
* the situation described above.
*/
#define ABS_RESERVED 0x2e
#define ABS_MT_SLOT 0x2f /* MT slot being modified */
#define ABS_MT_TOUCH_MAJOR 0x30 /* Major axis of touching ellipse */
#define ABS_MT_TOUCH_MINOR 0x31 /* Minor axis (omit if circular) */
#define ABS_MT_WIDTH_MAJOR 0x32 /* Major axis of approaching ellipse */
#define ABS_MT_WIDTH_MINOR 0x33 /* Minor axis (omit if circular) */
#define ABS_MT_ORIENTATION 0x34 /* Ellipse orientation */
#define ABS_MT_POSITION_X 0x35 /* Center X touch position */
#define ABS_MT_POSITION_Y 0x36 /* Center Y touch position */
#define ABS_MT_TOOL_TYPE 0x37 /* Type of touching device */
#define ABS_MT_BLOB_ID 0x38 /* Group a set of packets as a blob */
#define ABS_MT_TRACKING_ID 0x39 /* Unique ID of initiated contact */
#define ABS_MT_PRESSURE 0x3a /* Pressure on contact area */
#define ABS_MT_DISTANCE 0x3b /* Contact hover distance */
#define ABS_MT_TOOL_X 0x3c /* Center X tool position */
#define ABS_MT_TOOL_Y 0x3d /* Center Y tool position */
#define ABS_MAX 0x3f
#define ABS_CNT (ABS_MAX+1)
/*
* Switch events
*/
#define SW_LID 0x00 /* set = lid shut */
#define SW_TABLET_MODE 0x01 /* set = tablet mode */
#define SW_HEADPHONE_INSERT 0x02 /* set = inserted */
#define SW_RFKILL_ALL 0x03 /* rfkill master switch, type "any"
set = radio enabled */
#define SW_RADIO SW_RFKILL_ALL /* deprecated */
#define SW_MICROPHONE_INSERT 0x04 /* set = inserted */
#define SW_DOCK 0x05 /* set = plugged into dock */
#define SW_LINEOUT_INSERT 0x06 /* set = inserted */
#define SW_JACK_PHYSICAL_INSERT 0x07 /* set = mechanical switch set */
#define SW_VIDEOOUT_INSERT 0x08 /* set = inserted */
#define SW_CAMERA_LENS_COVER 0x09 /* set = lens covered */
#define SW_KEYPAD_SLIDE 0x0a /* set = keypad slide out */
#define SW_FRONT_PROXIMITY 0x0b /* set = front proximity sensor active */
#define SW_ROTATE_LOCK 0x0c /* set = rotate locked/disabled */
#define SW_LINEIN_INSERT 0x0d /* set = inserted */
#define SW_MUTE_DEVICE 0x0e /* set = device disabled */
#define SW_PEN_INSERTED 0x0f /* set = pen inserted */
#define SW_MACHINE_COVER 0x10 /* set = cover closed */
#define SW_MAX 0x10
#define SW_CNT (SW_MAX+1)
/*
* Misc events
*/
#define MSC_SERIAL 0x00
#define MSC_PULSELED 0x01
#define MSC_GESTURE 0x02
#define MSC_RAW 0x03
#define MSC_SCAN 0x04
#define MSC_TIMESTAMP 0x05
#define MSC_MAX 0x07
#define MSC_CNT (MSC_MAX+1)
/*
* LEDs
*/
#define LED_NUML 0x00
#define LED_CAPSL 0x01
#define LED_SCROLLL 0x02
#define LED_COMPOSE 0x03
#define LED_KANA 0x04
#define LED_SLEEP 0x05
#define LED_SUSPEND 0x06
#define LED_MUTE 0x07
#define LED_MISC 0x08
#define LED_MAIL 0x09
#define LED_CHARGING 0x0a
#define LED_MAX 0x0f
#define LED_CNT (LED_MAX+1)
/*
* Autorepeat values
*/
#define REP_DELAY 0x00
#define REP_PERIOD 0x01
#define REP_MAX 0x01
#define REP_CNT (REP_MAX+1)
/*
* Sounds
*/
#define SND_CLICK 0x00
#define SND_BELL 0x01
#define SND_TONE 0x02
#define SND_MAX 0x07
#define SND_CNT (SND_MAX+1)
#endif

View File

@@ -0,0 +1 @@
../../uapi/linux/input-event-codes.h

View File

@@ -171,6 +171,12 @@
#define TEGRA234_SID_HOST1X_CTX6 0x3b
#define TEGRA234_SID_HOST1X_CTX7 0x3c
/*FSI Stream Id*/
#define TEGRA234_SID_NISO1_FSI_CPU0 TEGRA234_SID_FSI
#define TEGRA234_SID_NISO1_FSI_CPU1 0x4BU
#define TEGRA234_SID_NISO1_FSI_CPU2 0x4CU
#define TEGRA234_SID_NISO1_FSI_CPU3 0X4DU
/*
* memory client IDs
*/
@@ -536,4 +542,9 @@
#define TEGRA234_MEMORY_CLIENT_NVJPG1SRD 0x123
#define TEGRA234_MEMORY_CLIENT_NVJPG1SWR 0x124
/* ICC ID's for dummy MC clients used to represent CPU Clusters */
#define TEGRA_ICC_MC_CPU_CLUSTER0 1003
#define TEGRA_ICC_MC_CPU_CLUSTER1 1004
#define TEGRA_ICC_MC_CPU_CLUSTER2 1005
#endif

View File

@@ -0,0 +1,26 @@
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __DT_RT5640_H
#define __DT_RT5640_H
#define RT5640_DMIC1_DATA_PIN_NONE 0
#define RT5640_DMIC1_DATA_PIN_IN1P 1
#define RT5640_DMIC1_DATA_PIN_GPIO3 2
#define RT5640_DMIC2_DATA_PIN_NONE 0
#define RT5640_DMIC2_DATA_PIN_IN1N 1
#define RT5640_DMIC2_DATA_PIN_GPIO4 2
#define RT5640_JD_SRC_GPIO1 1
#define RT5640_JD_SRC_JD1_IN4P 2
#define RT5640_JD_SRC_JD2_IN4N 3
#define RT5640_JD_SRC_GPIO2 4
#define RT5640_JD_SRC_GPIO3 5
#define RT5640_JD_SRC_GPIO4 6
#define RT5640_JD_SRC_HDA_HEADER 7
#define RT5640_OVCD_SF_0P5 0
#define RT5640_OVCD_SF_0P75 1
#define RT5640_OVCD_SF_1P0 2
#define RT5640_OVCD_SF_1P5 3
#endif /* __DT_RT5640_H */

View File

@@ -0,0 +1,19 @@
/* SPDX-License-Identifier: GPL-2.0 */
/*
* This header provides constants for binding nvidia,tegra234-bpmp-thermal.
*/
#ifndef _DT_BINDINGS_THERMAL_TEGRA234_BPMP_THERMAL_H
#define _DT_BINDINGS_THERMAL_TEGRA234_BPMP_THERMAL_H
#define TEGRA234_BPMP_THERMAL_ZONE_CPU 0
#define TEGRA234_BPMP_THERMAL_ZONE_GPU 1
#define TEGRA234_BPMP_THERMAL_ZONE_CV0 2
#define TEGRA234_BPMP_THERMAL_ZONE_CV1 3
#define TEGRA234_BPMP_THERMAL_ZONE_CV2 4
#define TEGRA234_BPMP_THERMAL_ZONE_SOC0 5
#define TEGRA234_BPMP_THERMAL_ZONE_SOC1 6
#define TEGRA234_BPMP_THERMAL_ZONE_SOC2 7
#define TEGRA234_BPMP_THERMAL_ZONE_TJ_MAX 8
#endif

View File

@@ -0,0 +1,16 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* This header provides constants for most thermal bindings.
*
* Copyright (C) 2013 Texas Instruments
* Eduardo Valentin <eduardo.valentin@ti.com>
*/
#ifndef _DT_BINDINGS_THERMAL_THERMAL_H
#define _DT_BINDINGS_THERMAL_THERMAL_H
/* On cooling devices upper and lower limits */
#define THERMAL_NO_LIMIT (~0)
#endif

View File

@@ -0,0 +1,977 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/*
* Input event codes
*
* *** IMPORTANT ***
* This file is not only included from C-code but also from devicetree source
* files. As such this file MUST only contain comments and defines.
*
* Copyright (c) 1999-2002 Vojtech Pavlik
* Copyright (c) 2015 Hans de Goede <hdegoede@redhat.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 as published by
* the Free Software Foundation.
*/
#ifndef _UAPI_INPUT_EVENT_CODES_H
#define _UAPI_INPUT_EVENT_CODES_H
/*
* Device properties and quirks
*/
#define INPUT_PROP_POINTER 0x00 /* needs a pointer */
#define INPUT_PROP_DIRECT 0x01 /* direct input devices */
#define INPUT_PROP_BUTTONPAD 0x02 /* has button(s) under pad */
#define INPUT_PROP_SEMI_MT 0x03 /* touch rectangle only */
#define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */
#define INPUT_PROP_POINTING_STICK 0x05 /* is a pointing stick */
#define INPUT_PROP_ACCELEROMETER 0x06 /* has accelerometer */
#define INPUT_PROP_MAX 0x1f
#define INPUT_PROP_CNT (INPUT_PROP_MAX + 1)
/*
* Event types
*/
#define EV_SYN 0x00
#define EV_KEY 0x01
#define EV_REL 0x02
#define EV_ABS 0x03
#define EV_MSC 0x04
#define EV_SW 0x05
#define EV_LED 0x11
#define EV_SND 0x12
#define EV_REP 0x14
#define EV_FF 0x15
#define EV_PWR 0x16
#define EV_FF_STATUS 0x17
#define EV_MAX 0x1f
#define EV_CNT (EV_MAX+1)
/*
* Synchronization events.
*/
#define SYN_REPORT 0
#define SYN_CONFIG 1
#define SYN_MT_REPORT 2
#define SYN_DROPPED 3
#define SYN_MAX 0xf
#define SYN_CNT (SYN_MAX+1)
/*
* Keys and buttons
*
* Most of the keys/buttons are modeled after USB HUT 1.12
* (see http://www.usb.org/developers/hidpage).
* Abbreviations in the comments:
* AC - Application Control
* AL - Application Launch Button
* SC - System Control
*/
#define KEY_RESERVED 0
#define KEY_ESC 1
#define KEY_1 2
#define KEY_2 3
#define KEY_3 4
#define KEY_4 5
#define KEY_5 6
#define KEY_6 7
#define KEY_7 8
#define KEY_8 9
#define KEY_9 10
#define KEY_0 11
#define KEY_MINUS 12
#define KEY_EQUAL 13
#define KEY_BACKSPACE 14
#define KEY_TAB 15
#define KEY_Q 16
#define KEY_W 17
#define KEY_E 18
#define KEY_R 19
#define KEY_T 20
#define KEY_Y 21
#define KEY_U 22
#define KEY_I 23
#define KEY_O 24
#define KEY_P 25
#define KEY_LEFTBRACE 26
#define KEY_RIGHTBRACE 27
#define KEY_ENTER 28
#define KEY_LEFTCTRL 29
#define KEY_A 30
#define KEY_S 31
#define KEY_D 32
#define KEY_F 33
#define KEY_G 34
#define KEY_H 35
#define KEY_J 36
#define KEY_K 37
#define KEY_L 38
#define KEY_SEMICOLON 39
#define KEY_APOSTROPHE 40
#define KEY_GRAVE 41
#define KEY_LEFTSHIFT 42
#define KEY_BACKSLASH 43
#define KEY_Z 44
#define KEY_X 45
#define KEY_C 46
#define KEY_V 47
#define KEY_B 48
#define KEY_N 49
#define KEY_M 50
#define KEY_COMMA 51
#define KEY_DOT 52
#define KEY_SLASH 53
#define KEY_RIGHTSHIFT 54
#define KEY_KPASTERISK 55
#define KEY_LEFTALT 56
#define KEY_SPACE 57
#define KEY_CAPSLOCK 58
#define KEY_F1 59
#define KEY_F2 60
#define KEY_F3 61
#define KEY_F4 62
#define KEY_F5 63
#define KEY_F6 64
#define KEY_F7 65
#define KEY_F8 66
#define KEY_F9 67
#define KEY_F10 68
#define KEY_NUMLOCK 69
#define KEY_SCROLLLOCK 70
#define KEY_KP7 71
#define KEY_KP8 72
#define KEY_KP9 73
#define KEY_KPMINUS 74
#define KEY_KP4 75
#define KEY_KP5 76
#define KEY_KP6 77
#define KEY_KPPLUS 78
#define KEY_KP1 79
#define KEY_KP2 80
#define KEY_KP3 81
#define KEY_KP0 82
#define KEY_KPDOT 83
#define KEY_ZENKAKUHANKAKU 85
#define KEY_102ND 86
#define KEY_F11 87
#define KEY_F12 88
#define KEY_RO 89
#define KEY_KATAKANA 90
#define KEY_HIRAGANA 91
#define KEY_HENKAN 92
#define KEY_KATAKANAHIRAGANA 93
#define KEY_MUHENKAN 94
#define KEY_KPJPCOMMA 95
#define KEY_KPENTER 96
#define KEY_RIGHTCTRL 97
#define KEY_KPSLASH 98
#define KEY_SYSRQ 99
#define KEY_RIGHTALT 100
#define KEY_LINEFEED 101
#define KEY_HOME 102
#define KEY_UP 103
#define KEY_PAGEUP 104
#define KEY_LEFT 105
#define KEY_RIGHT 106
#define KEY_END 107
#define KEY_DOWN 108
#define KEY_PAGEDOWN 109
#define KEY_INSERT 110
#define KEY_DELETE 111
#define KEY_MACRO 112
#define KEY_MUTE 113
#define KEY_VOLUMEDOWN 114
#define KEY_VOLUMEUP 115
#define KEY_POWER 116 /* SC System Power Down */
#define KEY_KPEQUAL 117
#define KEY_KPPLUSMINUS 118
#define KEY_PAUSE 119
#define KEY_SCALE 120 /* AL Compiz Scale (Expose) */
#define KEY_KPCOMMA 121
#define KEY_HANGEUL 122
#define KEY_HANGUEL KEY_HANGEUL
#define KEY_HANJA 123
#define KEY_YEN 124
#define KEY_LEFTMETA 125
#define KEY_RIGHTMETA 126
#define KEY_COMPOSE 127
#define KEY_STOP 128 /* AC Stop */
#define KEY_AGAIN 129
#define KEY_PROPS 130 /* AC Properties */
#define KEY_UNDO 131 /* AC Undo */
#define KEY_FRONT 132
#define KEY_COPY 133 /* AC Copy */
#define KEY_OPEN 134 /* AC Open */
#define KEY_PASTE 135 /* AC Paste */
#define KEY_FIND 136 /* AC Search */
#define KEY_CUT 137 /* AC Cut */
#define KEY_HELP 138 /* AL Integrated Help Center */
#define KEY_MENU 139 /* Menu (show menu) */
#define KEY_CALC 140 /* AL Calculator */
#define KEY_SETUP 141
#define KEY_SLEEP 142 /* SC System Sleep */
#define KEY_WAKEUP 143 /* System Wake Up */
#define KEY_FILE 144 /* AL Local Machine Browser */
#define KEY_SENDFILE 145
#define KEY_DELETEFILE 146
#define KEY_XFER 147
#define KEY_PROG1 148
#define KEY_PROG2 149
#define KEY_WWW 150 /* AL Internet Browser */
#define KEY_MSDOS 151
#define KEY_COFFEE 152 /* AL Terminal Lock/Screensaver */
#define KEY_SCREENLOCK KEY_COFFEE
#define KEY_ROTATE_DISPLAY 153 /* Display orientation for e.g. tablets */
#define KEY_DIRECTION KEY_ROTATE_DISPLAY
#define KEY_CYCLEWINDOWS 154
#define KEY_MAIL 155
#define KEY_BOOKMARKS 156 /* AC Bookmarks */
#define KEY_COMPUTER 157
#define KEY_BACK 158 /* AC Back */
#define KEY_FORWARD 159 /* AC Forward */
#define KEY_CLOSECD 160
#define KEY_EJECTCD 161
#define KEY_EJECTCLOSECD 162
#define KEY_NEXTSONG 163
#define KEY_PLAYPAUSE 164
#define KEY_PREVIOUSSONG 165
#define KEY_STOPCD 166
#define KEY_RECORD 167
#define KEY_REWIND 168
#define KEY_PHONE 169 /* Media Select Telephone */
#define KEY_ISO 170
#define KEY_CONFIG 171 /* AL Consumer Control Configuration */
#define KEY_HOMEPAGE 172 /* AC Home */
#define KEY_REFRESH 173 /* AC Refresh */
#define KEY_EXIT 174 /* AC Exit */
#define KEY_MOVE 175
#define KEY_EDIT 176
#define KEY_SCROLLUP 177
#define KEY_SCROLLDOWN 178
#define KEY_KPLEFTPAREN 179
#define KEY_KPRIGHTPAREN 180
#define KEY_NEW 181 /* AC New */
#define KEY_REDO 182 /* AC Redo/Repeat */
#define KEY_F13 183
#define KEY_F14 184
#define KEY_F15 185
#define KEY_F16 186
#define KEY_F17 187
#define KEY_F18 188
#define KEY_F19 189
#define KEY_F20 190
#define KEY_F21 191
#define KEY_F22 192
#define KEY_F23 193
#define KEY_F24 194
#define KEY_PLAYCD 200
#define KEY_PAUSECD 201
#define KEY_PROG3 202
#define KEY_PROG4 203
#define KEY_ALL_APPLICATIONS 204 /* AC Desktop Show All Applications */
#define KEY_DASHBOARD KEY_ALL_APPLICATIONS
#define KEY_SUSPEND 205
#define KEY_CLOSE 206 /* AC Close */
#define KEY_PLAY 207
#define KEY_FASTFORWARD 208
#define KEY_BASSBOOST 209
#define KEY_PRINT 210 /* AC Print */
#define KEY_HP 211
#define KEY_CAMERA 212
#define KEY_SOUND 213
#define KEY_QUESTION 214
#define KEY_EMAIL 215
#define KEY_CHAT 216
#define KEY_SEARCH 217
#define KEY_CONNECT 218
#define KEY_FINANCE 219 /* AL Checkbook/Finance */
#define KEY_SPORT 220
#define KEY_SHOP 221
#define KEY_ALTERASE 222
#define KEY_CANCEL 223 /* AC Cancel */
#define KEY_BRIGHTNESSDOWN 224
#define KEY_BRIGHTNESSUP 225
#define KEY_MEDIA 226
#define KEY_SWITCHVIDEOMODE 227 /* Cycle between available video
outputs (Monitor/LCD/TV-out/etc) */
#define KEY_KBDILLUMTOGGLE 228
#define KEY_KBDILLUMDOWN 229
#define KEY_KBDILLUMUP 230
#define KEY_SEND 231 /* AC Send */
#define KEY_REPLY 232 /* AC Reply */
#define KEY_FORWARDMAIL 233 /* AC Forward Msg */
#define KEY_SAVE 234 /* AC Save */
#define KEY_DOCUMENTS 235
#define KEY_BATTERY 236
#define KEY_BLUETOOTH 237
#define KEY_WLAN 238
#define KEY_UWB 239
#define KEY_UNKNOWN 240
#define KEY_VIDEO_NEXT 241 /* drive next video source */
#define KEY_VIDEO_PREV 242 /* drive previous video source */
#define KEY_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */
#define KEY_BRIGHTNESS_AUTO 244 /* Set Auto Brightness: manual
brightness control is off,
rely on ambient */
#define KEY_BRIGHTNESS_ZERO KEY_BRIGHTNESS_AUTO
#define KEY_DISPLAY_OFF 245 /* display device to off state */
#define KEY_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */
#define KEY_WIMAX KEY_WWAN
#define KEY_RFKILL 247 /* Key that controls all radios */
#define KEY_MICMUTE 248 /* Mute / unmute the microphone */
/* Code 255 is reserved for special needs of AT keyboard driver */
#define BTN_MISC 0x100
#define BTN_0 0x100
#define BTN_1 0x101
#define BTN_2 0x102
#define BTN_3 0x103
#define BTN_4 0x104
#define BTN_5 0x105
#define BTN_6 0x106
#define BTN_7 0x107
#define BTN_8 0x108
#define BTN_9 0x109
#define BTN_MOUSE 0x110
#define BTN_LEFT 0x110
#define BTN_RIGHT 0x111
#define BTN_MIDDLE 0x112
#define BTN_SIDE 0x113
#define BTN_EXTRA 0x114
#define BTN_FORWARD 0x115
#define BTN_BACK 0x116
#define BTN_TASK 0x117
#define BTN_JOYSTICK 0x120
#define BTN_TRIGGER 0x120
#define BTN_THUMB 0x121
#define BTN_THUMB2 0x122
#define BTN_TOP 0x123
#define BTN_TOP2 0x124
#define BTN_PINKIE 0x125
#define BTN_BASE 0x126
#define BTN_BASE2 0x127
#define BTN_BASE3 0x128
#define BTN_BASE4 0x129
#define BTN_BASE5 0x12a
#define BTN_BASE6 0x12b
#define BTN_DEAD 0x12f
#define BTN_GAMEPAD 0x130
#define BTN_SOUTH 0x130
#define BTN_A BTN_SOUTH
#define BTN_EAST 0x131
#define BTN_B BTN_EAST
#define BTN_C 0x132
#define BTN_NORTH 0x133
#define BTN_X BTN_NORTH
#define BTN_WEST 0x134
#define BTN_Y BTN_WEST
#define BTN_Z 0x135
#define BTN_TL 0x136
#define BTN_TR 0x137
#define BTN_TL2 0x138
#define BTN_TR2 0x139
#define BTN_SELECT 0x13a
#define BTN_START 0x13b
#define BTN_MODE 0x13c
#define BTN_THUMBL 0x13d
#define BTN_THUMBR 0x13e
#define BTN_DIGI 0x140
#define BTN_TOOL_PEN 0x140
#define BTN_TOOL_RUBBER 0x141
#define BTN_TOOL_BRUSH 0x142
#define BTN_TOOL_PENCIL 0x143
#define BTN_TOOL_AIRBRUSH 0x144
#define BTN_TOOL_FINGER 0x145
#define BTN_TOOL_MOUSE 0x146
#define BTN_TOOL_LENS 0x147
#define BTN_TOOL_QUINTTAP 0x148 /* Five fingers on trackpad */
#define BTN_STYLUS3 0x149
#define BTN_TOUCH 0x14a
#define BTN_STYLUS 0x14b
#define BTN_STYLUS2 0x14c
#define BTN_TOOL_DOUBLETAP 0x14d
#define BTN_TOOL_TRIPLETAP 0x14e
#define BTN_TOOL_QUADTAP 0x14f /* Four fingers on trackpad */
#define BTN_WHEEL 0x150
#define BTN_GEAR_DOWN 0x150
#define BTN_GEAR_UP 0x151
#define KEY_OK 0x160
#define KEY_SELECT 0x161
#define KEY_GOTO 0x162
#define KEY_CLEAR 0x163
#define KEY_POWER2 0x164
#define KEY_OPTION 0x165
#define KEY_INFO 0x166 /* AL OEM Features/Tips/Tutorial */
#define KEY_TIME 0x167
#define KEY_VENDOR 0x168
#define KEY_ARCHIVE 0x169
#define KEY_PROGRAM 0x16a /* Media Select Program Guide */
#define KEY_CHANNEL 0x16b
#define KEY_FAVORITES 0x16c
#define KEY_EPG 0x16d
#define KEY_PVR 0x16e /* Media Select Home */
#define KEY_MHP 0x16f
#define KEY_LANGUAGE 0x170
#define KEY_TITLE 0x171
#define KEY_SUBTITLE 0x172
#define KEY_ANGLE 0x173
#define KEY_FULL_SCREEN 0x174 /* AC View Toggle */
#define KEY_ZOOM KEY_FULL_SCREEN
#define KEY_MODE 0x175
#define KEY_KEYBOARD 0x176
#define KEY_ASPECT_RATIO 0x177 /* HUTRR37: Aspect */
#define KEY_SCREEN KEY_ASPECT_RATIO
#define KEY_PC 0x178 /* Media Select Computer */
#define KEY_TV 0x179 /* Media Select TV */
#define KEY_TV2 0x17a /* Media Select Cable */
#define KEY_VCR 0x17b /* Media Select VCR */
#define KEY_VCR2 0x17c /* VCR Plus */
#define KEY_SAT 0x17d /* Media Select Satellite */
#define KEY_SAT2 0x17e
#define KEY_CD 0x17f /* Media Select CD */
#define KEY_TAPE 0x180 /* Media Select Tape */
#define KEY_RADIO 0x181
#define KEY_TUNER 0x182 /* Media Select Tuner */
#define KEY_PLAYER 0x183
#define KEY_TEXT 0x184
#define KEY_DVD 0x185 /* Media Select DVD */
#define KEY_AUX 0x186
#define KEY_MP3 0x187
#define KEY_AUDIO 0x188 /* AL Audio Browser */
#define KEY_VIDEO 0x189 /* AL Movie Browser */
#define KEY_DIRECTORY 0x18a
#define KEY_LIST 0x18b
#define KEY_MEMO 0x18c /* Media Select Messages */
#define KEY_CALENDAR 0x18d
#define KEY_RED 0x18e
#define KEY_GREEN 0x18f
#define KEY_YELLOW 0x190
#define KEY_BLUE 0x191
#define KEY_CHANNELUP 0x192 /* Channel Increment */
#define KEY_CHANNELDOWN 0x193 /* Channel Decrement */
#define KEY_FIRST 0x194
#define KEY_LAST 0x195 /* Recall Last */
#define KEY_AB 0x196
#define KEY_NEXT 0x197
#define KEY_RESTART 0x198
#define KEY_SLOW 0x199
#define KEY_SHUFFLE 0x19a
#define KEY_BREAK 0x19b
#define KEY_PREVIOUS 0x19c
#define KEY_DIGITS 0x19d
#define KEY_TEEN 0x19e
#define KEY_TWEN 0x19f
#define KEY_VIDEOPHONE 0x1a0 /* Media Select Video Phone */
#define KEY_GAMES 0x1a1 /* Media Select Games */
#define KEY_ZOOMIN 0x1a2 /* AC Zoom In */
#define KEY_ZOOMOUT 0x1a3 /* AC Zoom Out */
#define KEY_ZOOMRESET 0x1a4 /* AC Zoom */
#define KEY_WORDPROCESSOR 0x1a5 /* AL Word Processor */
#define KEY_EDITOR 0x1a6 /* AL Text Editor */
#define KEY_SPREADSHEET 0x1a7 /* AL Spreadsheet */
#define KEY_GRAPHICSEDITOR 0x1a8 /* AL Graphics Editor */
#define KEY_PRESENTATION 0x1a9 /* AL Presentation App */
#define KEY_DATABASE 0x1aa /* AL Database App */
#define KEY_NEWS 0x1ab /* AL Newsreader */
#define KEY_VOICEMAIL 0x1ac /* AL Voicemail */
#define KEY_ADDRESSBOOK 0x1ad /* AL Contacts/Address Book */
#define KEY_MESSENGER 0x1ae /* AL Instant Messaging */
#define KEY_DISPLAYTOGGLE 0x1af /* Turn display (LCD) on and off */
#define KEY_BRIGHTNESS_TOGGLE KEY_DISPLAYTOGGLE
#define KEY_SPELLCHECK 0x1b0 /* AL Spell Check */
#define KEY_LOGOFF 0x1b1 /* AL Logoff */
#define KEY_DOLLAR 0x1b2
#define KEY_EURO 0x1b3
#define KEY_FRAMEBACK 0x1b4 /* Consumer - transport controls */
#define KEY_FRAMEFORWARD 0x1b5
#define KEY_CONTEXT_MENU 0x1b6 /* GenDesc - system context menu */
#define KEY_MEDIA_REPEAT 0x1b7 /* Consumer - transport control */
#define KEY_10CHANNELSUP 0x1b8 /* 10 channels up (10+) */
#define KEY_10CHANNELSDOWN 0x1b9 /* 10 channels down (10-) */
#define KEY_IMAGES 0x1ba /* AL Image Browser */
#define KEY_NOTIFICATION_CENTER 0x1bc /* Show/hide the notification center */
#define KEY_PICKUP_PHONE 0x1bd /* Answer incoming call */
#define KEY_HANGUP_PHONE 0x1be /* Decline incoming call */
#define KEY_DEL_EOL 0x1c0
#define KEY_DEL_EOS 0x1c1
#define KEY_INS_LINE 0x1c2
#define KEY_DEL_LINE 0x1c3
#define KEY_FN 0x1d0
#define KEY_FN_ESC 0x1d1
#define KEY_FN_F1 0x1d2
#define KEY_FN_F2 0x1d3
#define KEY_FN_F3 0x1d4
#define KEY_FN_F4 0x1d5
#define KEY_FN_F5 0x1d6
#define KEY_FN_F6 0x1d7
#define KEY_FN_F7 0x1d8
#define KEY_FN_F8 0x1d9
#define KEY_FN_F9 0x1da
#define KEY_FN_F10 0x1db
#define KEY_FN_F11 0x1dc
#define KEY_FN_F12 0x1dd
#define KEY_FN_1 0x1de
#define KEY_FN_2 0x1df
#define KEY_FN_D 0x1e0
#define KEY_FN_E 0x1e1
#define KEY_FN_F 0x1e2
#define KEY_FN_S 0x1e3
#define KEY_FN_B 0x1e4
#define KEY_FN_RIGHT_SHIFT 0x1e5
#define KEY_BRL_DOT1 0x1f1
#define KEY_BRL_DOT2 0x1f2
#define KEY_BRL_DOT3 0x1f3
#define KEY_BRL_DOT4 0x1f4
#define KEY_BRL_DOT5 0x1f5
#define KEY_BRL_DOT6 0x1f6
#define KEY_BRL_DOT7 0x1f7
#define KEY_BRL_DOT8 0x1f8
#define KEY_BRL_DOT9 0x1f9
#define KEY_BRL_DOT10 0x1fa
#define KEY_NUMERIC_0 0x200 /* used by phones, remote controls, */
#define KEY_NUMERIC_1 0x201 /* and other keypads */
#define KEY_NUMERIC_2 0x202
#define KEY_NUMERIC_3 0x203
#define KEY_NUMERIC_4 0x204
#define KEY_NUMERIC_5 0x205
#define KEY_NUMERIC_6 0x206
#define KEY_NUMERIC_7 0x207
#define KEY_NUMERIC_8 0x208
#define KEY_NUMERIC_9 0x209
#define KEY_NUMERIC_STAR 0x20a
#define KEY_NUMERIC_POUND 0x20b
#define KEY_NUMERIC_A 0x20c /* Phone key A - HUT Telephony 0xb9 */
#define KEY_NUMERIC_B 0x20d
#define KEY_NUMERIC_C 0x20e
#define KEY_NUMERIC_D 0x20f
#define KEY_CAMERA_FOCUS 0x210
#define KEY_WPS_BUTTON 0x211 /* WiFi Protected Setup key */
#define KEY_TOUCHPAD_TOGGLE 0x212 /* Request switch touchpad on or off */
#define KEY_TOUCHPAD_ON 0x213
#define KEY_TOUCHPAD_OFF 0x214
#define KEY_CAMERA_ZOOMIN 0x215
#define KEY_CAMERA_ZOOMOUT 0x216
#define KEY_CAMERA_UP 0x217
#define KEY_CAMERA_DOWN 0x218
#define KEY_CAMERA_LEFT 0x219
#define KEY_CAMERA_RIGHT 0x21a
#define KEY_ATTENDANT_ON 0x21b
#define KEY_ATTENDANT_OFF 0x21c
#define KEY_ATTENDANT_TOGGLE 0x21d /* Attendant call on or off */
#define KEY_LIGHTS_TOGGLE 0x21e /* Reading light on or off */
#define BTN_DPAD_UP 0x220
#define BTN_DPAD_DOWN 0x221
#define BTN_DPAD_LEFT 0x222
#define BTN_DPAD_RIGHT 0x223
#define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */
#define KEY_ROTATE_LOCK_TOGGLE 0x231 /* Display rotation lock */
#define KEY_BUTTONCONFIG 0x240 /* AL Button Configuration */
#define KEY_TASKMANAGER 0x241 /* AL Task/Project Manager */
#define KEY_JOURNAL 0x242 /* AL Log/Journal/Timecard */
#define KEY_CONTROLPANEL 0x243 /* AL Control Panel */
#define KEY_APPSELECT 0x244 /* AL Select Task/Application */
#define KEY_SCREENSAVER 0x245 /* AL Screen Saver */
#define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */
#define KEY_ASSISTANT 0x247 /* AL Context-aware desktop assistant */
#define KEY_KBD_LAYOUT_NEXT 0x248 /* AC Next Keyboard Layout Select */
#define KEY_EMOJI_PICKER 0x249 /* Show/hide emoji picker (HUTRR101) */
#define KEY_DICTATE 0x24a /* Start or Stop Voice Dictation Session (HUTRR99) */
#define KEY_CAMERA_ACCESS_ENABLE 0x24b /* Enables programmatic access to camera devices. (HUTRR72) */
#define KEY_CAMERA_ACCESS_DISABLE 0x24c /* Disables programmatic access to camera devices. (HUTRR72) */
#define KEY_CAMERA_ACCESS_TOGGLE 0x24d /* Toggles the current state of the camera access control. (HUTRR72) */
#define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */
#define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */
#define KEY_KBDINPUTASSIST_PREV 0x260
#define KEY_KBDINPUTASSIST_NEXT 0x261
#define KEY_KBDINPUTASSIST_PREVGROUP 0x262
#define KEY_KBDINPUTASSIST_NEXTGROUP 0x263
#define KEY_KBDINPUTASSIST_ACCEPT 0x264
#define KEY_KBDINPUTASSIST_CANCEL 0x265
/* Diagonal movement keys */
#define KEY_RIGHT_UP 0x266
#define KEY_RIGHT_DOWN 0x267
#define KEY_LEFT_UP 0x268
#define KEY_LEFT_DOWN 0x269
#define KEY_ROOT_MENU 0x26a /* Show Device's Root Menu */
/* Show Top Menu of the Media (e.g. DVD) */
#define KEY_MEDIA_TOP_MENU 0x26b
#define KEY_NUMERIC_11 0x26c
#define KEY_NUMERIC_12 0x26d
/*
* Toggle Audio Description: refers to an audio service that helps blind and
* visually impaired consumers understand the action in a program. Note: in
* some countries this is referred to as "Video Description".
*/
#define KEY_AUDIO_DESC 0x26e
#define KEY_3D_MODE 0x26f
#define KEY_NEXT_FAVORITE 0x270
#define KEY_STOP_RECORD 0x271
#define KEY_PAUSE_RECORD 0x272
#define KEY_VOD 0x273 /* Video on Demand */
#define KEY_UNMUTE 0x274
#define KEY_FASTREVERSE 0x275
#define KEY_SLOWREVERSE 0x276
/*
* Control a data application associated with the currently viewed channel,
* e.g. teletext or data broadcast application (MHEG, MHP, HbbTV, etc.)
*/
#define KEY_DATA 0x277
#define KEY_ONSCREEN_KEYBOARD 0x278
/* Electronic privacy screen control */
#define KEY_PRIVACY_SCREEN_TOGGLE 0x279
/* Select an area of screen to be copied */
#define KEY_SELECTIVE_SCREENSHOT 0x27a
/* Move the focus to the next or previous user controllable element within a UI container */
#define KEY_NEXT_ELEMENT 0x27b
#define KEY_PREVIOUS_ELEMENT 0x27c
/* Toggle Autopilot engagement */
#define KEY_AUTOPILOT_ENGAGE_TOGGLE 0x27d
/* Shortcut Keys */
#define KEY_MARK_WAYPOINT 0x27e
#define KEY_SOS 0x27f
#define KEY_NAV_CHART 0x280
#define KEY_FISHING_CHART 0x281
#define KEY_SINGLE_RANGE_RADAR 0x282
#define KEY_DUAL_RANGE_RADAR 0x283
#define KEY_RADAR_OVERLAY 0x284
#define KEY_TRADITIONAL_SONAR 0x285
#define KEY_CLEARVU_SONAR 0x286
#define KEY_SIDEVU_SONAR 0x287
#define KEY_NAV_INFO 0x288
#define KEY_BRIGHTNESS_MENU 0x289
/*
* Some keyboards have keys which do not have a defined meaning, these keys
* are intended to be programmed / bound to macros by the user. For most
* keyboards with these macro-keys the key-sequence to inject, or action to
* take, is all handled by software on the host side. So from the kernel's
* point of view these are just normal keys.
*
* The KEY_MACRO# codes below are intended for such keys, which may be labeled
* e.g. G1-G18, or S1 - S30. The KEY_MACRO# codes MUST NOT be used for keys
* where the marking on the key does indicate a defined meaning / purpose.
*
* The KEY_MACRO# codes MUST also NOT be used as fallback for when no existing
* KEY_FOO define matches the marking / purpose. In this case a new KEY_FOO
* define MUST be added.
*/
#define KEY_MACRO1 0x290
#define KEY_MACRO2 0x291
#define KEY_MACRO3 0x292
#define KEY_MACRO4 0x293
#define KEY_MACRO5 0x294
#define KEY_MACRO6 0x295
#define KEY_MACRO7 0x296
#define KEY_MACRO8 0x297
#define KEY_MACRO9 0x298
#define KEY_MACRO10 0x299
#define KEY_MACRO11 0x29a
#define KEY_MACRO12 0x29b
#define KEY_MACRO13 0x29c
#define KEY_MACRO14 0x29d
#define KEY_MACRO15 0x29e
#define KEY_MACRO16 0x29f
#define KEY_MACRO17 0x2a0
#define KEY_MACRO18 0x2a1
#define KEY_MACRO19 0x2a2
#define KEY_MACRO20 0x2a3
#define KEY_MACRO21 0x2a4
#define KEY_MACRO22 0x2a5
#define KEY_MACRO23 0x2a6
#define KEY_MACRO24 0x2a7
#define KEY_MACRO25 0x2a8
#define KEY_MACRO26 0x2a9
#define KEY_MACRO27 0x2aa
#define KEY_MACRO28 0x2ab
#define KEY_MACRO29 0x2ac
#define KEY_MACRO30 0x2ad
/*
* Some keyboards with the macro-keys described above have some extra keys
* for controlling the host-side software responsible for the macro handling:
* -A macro recording start/stop key. Note that not all keyboards which emit
* KEY_MACRO_RECORD_START will also emit KEY_MACRO_RECORD_STOP if
* KEY_MACRO_RECORD_STOP is not advertised, then KEY_MACRO_RECORD_START
* should be interpreted as a recording start/stop toggle;
* -Keys for switching between different macro (pre)sets, either a key for
* cycling through the configured presets or keys to directly select a preset.
*/
#define KEY_MACRO_RECORD_START 0x2b0
#define KEY_MACRO_RECORD_STOP 0x2b1
#define KEY_MACRO_PRESET_CYCLE 0x2b2
#define KEY_MACRO_PRESET1 0x2b3
#define KEY_MACRO_PRESET2 0x2b4
#define KEY_MACRO_PRESET3 0x2b5
/*
* Some keyboards have a buildin LCD panel where the contents are controlled
* by the host. Often these have a number of keys directly below the LCD
* intended for controlling a menu shown on the LCD. These keys often don't
* have any labeling so we just name them KEY_KBD_LCD_MENU#
*/
#define KEY_KBD_LCD_MENU1 0x2b8
#define KEY_KBD_LCD_MENU2 0x2b9
#define KEY_KBD_LCD_MENU3 0x2ba
#define KEY_KBD_LCD_MENU4 0x2bb
#define KEY_KBD_LCD_MENU5 0x2bc
#define BTN_TRIGGER_HAPPY 0x2c0
#define BTN_TRIGGER_HAPPY1 0x2c0
#define BTN_TRIGGER_HAPPY2 0x2c1
#define BTN_TRIGGER_HAPPY3 0x2c2
#define BTN_TRIGGER_HAPPY4 0x2c3
#define BTN_TRIGGER_HAPPY5 0x2c4
#define BTN_TRIGGER_HAPPY6 0x2c5
#define BTN_TRIGGER_HAPPY7 0x2c6
#define BTN_TRIGGER_HAPPY8 0x2c7
#define BTN_TRIGGER_HAPPY9 0x2c8
#define BTN_TRIGGER_HAPPY10 0x2c9
#define BTN_TRIGGER_HAPPY11 0x2ca
#define BTN_TRIGGER_HAPPY12 0x2cb
#define BTN_TRIGGER_HAPPY13 0x2cc
#define BTN_TRIGGER_HAPPY14 0x2cd
#define BTN_TRIGGER_HAPPY15 0x2ce
#define BTN_TRIGGER_HAPPY16 0x2cf
#define BTN_TRIGGER_HAPPY17 0x2d0
#define BTN_TRIGGER_HAPPY18 0x2d1
#define BTN_TRIGGER_HAPPY19 0x2d2
#define BTN_TRIGGER_HAPPY20 0x2d3
#define BTN_TRIGGER_HAPPY21 0x2d4
#define BTN_TRIGGER_HAPPY22 0x2d5
#define BTN_TRIGGER_HAPPY23 0x2d6
#define BTN_TRIGGER_HAPPY24 0x2d7
#define BTN_TRIGGER_HAPPY25 0x2d8
#define BTN_TRIGGER_HAPPY26 0x2d9
#define BTN_TRIGGER_HAPPY27 0x2da
#define BTN_TRIGGER_HAPPY28 0x2db
#define BTN_TRIGGER_HAPPY29 0x2dc
#define BTN_TRIGGER_HAPPY30 0x2dd
#define BTN_TRIGGER_HAPPY31 0x2de
#define BTN_TRIGGER_HAPPY32 0x2df
#define BTN_TRIGGER_HAPPY33 0x2e0
#define BTN_TRIGGER_HAPPY34 0x2e1
#define BTN_TRIGGER_HAPPY35 0x2e2
#define BTN_TRIGGER_HAPPY36 0x2e3
#define BTN_TRIGGER_HAPPY37 0x2e4
#define BTN_TRIGGER_HAPPY38 0x2e5
#define BTN_TRIGGER_HAPPY39 0x2e6
#define BTN_TRIGGER_HAPPY40 0x2e7
/* We avoid low common keys in module aliases so they don't get huge. */
#define KEY_MIN_INTERESTING KEY_MUTE
#define KEY_MAX 0x2ff
#define KEY_CNT (KEY_MAX+1)
/*
* Relative axes
*/
#define REL_X 0x00
#define REL_Y 0x01
#define REL_Z 0x02
#define REL_RX 0x03
#define REL_RY 0x04
#define REL_RZ 0x05
#define REL_HWHEEL 0x06
#define REL_DIAL 0x07
#define REL_WHEEL 0x08
#define REL_MISC 0x09
/*
* 0x0a is reserved and should not be used in input drivers.
* It was used by HID as REL_MISC+1 and userspace needs to detect if
* the next REL_* event is correct or is just REL_MISC + n.
* We define here REL_RESERVED so userspace can rely on it and detect
* the situation described above.
*/
#define REL_RESERVED 0x0a
#define REL_WHEEL_HI_RES 0x0b
#define REL_HWHEEL_HI_RES 0x0c
#define REL_MAX 0x0f
#define REL_CNT (REL_MAX+1)
/*
* Absolute axes
*/
#define ABS_X 0x00
#define ABS_Y 0x01
#define ABS_Z 0x02
#define ABS_RX 0x03
#define ABS_RY 0x04
#define ABS_RZ 0x05
#define ABS_THROTTLE 0x06
#define ABS_RUDDER 0x07
#define ABS_WHEEL 0x08
#define ABS_GAS 0x09
#define ABS_BRAKE 0x0a
#define ABS_HAT0X 0x10
#define ABS_HAT0Y 0x11
#define ABS_HAT1X 0x12
#define ABS_HAT1Y 0x13
#define ABS_HAT2X 0x14
#define ABS_HAT2Y 0x15
#define ABS_HAT3X 0x16
#define ABS_HAT3Y 0x17
#define ABS_PRESSURE 0x18
#define ABS_DISTANCE 0x19
#define ABS_TILT_X 0x1a
#define ABS_TILT_Y 0x1b
#define ABS_TOOL_WIDTH 0x1c
#define ABS_VOLUME 0x20
#define ABS_PROFILE 0x21
#define ABS_MISC 0x28
/*
* 0x2e is reserved and should not be used in input drivers.
* It was used by HID as ABS_MISC+6 and userspace needs to detect if
* the next ABS_* event is correct or is just ABS_MISC + n.
* We define here ABS_RESERVED so userspace can rely on it and detect
* the situation described above.
*/
#define ABS_RESERVED 0x2e
#define ABS_MT_SLOT 0x2f /* MT slot being modified */
#define ABS_MT_TOUCH_MAJOR 0x30 /* Major axis of touching ellipse */
#define ABS_MT_TOUCH_MINOR 0x31 /* Minor axis (omit if circular) */
#define ABS_MT_WIDTH_MAJOR 0x32 /* Major axis of approaching ellipse */
#define ABS_MT_WIDTH_MINOR 0x33 /* Minor axis (omit if circular) */
#define ABS_MT_ORIENTATION 0x34 /* Ellipse orientation */
#define ABS_MT_POSITION_X 0x35 /* Center X touch position */
#define ABS_MT_POSITION_Y 0x36 /* Center Y touch position */
#define ABS_MT_TOOL_TYPE 0x37 /* Type of touching device */
#define ABS_MT_BLOB_ID 0x38 /* Group a set of packets as a blob */
#define ABS_MT_TRACKING_ID 0x39 /* Unique ID of initiated contact */
#define ABS_MT_PRESSURE 0x3a /* Pressure on contact area */
#define ABS_MT_DISTANCE 0x3b /* Contact hover distance */
#define ABS_MT_TOOL_X 0x3c /* Center X tool position */
#define ABS_MT_TOOL_Y 0x3d /* Center Y tool position */
#define ABS_MAX 0x3f
#define ABS_CNT (ABS_MAX+1)
/*
* Switch events
*/
#define SW_LID 0x00 /* set = lid shut */
#define SW_TABLET_MODE 0x01 /* set = tablet mode */
#define SW_HEADPHONE_INSERT 0x02 /* set = inserted */
#define SW_RFKILL_ALL 0x03 /* rfkill master switch, type "any"
set = radio enabled */
#define SW_RADIO SW_RFKILL_ALL /* deprecated */
#define SW_MICROPHONE_INSERT 0x04 /* set = inserted */
#define SW_DOCK 0x05 /* set = plugged into dock */
#define SW_LINEOUT_INSERT 0x06 /* set = inserted */
#define SW_JACK_PHYSICAL_INSERT 0x07 /* set = mechanical switch set */
#define SW_VIDEOOUT_INSERT 0x08 /* set = inserted */
#define SW_CAMERA_LENS_COVER 0x09 /* set = lens covered */
#define SW_KEYPAD_SLIDE 0x0a /* set = keypad slide out */
#define SW_FRONT_PROXIMITY 0x0b /* set = front proximity sensor active */
#define SW_ROTATE_LOCK 0x0c /* set = rotate locked/disabled */
#define SW_LINEIN_INSERT 0x0d /* set = inserted */
#define SW_MUTE_DEVICE 0x0e /* set = device disabled */
#define SW_PEN_INSERTED 0x0f /* set = pen inserted */
#define SW_MACHINE_COVER 0x10 /* set = cover closed */
#define SW_MAX 0x10
#define SW_CNT (SW_MAX+1)
/*
* Misc events
*/
#define MSC_SERIAL 0x00
#define MSC_PULSELED 0x01
#define MSC_GESTURE 0x02
#define MSC_RAW 0x03
#define MSC_SCAN 0x04
#define MSC_TIMESTAMP 0x05
#define MSC_MAX 0x07
#define MSC_CNT (MSC_MAX+1)
/*
* LEDs
*/
#define LED_NUML 0x00
#define LED_CAPSL 0x01
#define LED_SCROLLL 0x02
#define LED_COMPOSE 0x03
#define LED_KANA 0x04
#define LED_SLEEP 0x05
#define LED_SUSPEND 0x06
#define LED_MUTE 0x07
#define LED_MISC 0x08
#define LED_MAIL 0x09
#define LED_CHARGING 0x0a
#define LED_MAX 0x0f
#define LED_CNT (LED_MAX+1)
/*
* Autorepeat values
*/
#define REP_DELAY 0x00
#define REP_PERIOD 0x01
#define REP_MAX 0x01
#define REP_CNT (REP_MAX+1)
/*
* Sounds
*/
#define SND_CLICK 0x00
#define SND_BELL 0x01
#define SND_TONE 0x02
#define SND_MAX 0x07
#define SND_CNT (SND_MAX+1)
#endif

View File

@@ -1,19 +0,0 @@
/*
* This header provides constants for binding nvidia,tegra234-bpmp-thermal.
*/
#ifndef _DT_BINDINGS_THERMAL_TEGRA234_BPMP_THERMAL_H
#define _DT_BINDINGS_THERMAL_TEGRA234_BPMP_THERMAL_H
#define TEGRA234_THERMAL_ZONE_CPU 0
#define TEGRA234_THERMAL_ZONE_GPU 1
#define TEGRA234_THERMAL_ZONE_CV0 2
#define TEGRA234_THERMAL_ZONE_CV1 3
#define TEGRA234_THERMAL_ZONE_CV2 4
#define TEGRA234_THERMAL_ZONE_SOC0 5
#define TEGRA234_THERMAL_ZONE_SOC1 6
#define TEGRA234_THERMAL_ZONE_SOC2 7
#define TEGRA234_THERMAL_ZONE_TJ_MAX 8
#define TEGRA234_THERMAL_ZONE_COUNT 9
#endif

View File

@@ -0,0 +1,67 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2021-2023, NVIDIA CORPORATION. All rights reserved.
*
* Definitions for Jetson tegra234-p3737-0000-p3701-0000 board.
*/
#include <dt-bindings/gpio/tegra234-gpio.h>
#define JETSON_COMPATIBLE "nvidia,p3737-0000+p3701-0000", "nvidia,p3737-0000+p3701-0004", "nvidia,p3737-0000+p3701-0005", "nvidia,p3737-0000+p3701-0008"
/* SoC function name for clock signal on 40-pin header pin 7 */
#define HDR40_CLK "extperiph4"
/* SoC function name for I2S interface on 40-pin header pins 12, 35, 38 and 40 */
#define HDR40_I2S "i2s2"
/* SoC function name for SPI interface on 40-pin header pins 19, 21, 23, 24 and 26 */
#define HDR40_SPI "spi1"
/* SoC function name for UART interface on 40-pin header pins 8, 10, 11 and 36 */
#define HDR40_UART "uarta"
/* SoC pin name definitions for 40-pin header */
#define HDR40_PIN7 "soc_gpio33_pq6"
#define HDR40_PIN11 "uart1_rts_pr4"
#define HDR40_PIN12 "soc_gpio41_ph7"
#define HDR40_PIN13 "soc_gpio37_pr0"
#define HDR40_PIN15 "soc_gpio39_pn1"
#define HDR40_PIN16 "can1_stb_pbb0"
#define HDR40_PIN18 "soc_gpio21_ph0"
#define HDR40_PIN19 "spi1_mosi_pz5"
#define HDR40_PIN21 "spi1_miso_pz4"
#define HDR40_PIN22 "soc_gpio23_pp4"
#define HDR40_PIN23 "spi1_sck_pz3"
#define HDR40_PIN24 "spi1_cs0_pz6"
#define HDR40_PIN26 "spi1_cs1_pz7"
#define HDR40_PIN29 "can0_din_paa1"
#define HDR40_PIN31 "can0_dout_paa0"
#define HDR40_PIN32 "can1_en_pbb1"
#define HDR40_PIN33 "can1_dout_paa2"
#define HDR40_PIN35 "soc_gpio44_pi2"
#define HDR40_PIN36 "uart1_cts_pr5"
#define HDR40_PIN37 "can1_din_paa3"
#define HDR40_PIN38 "soc_gpio43_pi1"
#define HDR40_PIN40 "soc_gpio42_pi0"
/* SoC GPIO definitions for 40-pin header */
#define HDR40_PIN7_GPIO TEGRA_MAIN_GPIO(Q, 6)
#define HDR40_PIN11_GPIO TEGRA_MAIN_GPIO(R, 4)
#define HDR40_PIN12_GPIO TEGRA_MAIN_GPIO(H, 7)
#define HDR40_PIN13_GPIO TEGRA_MAIN_GPIO(R, 0)
#define HDR40_PIN15_GPIO TEGRA_MAIN_GPIO(N, 1)
#define HDR40_PIN16_GPIO TEGRA_AON_GPIO(BB, 0)
#define HDR40_PIN18_GPIO TEGRA_MAIN_GPIO(H, 0)
#define HDR40_PIN19_GPIO TEGRA_MAIN_GPIO(Z, 5)
#define HDR40_PIN21_GPIO TEGRA_MAIN_GPIO(Z, 4)
#define HDR40_PIN22_GPIO TEGRA_MAIN_GPIO(P, 4)
#define HDR40_PIN23_GPIO TEGRA_MAIN_GPIO(Z, 3)
#define HDR40_PIN24_GPIO TEGRA_MAIN_GPIO(Z, 6)
#define HDR40_PIN26_GPIO TEGRA_MAIN_GPIO(Z, 7)
#define HDR40_PIN29_GPIO TEGRA_AON_GPIO(AA, 1)
#define HDR40_PIN31_GPIO TEGRA_AON_GPIO(AA, 0)
#define HDR40_PIN32_GPIO TEGRA_AON_GPIO(BB, 1)
#define HDR40_PIN33_GPIO TEGRA_AON_GPIO(AA, 2)
#define HDR40_PIN35_GPIO TEGRA_MAIN_GPIO(I, 2)
#define HDR40_PIN36_GPIO TEGRA_MAIN_GPIO(R, 5)
#define HDR40_PIN37_GPIO TEGRA_AON_GPIO(AA, 3)
#define HDR40_PIN38_GPIO TEGRA_MAIN_GPIO(I, 1)
#define HDR40_PIN40_GPIO TEGRA_MAIN_GPIO(I, 0)

View File

@@ -0,0 +1,23 @@
/*
* Copyright (c) 2023, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
* version 2, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*
* Definitions for Jetson tegra234-p3740-0002-p3701-0008 board.
*/
#include <dt-bindings/gpio/tegra234-gpio.h>
#define JETSON_COMPATIBLE "nvidia,p3740-0002+p3701-0008"

View File

@@ -0,0 +1,80 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
*
* Definitions for Jetson tegra234-p3767-0000 board.
*/
#include <dt-bindings/gpio/tegra234-gpio.h>
#define JETSON_COMPATIBLE_P3768 "nvidia,p3768-0000+p3767-0000", \
"nvidia,p3768-0000+p3767-0001", \
"nvidia,p3768-0000+p3767-0003", \
"nvidia,p3768-0000+p3767-0004", \
"nvidia,p3768-0000+p3767-0005"
#define JETSON_COMPATIBLE_P3509 "nvidia,p3509-0000+p3767-0000", \
"nvidia,p3509-0000+p3767-0001", \
"nvidia,p3509-0000+p3767-0003", \
"nvidia,p3509-0000+p3767-0004", \
"nvidia,p3509-0000+p3767-0005"
#define JETSON_COMPATIBLE JETSON_COMPATIBLE_P3768, \
JETSON_COMPATIBLE_P3509
/* SoC function name for clock signal on 40-pin header pin 7 */
#define HDR40_CLK "aud"
/* SoC function name for I2S interface on 40-pin header pins 12, 35, 38 and 40 */
#define HDR40_I2S "i2s2"
/* SoC function name for SPI interface on 40-pin header pins 19, 21, 23, 24 and 26 */
#define HDR40_SPI "spi1"
/* SoC function name for UART interface on 40-pin header pins 8, 10, 11 and 36 */
#define HDR40_UART "uarta"
/* SoC pin name definitions for 40-pin header */
#define HDR40_PIN7 "soc_gpio59_pac6"
#define HDR40_PIN11 "uart1_rts_pr4"
#define HDR40_PIN12 "soc_gpio41_ph7"
#define HDR40_PIN13 "spi3_sck_py0"
#define HDR40_PIN15 "soc_gpio39_pn1"
#define HDR40_PIN16 "spi3_cs1_py4"
#define HDR40_PIN18 "spi3_cs0_py3"
#define HDR40_PIN19 "spi1_mosi_pz5"
#define HDR40_PIN21 "spi1_miso_pz4"
#define HDR40_PIN22 "spi3_miso_py1"
#define HDR40_PIN23 "spi1_sck_pz3"
#define HDR40_PIN24 "spi1_cs0_pz6"
#define HDR40_PIN26 "spi1_cs1_pz7"
#define HDR40_PIN29 "soc_gpio32_pq5"
#define HDR40_PIN31 "soc_gpio33_pq6"
#define HDR40_PIN32 "soc_gpio19_pg6"
#define HDR40_PIN33 "soc_gpio21_ph0"
#define HDR40_PIN35 "soc_gpio44_pi2"
#define HDR40_PIN36 "uart1_cts_pr5"
#define HDR40_PIN37 "spi3_mosi_py2"
#define HDR40_PIN38 "soc_gpio43_pi1"
#define HDR40_PIN40 "soc_gpio42_pi0"
/* SoC GPIO definitions for 40-pin header */
#define HDR40_PIN7_GPIO TEGRA_MAIN_GPIO(AC, 6)
#define HDR40_PIN11_GPIO TEGRA_MAIN_GPIO(R, 4)
#define HDR40_PIN12_GPIO TEGRA_MAIN_GPIO(H, 7)
#define HDR40_PIN13_GPIO TEGRA_MAIN_GPIO(Y, 0)
#define HDR40_PIN15_GPIO TEGRA_MAIN_GPIO(N, 1)
#define HDR40_PIN16_GPIO TEGRA_AON_GPIO(Y, 4)
#define HDR40_PIN18_GPIO TEGRA_MAIN_GPIO(Y, 3)
#define HDR40_PIN19_GPIO TEGRA_MAIN_GPIO(Z, 5)
#define HDR40_PIN21_GPIO TEGRA_MAIN_GPIO(Z, 4)
#define HDR40_PIN22_GPIO TEGRA_MAIN_GPIO(Y, 1)
#define HDR40_PIN23_GPIO TEGRA_MAIN_GPIO(Z, 3)
#define HDR40_PIN24_GPIO TEGRA_MAIN_GPIO(Z, 6)
#define HDR40_PIN26_GPIO TEGRA_MAIN_GPIO(Z, 7)
#define HDR40_PIN29_GPIO TEGRA_AON_GPIO(Q, 5)
#define HDR40_PIN31_GPIO TEGRA_AON_GPIO(Q, 6)
#define HDR40_PIN32_GPIO TEGRA_AON_GPIO(G, 6)
#define HDR40_PIN33_GPIO TEGRA_AON_GPIO(H, 0)
#define HDR40_PIN35_GPIO TEGRA_MAIN_GPIO(I, 2)
#define HDR40_PIN36_GPIO TEGRA_MAIN_GPIO(R, 5)
#define HDR40_PIN37_GPIO TEGRA_AON_GPIO(Y, 2)
#define HDR40_PIN38_GPIO TEGRA_MAIN_GPIO(I, 1)
#define HDR40_PIN40_GPIO TEGRA_MAIN_GPIO(I, 0)

39
nv-platform/Makefile Normal file
View File

@@ -0,0 +1,39 @@
# SPDX-License-Identifier: GPL-2.0-only
# SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
DTC_FLAGS += -@
old-dtb := $(dtb-y)
old-dtbo := $(dtbo-y)
dtb-y :=
dtbo-y :=
makefile-path := t23x/nv-public/nv-platform
dtb-y += tegra234-p3737-0000+p3701-0000-nv.dtb
dtb-y += tegra234-p3737-0000+p3701-0004-nv.dtb
dtb-y += tegra234-p3737-0000+p3701-0005-nv.dtb
dtb-y += tegra234-p3737-0000+p3701-0008-nv.dtb
dtb-y += tegra234-p3740-0002+p3701-0008-nv.dtb
dtb-y += tegra234-p3740-0002+p3701-0008-nv-safety.dtb
dtb-y += tegra234-p3768-0000+p3767-0000-nv.dtb
dtb-y += tegra234-p3768-0000+p3767-0000-nv-px1.dtb
dtb-y += tegra234-p3768-0000+p3767-0000-nv-taylor-high.dtb
dtb-y += tegra234-p3768-0000+p3767-0000-nv-taylor-low.dtb
dtb-y += tegra234-p3768-0000+p3767-0001-nv.dtb
dtb-y += tegra234-p3768-0000+p3767-0003-nv.dtb
dtb-y += tegra234-p3768-0000+p3767-0004-nv.dtb
dtb-y += tegra234-p3768-0000+p3767-0005-nv.dtb
dtb-y += tegra234-p3971-0000+p3701-0000-nv.dtb
dtb-y += tegra234-p3971-0000+p3701-0008-nv.dtb
dtb-y += tegra234-p3971-0000+p3701-0008-nv-safety.dtb
ifneq ($(dtb-y),)
dtb-y := $(addprefix $(makefile-path)/,$(dtb-y))
endif
ifneq ($(dtbo-y),)
dtbo-y := $(addprefix $(makefile-path)/,$(dtbo-y))
endif
dtb-y += $(old-dtb)
dtbo-y += $(old-dtbo)

View File

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

View File

@@ -0,0 +1,534 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
display@13800000 {
nvidia,dcb-image = [
55 aa 16 00 00 37 34 30 30 e9 4c 19 77 cc 56 49
44 45 4f 20 0d 00 00 00 70 01 00 00 00 00 49 42
4d 20 56 47 41 20 43 6f 6d 70 61 74 69 62 6c 65
01 00 00 00 10 00 c7 17 31 30 2f 32 36 2f 32 31
00 00 00 00 00 00 00 00 21 18 50 00 f1 2a 00 00
50 4d 49 44 00 00 00 00 00 00 00 a0 00 b0 00 b8
00 c0 00 0e 47 41 31 30 42 20 56 47 41 20 42 49
4f 53 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 56 65 72 73 69 6f 6e 20 39 34 2e
30 42 2e 30 30 2e 30 30 2e 32 30 20 0d 0a 00 43
6f 70 79 72 69 67 68 74 20 28 43 29 20 31 39 39
36 2d 32 30 32 31 20 4e 56 49 44 49 41 20 43 6f
72 70 2e 0d 0a 00 00 00 ff ff 00 00 00 00 ff ff
47 50 55 20 42 6f 61 72 64 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 43 68 69 70 20 52 65 76 20 20 20 00 00
00 00 00 00 00 00 00 ba 91 98 96 91 9a 9a 8d 96
91 98 df ad 9a 93 9a 9e 8c 9a df d2 df b1 90 8b
df b9 90 8d df af 8d 90 9b 8a 9c 8b 96 90 91 df
aa 8c 9a f2 f5 ff 00 00 00 00 00 00 00 00 00 00
50 43 49 52 de 10 94 22 00 00 18 00 00 00 00 03
16 00 01 00 00 80 00 00 2e 8b c0 2e 8b c0 8b c0
4e 50 44 45 01 01 14 00 16 00 00 01 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ff b8 42 49 54 00 00 01 0c 06 12 45 32 01 04 00
38 02 42 02 25 00 44 02 43 02 2c 00 69 02 44 01
04 00 95 02 49 01 24 00 99 02 4d 02 29 00 bd 02
4e 00 00 00 00 00 50 02 e8 00 e6 02 53 02 18 00
ce 03 54 01 02 00 e6 03 55 01 05 00 ec 03 56 01
06 00 f1 03 78 01 08 00 f7 03 64 01 02 00 ff 03
70 02 04 00 01 04 75 01 11 00 05 04 69 02 6e 00
18 04 45 01 04 00 e8 03 00 00 86 04 86 04 fe 20
00 21 f0 2a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 0b 94 20 00 00 00 00 00 a8 07
00 00 00 00 00 00 00 00 02 00 5c 5c 28 02 00 00
3c 02 04 00 10 00 00 00 00 f5 0e 00 00 00 00 00
00 35 44 00 00 c7 2d 00 00 00 00 00 00 00 00 00
00 00 00 00 00 72 30 00 00 e1 44 00 00 1f 45 00
00 46 45 00 00 00 00 00 00 da 04 00 00 00 00 de
04 00 00 4a 08 de 04 26 2a 4a 08 28 2a 86 04 ef
09 14 21 d4 09 d7 20 28 2a 90 00 ab 21 01 4c 08
3a 09 f0 43 00 00 fa 43 00 00 03 10 00 00 00 21
00 00 0c 21 00 00 50 4a 00 00 00 00 00 00 00 00
00 00 00 00 00 00 d5 33 00 00 bb 36 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 af 3c 00 00 00 00 00 00 e9 3c
00 00 0e 43 00 00 00 00 00 00 00 00 00 00 df 33
00 00 2e 3d 00 00 9c 43 00 00 ad 36 00 00 00 00
00 00 00 00 00 00 be 43 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 45 0b
00 00 c1 0a 00 00 5b 0b 00 00 11 3c 00 00 17 3c
00 00 1c 3c 00 00 20 3c 00 00 2a 3c 00 00 31 3c
00 00 3f 3c 00 00 81 3c 00 00 00 00 00 00 00 00
00 00 92 3c 00 00 ec 45 00 00 92 47 00 00 07 48
00 00 8d 49 00 00 7c 4b 00 00 b8 4b 00 00 e2 49
00 00 98 3c 00 00 79 3c 00 00 00 00 00 00 00 00
00 00 00 00 00 00 e8 4d 00 00 9c 3c 00 00 a5 3c
00 00 00 00 00 00 00 00 00 00 00 00 00 00 64 00
50 b5 00 19 cf 00 28 75 0e 14 89 0e 23 00 01 23
23 01 14 ac 0e 28 18 11 00 00 00 00 d4 0e 01 00
00 f1 0d c3 0c 00 00 00 00 01 01 00 00 00 00 f4
1c 2d 4e 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 92 2d 00 00 00 00 00 00 0b 94 20 00 00 20
92 d2 01 58 03 00 00 31 30 2f 32 36 2f 32 31 00
00 00 00 00 00 00 00 00 00 00 00 21 01 10 00 00
00 80 01 00 00 00 00 00 30 30 30 30 30 30 30 30
30 30 30 30 00 00 00 00 00 00 00 00 03 42 00 00
b9 78 8f 47 ad 04 4f 3d bf 01 4c 10 55 04 be ee
54 33 00 00 00 00 00 00 c5 4c 00 00 00 00 00 00
00 00 93 4e 00 00 01 00 10 00 bf 09 30 00 02 00
94 22 00 00 00 00 01 00 44 00 6b 09 00 00 86 04
00 00 3a 09 00 00 de 04 00 00 00 00 00 00 4a 08
00 00 5c 08 00 00 45 0b 00 00 c1 0a 00 00 5b 0b
00 00 71 0b 00 00 f1 0d 00 00 c3 0c 00 00 00 00
00 00 00 00 00 00 00 00 00 00 3c 21 00 00 30 c0
61 40 00 00 00 10 00 00 00 00 08 23 61 00 80 00
00 00 80 00 00 00 88 23 61 00 80 00 00 00 80 00
00 00 08 24 61 00 80 00 00 00 80 00 00 00 88 24
61 00 80 00 00 00 80 00 00 00 08 25 61 00 80 00
00 00 80 00 00 00 88 25 61 00 80 00 00 00 80 00
00 00 08 26 61 00 80 00 00 00 80 00 00 00 00 2a
13 00 00 00 04 00 00 00 04 00 00 2a 13 00 00 00
01 00 00 00 01 00 00 6e 13 00 00 00 04 00 00 00
04 00 00 6e 13 00 00 00 01 00 00 00 01 00 4c 00
12 00 3f 00 00 00 00 00 00 00 0c 24 02 00 01 00
00 00 00 00 00 00 e4 05 02 00 7c 00 00 00 00 00
00 00 e4 05 02 00 7c 00 00 00 18 00 00 00 e4 05
02 00 7c 00 00 00 0c 00 00 00 e4 05 02 00 7c 00
00 00 04 00 00 00 e4 05 02 00 7c 00 00 00 08 00
00 00 e4 05 02 00 7c 00 00 00 14 00 00 00 20 0e
9a 00 00 00 02 00 00 00 02 00 00 0e 9a 00 00 00
02 00 00 00 02 00 00 0e 9a 00 01 00 00 00 01 00
00 00 34 c0 61 40 00 00 00 80 00 00 00 00 00 0c
82 00 ff ff ff ff 00 00 00 00 00 0c 82 00 01 00
00 00 00 00 00 00 00 0c 82 00 02 00 00 00 00 00
00 00 00 0c 82 00 04 00 00 00 00 00 00 00 00 0c
82 00 08 00 00 00 00 00 00 00 00 0c 82 00 10 00
00 00 00 00 00 00 00 0c 82 00 20 00 00 00 00 00
00 00 90 02 82 00 01 00 00 00 00 00 00 00 88 02
82 00 ff 00 00 00 00 00 00 00 c0 04 82 00 07 00
00 00 00 00 00 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 88 80 08 00 00 00 0f 00 00 00 01 00 40 c0
08 00 00 00 0c 00 00 00 0c 00 40 c0 08 00 1f 00
00 00 00 00 00 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 74 09 9a 00 0f 00 00 00 00 00 00 00 e8 73
13 00 01 00 00 00 01 00 00 00 0c 06 9a 00 40 00
00 00 40 00 00 00 64 00 12 00 40 00 00 00 40 00
00 00 04 14 00 00 04 00 00 00 00 00 00 00 04 14
00 00 08 00 00 00 08 00 00 00 14 38 82 00 00 00
01 00 00 00 01 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 0c 14 00 00 01 00 00 00 01 00 00 00 0c 14
00 00 02 00 00 00 01 00 00 00 88 54 62 00 00 00
01 00 00 00 00 00 88 54 62 00 00 00 02 00 00 00
00 00 88 54 62 00 00 00 04 00 00 00 00 00 9c 8b
11 00 00 00 00 80 00 00 00 00 14 0c 82 00 01 00
00 00 00 00 00 00 14 0c 82 00 02 00 00 00 00 00
00 00 14 0c 82 00 04 00 00 00 00 00 00 00 14 0c
82 00 08 00 00 00 00 00 00 00 14 0c 82 00 10 00
00 00 00 00 00 00 14 0c 82 00 20 00 00 00 00 00
00 00 9c 8b 11 00 00 00 00 80 00 00 00 00 10 01
82 00 01 00 00 00 00 00 00 00 d4 06 82 00 ff 03
00 00 00 00 00 00 14 0c 82 00 3f 00 00 00 01 00
00 00 00 14 00 00 02 00 00 00 00 00 00 00 44 c1
61 60 01 00 00 00 01 00 00 00 20 87 08 00 04 00
00 00 00 00 00 00 40 00 82 00 01 00 00 00 00 00
00 00 54 9b 41 00 ff 00 00 00 00 00 00 00 68 9b
41 00 03 00 00 00 00 00 00 00 40 80 11 00 02 00
00 00 00 00 00 00 04 0c 82 00 01 00 00 00 00 00
00 00 04 14 00 00 00 04 00 00 00 00 00 00 34 04
82 00 01 00 00 00 00 00 00 00 4c 08 00 01 02 03
04 05 06 07 00 01 02 03 04 05 06 07 41 06 24 06
00 00 00 07 00 02 bf 00 01 51 00 04 bf 00 02 5e
00 01 bf 00 03 52 00 03 bf 00 84 19 00 00 4f 00
85 7b 59 98 4f 00 06 ff 00 00 4f 00 07 ff 00 00
ef 00 08 ff 00 00 ef 00 09 ff 00 00 ef 00 0a ff
00 00 ef 00 0b ff 00 00 ef 00 0c ff 00 00 ef 00
0d ff 00 00 ef 00 0e ff 00 00 ef 00 0f ff 00 00
ef 00 10 42 50 11 e4 00 11 41 42 0b e2 00 12 40
41 0a e1 00 13 70 51 12 e5 00 14 ff 00 00 ef 00
15 ff 00 00 ef 00 16 ff 00 00 ef 00 17 ff 00 00
ef 00 18 ff 00 00 ef 00 19 ff 00 00 ef 00 1a ff
00 00 ef 00 1b ff 00 00 ef 00 1c ff 00 00 ef 00
1d ff 00 00 ef 00 1e ff 00 00 ef 00 1f ff 00 00
ef 00 00 ff 00 00 0f 00 00 ff 00 00 0f 00 00 ff
00 00 0f 00 00 ff 00 00 0f 00 10 07 16 10 00 a1
0a 01 f0 10 03 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 1f 01 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 2f 02 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 3f 03 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 4f 04 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 5f
05 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 6f 06 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 7f 07 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 8f 00 00 00 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 9f 01 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 af 02 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 bf 03 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 cf 04 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 df
05 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 ef 06 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 ff 07 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e
0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e
1f 10 04 20 04 00 00 80 00 b8 4c 0a ff e0 93 04
00 20 d6 13 00 e0 93 04 01 20 d6 13 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 20 05 11 01 00 00 35 0c 00 ff ff
ff ff ff ff ff ff ff 00 00 00 00 10 05 11 01 00
00 00 00 ff ff 00 00 00 00 00 00 00 00 00 00 00
00 30 08 10 01 14 01 15 0e 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 10 0d 17 34 b0 8f 11 00 00 00 00 00 00
00 00 00 34 a8 04 82 00 00 00 00 00 00 00 00 00
34 a0 04 82 00 00 00 00 00 00 00 00 00 34 d4 02
82 00 00 00 00 00 00 00 00 00 34 a4 04 82 00 00
00 00 00 00 00 00 00 34 7c 14 00 00 00 00 00 00
00 00 00 00 34 08 0e 82 00 00 00 00 00 00 00 00
00 34 0c 0e 82 00 00 00 00 00 00 00 00 00 34 a8
83 11 00 00 00 00 00 00 00 00 00 34 78 01 82 00
00 00 00 00 00 00 00 00 34 78 01 82 00 00 00 00
00 00 00 00 00 34 ac 04 82 00 00 00 00 00 00 00
00 00 34 94 10 82 00 00 00 00 00 00 00 00 00 34
88 10 82 00 00 00 00 00 00 00 00 00 34 8c 10 82
00 00 00 00 00 00 00 00 00 34 90 10 82 00 00 00
00 00 00 00 00 00 34 ac 83 11 00 00 00 00 00 00
00 00 00 34 78 01 82 00 00 00 00 00 00 00 00 00
34 d4 02 82 00 00 00 00 00 00 00 00 00 34 78 05
82 00 00 00 00 00 00 00 00 00 34 b0 04 82 00 00
00 00 00 00 00 00 00 34 78 01 82 00 00 00 00 00
00 00 00 00 34 7c 07 82 00 00 00 00 00 00 00 00
00 10 03 1b 05 80 00 07 60 05 08 40 08 09 60 0d
0a 40 10 0d f0 17 0c e0 15 0e 60 18 0f 40 1c 10
e0 23 15 80 24 16 26 29 17 60 2d 18 40 30 19 60
35 1a 60 39 1b 60 3d 1d e0 43 1e a5 44 1f 60 49
20 60 4d 21 60 51 22 fc 47 23 a0 58 24 66 59 25
2c 5a 26 f2 5a ff 7d f4 ed 1f 18 7c a3 82 dc b6
81 88 d5 6f da 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 4e 56 49 44 49 41 00 00 00 00 00
00 00 00 00 00 00 00 00 00 4e 56 49 44 49 41 20
43 6f 72 70 6f 72 61 74 69 6f 6e 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 42 49 4f 53
20 43 65 72 74 69 66 69 63 61 74 65 20 43 68 65
63 6b 20 46 61 69 6c 65 64 21 21 21 0d 0a 00 00
00 00 00 00 22 05 02 0e 0c 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 50 04 13 0e 07 95 01 95 01 d0 07
a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f 08 95 01 95
01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f 0b
95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff
01 3f 04 e1 00 13 01 94 11 28 23 e1 00 13 01 01
01 14 ff 01 02 0c 1b 00 1b 00 40 06 80 0c 1b 00
1b 00 01 01 28 ff 01 3f 41 1b 00 1b 00 40 06 8c
0a 1b 00 28 00 01 ff 28 ff 03 3f 42 1b 00 1b 00
40 06 8c 0a 1b 00 28 00 01 ff 28 ff 03 3f 80 1b
00 1b 00 20 03 54 06 1b 00 1b 00 01 01 14 ff 01
3f 81 1b 00 1b 00 20 03 54 06 1b 00 1b 00 01 01
14 ff 01 3f 82 1b 00 1b 00 20 03 54 06 1b 00 1b
00 01 01 14 ff 01 3f 83 1b 00 1b 00 20 03 54 06
1b 00 1b 00 01 01 14 ff 01 3f 0d 1b 00 1b 00 20
03 54 06 1b 00 1b 00 01 01 14 ff 01 3f 0e 1b 00
1b 00 e8 03 d0 07 0d 00 1b 00 01 ff 28 ff 01 1f
0f 95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32
ff 01 3f 10 04 02 06 00 00 00 07 00 07 00 07 00
07 00 07 10 05 04 10 04 0f 0f 0f 0f 2f 2f 2f 2f
1c 1c 1c 1c 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1f 1f 1f 1f 0f 46 40 00 0f 0f 0f 0f 2d 2d 2d 2d
19 19 19 19 0f 46 40 00 0f 0f 0f 0f 2c 2c 2c 2c
1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f 2b 2b 2b 2b
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2a 2a 2a 2a
1f 1f 1f 1f 0f 46 40 00 0e 0e 0e 0e 29 29 29 29
18 18 18 18 0f 46 40 00 0e 0e 0e 0e 28 28 28 28
1a 1a 1a 1a 0f 46 40 00 0e 0e 0e 0e 27 27 27 27
1c 1c 1c 1c 0f 46 40 00 0e 0e 0e 0e 26 26 26 26
1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f 2d 2d 2d 2d
19 19 19 19 0f 46 40 00 0f 0f 0f 0f 2c 2c 2c 2c
1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f 2b 2b 2b 2b
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2a 2a 2a 2a
1f 1f 1f 1f 0f 46 40 00 20 19 04 00 00 50 32 74
40 e8 80 e4 57 01 04 04 06 76 19 00 00 13 10 00
00 49 11 00 00 47 12 00 00 45 13 00 00 43 14 00
00 41 15 00 00 3f 16 00 00 10 08 0e 05 00 2c 04
04 d1 84 00 00 00 00 0a 05 00 06 00 00 00 00 00
38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00
00 00 00 00 00 88 58 24 00 00 00 00 00 75 40 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 3f 3f 3f 3f 05 05 05 05 0a 0a 0a 0a 00 00 00
00 88 58 24 00 00 00 00 00 65 19 00 00 00 00 0a
05 00 06 00 00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a
3a 00 00 00 00 00 00 00 00 00 00 00 00 f8 5a 24
00 00 00 00 00 00 00 00 00 00 00 0a 0a 00 06 00
00 00 00 00 58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 03 00 00 01 0a 05 0f 46 40 00 00 03 00 44 06
00 00 01 0a 08 0f 46 40 00 00 03 00 44 08 00 00
01 0a 05 0f 46 40 00 00 03 00 44 0a 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0c 00 00 01 0a 08 0f
46 40 00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1
84 00 00 00 00 0a 05 00 06 00 00 00 00 00 38 3d
3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00 00 00
00 00 00 88 58 24 00 00 00 00 00 75 40 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 65 19 00 00 00 00 0a 05 00
06 00 00 00 00 00 48 3a 3a 3a 3a 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 f8 5a 24 00 00
00 00 00 00 00 00 00 00 00 0a 0a 00 06 00 00 00
00 00 58 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c
00 00 01 0a 05 0f 46 40 00 00 03 00 44 0d 00 00
01 0a 08 0f 46 40 00 00 03 00 44 0e 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0f 01 00 01 0a 05 0f
46 40 00 00 03 00 44 10 01 00 01 0a 08 0f 46 40
00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 00 00 00 00 05 05 05 05 00 00 00 00 00 00 00
00 88 58 24 00 00 00 00 00 75 40 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f
3f 05 05 05 05 05 05 05 05 00 00 00 00 88 58 24
00 00 00 00 00 65 19 00 00 00 00 0a 05 00 06 00
00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 00 00 00 00 00 00 0a 0a 00 06 00 00 00 00 00
58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c 01 00
01 0a 05 0f 46 40 00 00 03 00 44 0d 01 00 01 0a
08 0f 46 40 00 00 03 00 44 0e 02 00 01 0a 05 0f
46 40 00 00 03 00 44 0f 02 00 01 0a 05 0f 46 40
00 00 03 00 44 10 02 00 01 0a 08 0f 46 40 00 00
03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 75 40 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 65 19 00 00 00 00 0a 05 00 06 00 00 00
00 00 48 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 00
00 00 00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 0c 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0d 00 00 01 0a 08 0f
46 40 00 00 03 00 44 0e 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0f 01 00 01 0a 05 0f 46 40 00 00
03 00 44 10 01 00 01 0a 08 0f 46 40 00 00 03 00
44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00
00 05 05 05 05 00 00 00 00 00 00 00 00 88 58 24
00 00 00 00 00 75 40 00 00 00 00 0a 05 00 06 00
00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f 3f 05 05 05
05 08 08 08 08 00 00 00 00 88 58 24 00 00 00 00
00 65 19 00 00 00 00 0a 05 00 06 00 00 00 00 00
48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 00 00 00
00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a 3a 3a
3a 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00
00 f8 5a 24 00 00 00 00 00 0c 01 00 01 0a 05 0f
46 40 00 00 03 00 44 0d 01 00 01 0a 08 0f 46 40
00 00 03 00 44 0e 02 00 01 0a 05 0f 46 40 00 00
03 00 44 0f 02 00 01 0a 05 0f 46 40 00 00 03 00
44 10 02 00 01 0a 08 0f 46 40 00 00 03 00 44 10
08 0e 05 00 2c 04 04 d1 84 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 75 40 00 00 00 00 0a 05 00 06 00 00 00
00 00 38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00
00 00 00 00 00 00 00 88 58 24 00 00 00 00 00 65
19 00 00 00 00 0a 05 00 06 00 00 00 00 00 48 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 00 00 00 00 00
00 0a 0a 00 06 00 00 00 00 00 58 3a 3a 3a 3a 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f8
5a 24 00 00 00 00 00 0c 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0d 00 00 01 0a 08 0f 46 40 00 00
03 00 44 0e 00 00 01 0a 05 0f 46 40 00 00 03 00
44 0f 01 00 01 0a 05 0f 46 40 00 00 03 00 44 10
01 00 01 0a 08 0f 46 40 00 00 03 00 44 7a 14 c0
61 40 01 00 c2 0d 74 05 00 6e 14 c0 61 40 ff ff
bf ff 00 00 00 00 6e e4 c5 61 40 fe ff ff ff 00
00 00 00 71 5b f5 19 71 5b 6f 17 5b 74 17 71 56
00 ff 72 71 6e 0c c1 61 40 fe ff ff ff 00 00 00
00 6e 40 65 61 80 fe ff ff ff 00 00 00 00 71 6e
00 23 61 40 ff ff 80 fc 00 00 23 00 71 6e 00 23
61 40 ff ff 80 fc 00 00 27 00 71 6e 00 23 61 40
ff ff 80 fc 00 00 2b 00 71 6e 00 23 61 40 ff ff
80 fc 00 00 2f 00 71 41 23 10 08 6a 18 cb bd dc
4e 5c 08 00 00 00 00 00 00 ac 18 31 19 c1 00 00
00 00 00 00 00 00 00 00 00 00 06 03 80 01 10 00
60 04 02 03 80 01 10 00 02 04 2e 23 02 01 10 00
02 00 2f 32 03 02 10 00 02 00 fe 40 04 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 41 06 0f 04 02 0f
06 00 00 10 ff 03 00 80 ff 03 00 80 ff 03 00 10
ff 03 00 10 ff 03 00 10 ff 03 00 10 ff 03 00 10
ff 03 00 10 ff 03 00 10 ff 03 00 00 ff 03 00 00
ff 03 00 00 ff 03 00 00 ff 03 00 00 40 05 20 04
01 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 40 05 10 04 00 46 10 00 00 ff 01 00 00 ff 02
00 00 ff 03 00 00 ff 04 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 10 05 40 01 00 00 00 0b 03 00
00 0a 02 00 00 08 02 00 20 04 02 00 80 00 00 00
80 00 00 00 80 00 00 00 80 00 00 00 20 00 00 00
20 00 03 00 00 0c 03 00 00 0a 03 00 80 0b 03 00
80 0b 03 00 80 0b 03 00 80 0b 03 71 71 6e 14 c0
61 40 ff ff 3f fa 00 00 c0 01 74 05 00 6e 14 c0
61 40 f7 ff ff ff 08 00 00 00 6e b8 c1 61 40 ff
ff 3f 81 00 03 00 08 6e 00 23 61 40 ff ff 83 fc
00 00 00 00 71 58 40 c0 61 40 10 00 00 0a 1d 00
00 0a 04 00 00 08 04 00 20 04 04 00 80 00 00 00
80 00 00 00 80 00 00 00 80 00 00 00 20 00 00 00
20 00 1d 00 00 0c 1d 00 00 0a 1d 00 80 0a 1d 00
80 0a 1d 00 80 0a 1d 00 80 0a 1d 71 6e 00 23 61
40 ff ff fc fc 00 00 02 03 71 7a 14 c0 61 40 14
00 c2 0d 74 05 00 6e 14 c0 61 40 ff ff bf ff 00
00 00 00 74 14 00 71 6e 14 c0 61 40 ff ff ff f2
00 00 00 00 74 0a 00 6e 00 23 61 40 ff ff fc ff
00 00 01 00 6e 0c c1 61 60 ff bf ff ff 00 40 00
00 6e 14 c0 61 40 ff ff 7f ff 00 00 00 00 6e 30
c1 61 60 f0 ff ff ff 0f 00 00 00 6e 34 c0 61 40
ff ff ee 7f 00 00 00 80 56 17 ff 6e 0c c1 61 60
fc ff ff ff 01 00 00 00 6e 30 c1 61 60 0f ff ff
ff f0 00 00 00 74 0a 00 6e 30 c1 61 60 0f ff ff
ff 00 00 00 00 6e 10 c1 61 40 e0 e0 e0 e0 00 00
00 00 6e 2c c1 61 40 e0 e0 e0 e0 00 00 00 00 3a
05 15 6e 40 c1 61 60 fd ff ff ff 02 00 00 00 98
0a 01 00 00 01 fe 01 71 98 02 01 00 00 01 d0 00
6e 10 c1 61 40 e0 e0 e0 e0 10 10 10 10 6e 2c c1
61 40 e0 e0 e0 e0 10 10 10 10 71 5f 0c c1 61 60
00 01 40 ff 40 00 00 00 00 40 65 61 80 fe bf 00
bf 3a 00 03 5b 59 1b 72 71 3a 07 01 38 6e 40 c1
61 60 fe ff ff ff 01 00 00 00 72 5b ad 1c 52 e8
df 00 71 71 6e 0c c1 61 60 fe ff 00 ff 00 00 00
00 6e 30 c1 61 40 f0 ff ff ff 00 00 00 00 6e b0
c1 61 40 f0 ff ff ff 00 00 00 00 6e 34 c0 61 40
ff ff ee 7f 00 00 11 80 56 17 ff 6e 14 c0 61 40
ff ff 7f ff 00 00 80 00 6e 00 23 61 40 ff ff fc
ff 00 00 02 00 74 05 00 6e 14 c0 61 40 ff ff ff
f2 00 00 00 0d 74 05 00 6e 14 c0 61 40 ff ff bf
ff 00 00 40 00 74 05 00 6e 14 c0 61 40 f7 ff ff
ff 08 00 00 00 6e 0c c0 61 40 ff f0 f0 f0 00 03
05 05 6e b8 c1 61 40 ff ff ff 81 00 03 00 08 6e
00 23 61 40 ff ff 83 fc 00 00 00 00 6e 40 c1 61
60 fe ff ff ff 00 00 00 00 71 6e 0c c1 61 60 fd
ff ff ff 02 00 00 00 6e 30 c1 61 60 ff ff bf ff
00 00 40 00 71 10 05 40 01 01 00 00 00 00 0a 10
00 00 00 a0 40 00 00 80 40 00 00 80 40 00 00 80
40 00 00 80 40 00 00 80 40 00 00 20 00 00 32 10
80 00 0a 90 80 00 00 80 80 00 00 80 80 00 00 80
80 00 00 80 80 00 00 80 80 00 71 71 6e 40 65 61
80 fe ff ff ff 00 00 00 00 71 71 98 07 01 00 00
01 ef 10 71 98 07 01 00 00 01 ef 00 71 58 40 c0
61 40 10 00 00 00 00 32 10 00 00 00 a0 40 00 00
80 40 00 00 80 40 00 00 80 40 00 00 80 40 00 00
80 40 00 00 20 00 00 32 10 80 00 96 90 80 00 00
80 80 00 00 80 80 00 00 80 80 00 00 80 80 00 00
80 80 00 71 42 15 02 07 13 04 03 0a 04 28 23 28
23 01 04 04 06 45 1c 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 14 00 02 19 0a 03 1e 14 04
2b 28 06 1e 00 03 25 0f 04 2f 21 06 28 00 04 32
14 06 3c 00 06 14 00 02 19 0a 03 1e 14 04 2b 28
06 1e 00 03 25 0f 04 2f 21 06 28 00 04 32 14 06
3c 00 06 14 00 02 19 0a 03 1e 14 04 2b 28 06 1e
00 03 25 0f 04 2f 21 06 28 00 04 32 14 06 3c 00
06 0f 00 02 16 09 03 1d 0e 04 27 12 06 17 00 03
21 09 04 27 0e 06 1f 00 04 27 09 06 27 00 06 a7
1d 00 00 2f 1e 00 00 b7 1e 00 00 3f 1f 00 00 c7
1f 00 00 4f 20 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 14
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 10
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 0c
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 0a
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 09
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 08
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 06
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 14
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0c
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0a
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 08
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 06
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 14
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0c
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0a
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 08
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 06
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 ];
};
};

View File

@@ -0,0 +1,534 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
display@13800000 {
nvidia,dcb-image = [
55 aa 16 00 00 37 34 30 30 e9 4c 19 77 cc 56 49
44 45 4f 20 0d 00 00 00 70 01 00 00 00 00 49 42
4d 20 56 47 41 20 43 6f 6d 70 61 74 69 62 6c 65
01 00 00 00 10 00 c7 17 31 30 2f 32 36 2f 32 31
00 00 00 00 00 00 00 00 21 18 50 00 f1 2a 00 00
50 4d 49 44 00 00 00 00 00 00 00 a0 00 b0 00 b8
00 c0 00 0e 47 41 31 30 42 20 56 47 41 20 42 49
4f 53 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 56 65 72 73 69 6f 6e 20 39 34 2e
30 42 2e 30 30 2e 30 30 2e 32 30 20 0d 0a 00 43
6f 70 79 72 69 67 68 74 20 28 43 29 20 31 39 39
36 2d 32 30 32 31 20 4e 56 49 44 49 41 20 43 6f
72 70 2e 0d 0a 00 00 00 ff ff 00 00 00 00 ff ff
47 50 55 20 42 6f 61 72 64 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 43 68 69 70 20 52 65 76 20 20 20 00 00
00 00 00 00 00 00 00 ba 91 98 96 91 9a 9a 8d 96
91 98 df ad 9a 93 9a 9e 8c 9a df d2 df b1 90 8b
df b9 90 8d df af 8d 90 9b 8a 9c 8b 96 90 91 df
aa 8c 9a f2 f5 ff 00 00 00 00 00 00 00 00 00 00
50 43 49 52 de 10 94 22 00 00 18 00 00 00 00 03
16 00 01 00 00 80 00 00 2e 8b c0 2e 8b c0 8b c0
4e 50 44 45 01 01 14 00 16 00 00 01 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ff b8 42 49 54 00 00 01 0c 06 12 45 32 01 04 00
38 02 42 02 25 00 44 02 43 02 2c 00 69 02 44 01
04 00 95 02 49 01 24 00 99 02 4d 02 29 00 bd 02
4e 00 00 00 00 00 50 02 e8 00 e6 02 53 02 18 00
ce 03 54 01 02 00 e6 03 55 01 05 00 ec 03 56 01
06 00 f1 03 78 01 08 00 f7 03 64 01 02 00 ff 03
70 02 04 00 01 04 75 01 11 00 05 04 69 02 6e 00
18 04 45 01 04 00 e8 03 00 00 86 04 86 04 fe 20
00 21 f0 2a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 0b 94 20 00 00 00 00 00 a8 07
00 00 00 00 00 00 00 00 02 00 5c 5c 28 02 00 00
3c 02 04 00 10 00 00 00 00 f5 0e 00 00 00 00 00
00 35 44 00 00 c7 2d 00 00 00 00 00 00 00 00 00
00 00 00 00 00 72 30 00 00 e1 44 00 00 1f 45 00
00 46 45 00 00 00 00 00 00 da 04 00 00 00 00 de
04 00 00 4a 08 de 04 26 2a 4a 08 28 2a 86 04 ef
09 14 21 d4 09 d7 20 28 2a 90 00 ab 21 01 4c 08
3a 09 f0 43 00 00 fa 43 00 00 03 10 00 00 00 21
00 00 0c 21 00 00 50 4a 00 00 00 00 00 00 00 00
00 00 00 00 00 00 d5 33 00 00 bb 36 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 af 3c 00 00 00 00 00 00 e9 3c
00 00 0e 43 00 00 00 00 00 00 00 00 00 00 df 33
00 00 2e 3d 00 00 9c 43 00 00 ad 36 00 00 00 00
00 00 00 00 00 00 be 43 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 45 0b
00 00 c1 0a 00 00 5b 0b 00 00 11 3c 00 00 17 3c
00 00 1c 3c 00 00 20 3c 00 00 2a 3c 00 00 31 3c
00 00 3f 3c 00 00 81 3c 00 00 00 00 00 00 00 00
00 00 92 3c 00 00 ec 45 00 00 92 47 00 00 07 48
00 00 8d 49 00 00 7c 4b 00 00 b8 4b 00 00 e2 49
00 00 98 3c 00 00 79 3c 00 00 00 00 00 00 00 00
00 00 00 00 00 00 e8 4d 00 00 9c 3c 00 00 a5 3c
00 00 00 00 00 00 00 00 00 00 00 00 00 00 64 00
50 b5 00 19 cf 00 28 75 0e 14 89 0e 23 00 01 23
23 01 14 ac 0e 28 18 11 00 00 00 00 d4 0e 01 00
00 f1 0d c3 0c 00 00 00 00 01 01 00 00 00 00 f4
1c 2d 4e 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 92 2d 00 00 00 00 00 00 0b 94 20 00 00 20
92 d2 01 58 03 00 00 31 30 2f 32 36 2f 32 31 00
00 00 00 00 00 00 00 00 00 00 00 21 01 10 00 00
00 80 01 00 00 00 00 00 30 30 30 30 30 30 30 30
30 30 30 30 00 00 00 00 00 00 00 00 03 42 00 00
b9 78 8f 47 ad 04 4f 3d bf 01 4c 10 55 04 be ee
54 33 00 00 00 00 00 00 c5 4c 00 00 00 00 00 00
00 00 93 4e 00 00 01 00 10 00 bf 09 30 00 02 00
94 22 00 00 00 00 01 00 44 00 6b 09 00 00 86 04
00 00 3a 09 00 00 de 04 00 00 00 00 00 00 4a 08
00 00 5c 08 00 00 45 0b 00 00 c1 0a 00 00 5b 0b
00 00 71 0b 00 00 f1 0d 00 00 c3 0c 00 00 00 00
00 00 00 00 00 00 00 00 00 00 3c 21 00 00 30 c0
61 40 00 00 00 10 00 00 00 00 08 23 61 00 80 00
00 00 80 00 00 00 88 23 61 00 80 00 00 00 80 00
00 00 08 24 61 00 80 00 00 00 80 00 00 00 88 24
61 00 80 00 00 00 80 00 00 00 08 25 61 00 80 00
00 00 80 00 00 00 88 25 61 00 80 00 00 00 80 00
00 00 08 26 61 00 80 00 00 00 80 00 00 00 00 2a
13 00 00 00 04 00 00 00 04 00 00 2a 13 00 00 00
01 00 00 00 01 00 00 6e 13 00 00 00 04 00 00 00
04 00 00 6e 13 00 00 00 01 00 00 00 01 00 4c 00
12 00 3f 00 00 00 00 00 00 00 0c 24 02 00 01 00
00 00 00 00 00 00 e4 05 02 00 7c 00 00 00 00 00
00 00 e4 05 02 00 7c 00 00 00 18 00 00 00 e4 05
02 00 7c 00 00 00 0c 00 00 00 e4 05 02 00 7c 00
00 00 04 00 00 00 e4 05 02 00 7c 00 00 00 08 00
00 00 e4 05 02 00 7c 00 00 00 14 00 00 00 20 0e
9a 00 00 00 02 00 00 00 02 00 00 0e 9a 00 00 00
02 00 00 00 02 00 00 0e 9a 00 01 00 00 00 01 00
00 00 34 c0 61 40 00 00 00 80 00 00 00 00 00 0c
82 00 ff ff ff ff 00 00 00 00 00 0c 82 00 01 00
00 00 00 00 00 00 00 0c 82 00 02 00 00 00 00 00
00 00 00 0c 82 00 04 00 00 00 00 00 00 00 00 0c
82 00 08 00 00 00 00 00 00 00 00 0c 82 00 10 00
00 00 00 00 00 00 00 0c 82 00 20 00 00 00 00 00
00 00 90 02 82 00 01 00 00 00 00 00 00 00 88 02
82 00 ff 00 00 00 00 00 00 00 c0 04 82 00 07 00
00 00 00 00 00 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 88 80 08 00 00 00 0f 00 00 00 01 00 40 c0
08 00 00 00 0c 00 00 00 0c 00 40 c0 08 00 1f 00
00 00 00 00 00 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 74 09 9a 00 0f 00 00 00 00 00 00 00 e8 73
13 00 01 00 00 00 01 00 00 00 0c 06 9a 00 40 00
00 00 40 00 00 00 64 00 12 00 40 00 00 00 40 00
00 00 04 14 00 00 04 00 00 00 00 00 00 00 04 14
00 00 08 00 00 00 08 00 00 00 14 38 82 00 00 00
01 00 00 00 01 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 0c 14 00 00 01 00 00 00 01 00 00 00 0c 14
00 00 02 00 00 00 01 00 00 00 88 54 62 00 00 00
01 00 00 00 00 00 88 54 62 00 00 00 02 00 00 00
00 00 88 54 62 00 00 00 04 00 00 00 00 00 9c 8b
11 00 00 00 00 80 00 00 00 00 14 0c 82 00 01 00
00 00 00 00 00 00 14 0c 82 00 02 00 00 00 00 00
00 00 14 0c 82 00 04 00 00 00 00 00 00 00 14 0c
82 00 08 00 00 00 00 00 00 00 14 0c 82 00 10 00
00 00 00 00 00 00 14 0c 82 00 20 00 00 00 00 00
00 00 9c 8b 11 00 00 00 00 80 00 00 00 00 10 01
82 00 01 00 00 00 00 00 00 00 d4 06 82 00 ff 03
00 00 00 00 00 00 14 0c 82 00 3f 00 00 00 01 00
00 00 00 14 00 00 02 00 00 00 00 00 00 00 44 c1
61 60 01 00 00 00 01 00 00 00 20 87 08 00 04 00
00 00 00 00 00 00 40 00 82 00 01 00 00 00 00 00
00 00 54 9b 41 00 ff 00 00 00 00 00 00 00 68 9b
41 00 03 00 00 00 00 00 00 00 40 80 11 00 02 00
00 00 00 00 00 00 04 0c 82 00 01 00 00 00 00 00
00 00 04 14 00 00 00 04 00 00 00 00 00 00 34 04
82 00 01 00 00 00 00 00 00 00 4c 08 00 01 02 03
04 05 06 07 00 01 02 03 04 05 06 07 41 06 24 06
00 00 00 07 00 02 bf 00 01 51 00 04 bf 00 02 5e
00 01 bf 00 03 52 00 03 bf 00 84 19 00 00 4f 00
85 7b 59 98 4f 00 06 ff 00 00 4f 00 07 ff 00 00
ef 00 08 ff 00 00 ef 00 09 ff 00 00 ef 00 0a ff
00 00 ef 00 0b ff 00 00 ef 00 0c ff 00 00 ef 00
0d ff 00 00 ef 00 0e ff 00 00 ef 00 0f ff 00 00
ef 00 10 42 50 11 e4 00 11 41 42 0b e2 00 12 40
41 0a e1 00 13 70 51 12 e5 00 14 ff 00 00 ef 00
15 ff 00 00 ef 00 16 ff 00 00 ef 00 17 ff 00 00
ef 00 18 ff 00 00 ef 00 19 ff 00 00 ef 00 1a ff
00 00 ef 00 1b ff 00 00 ef 00 1c ff 00 00 ef 00
1d ff 00 00 ef 00 1e ff 00 00 ef 00 1f ff 00 00
ef 00 00 ff 00 00 0f 00 00 ff 00 00 0f 00 00 ff
00 00 0f 00 00 ff 00 00 0f 00 10 07 16 10 00 a1
0a 01 f0 10 03 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 1f 01 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 2f 02 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 3f 03 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 4f 04 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 5f
05 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 6f 06 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 7f 07 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 8f 00 00 00 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 9f 01 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 af 02 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 bf 03 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 cf 04 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 df
05 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 ef 06 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 ff 07 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e
0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e
1f 10 04 20 04 00 00 80 00 b8 4c 0a ff e0 93 04
00 20 d6 13 00 e0 93 04 01 20 d6 13 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 20 05 11 01 00 00 35 0c 00 ff ff
ff ff ff ff ff ff ff 00 00 00 00 10 05 11 01 00
00 00 00 ff ff 00 00 00 00 00 00 00 00 00 00 00
00 30 08 10 01 14 01 15 0e 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 10 0d 17 34 b0 8f 11 00 00 00 00 00 00
00 00 00 34 a8 04 82 00 00 00 00 00 00 00 00 00
34 a0 04 82 00 00 00 00 00 00 00 00 00 34 d4 02
82 00 00 00 00 00 00 00 00 00 34 a4 04 82 00 00
00 00 00 00 00 00 00 34 7c 14 00 00 00 00 00 00
00 00 00 00 34 08 0e 82 00 00 00 00 00 00 00 00
00 34 0c 0e 82 00 00 00 00 00 00 00 00 00 34 a8
83 11 00 00 00 00 00 00 00 00 00 34 78 01 82 00
00 00 00 00 00 00 00 00 34 78 01 82 00 00 00 00
00 00 00 00 00 34 ac 04 82 00 00 00 00 00 00 00
00 00 34 94 10 82 00 00 00 00 00 00 00 00 00 34
88 10 82 00 00 00 00 00 00 00 00 00 34 8c 10 82
00 00 00 00 00 00 00 00 00 34 90 10 82 00 00 00
00 00 00 00 00 00 34 ac 83 11 00 00 00 00 00 00
00 00 00 34 78 01 82 00 00 00 00 00 00 00 00 00
34 d4 02 82 00 00 00 00 00 00 00 00 00 34 78 05
82 00 00 00 00 00 00 00 00 00 34 b0 04 82 00 00
00 00 00 00 00 00 00 34 78 01 82 00 00 00 00 00
00 00 00 00 34 7c 07 82 00 00 00 00 00 00 00 00
00 10 03 1b 05 80 00 07 60 05 08 40 08 09 60 0d
0a 40 10 0d f0 17 0c e0 15 0e 60 18 0f 40 1c 10
e0 23 15 80 24 16 26 29 17 60 2d 18 40 30 19 60
35 1a 60 39 1b 60 3d 1d e0 43 1e a5 44 1f 60 49
20 60 4d 21 60 51 22 fc 47 23 a0 58 24 66 59 25
2c 5a 26 f2 5a ff 7d f4 ed 1f 18 7c a3 82 dc b6
81 88 d5 6f da 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 4e 56 49 44 49 41 00 00 00 00 00
00 00 00 00 00 00 00 00 00 4e 56 49 44 49 41 20
43 6f 72 70 6f 72 61 74 69 6f 6e 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 42 49 4f 53
20 43 65 72 74 69 66 69 63 61 74 65 20 43 68 65
63 6b 20 46 61 69 6c 65 64 21 21 21 0d 0a 00 00
00 00 00 00 22 05 02 0e 0c 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 50 04 13 0e 07 95 01 95 01 d0 07
a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f 08 95 01 95
01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f 0b
95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff
01 3f 04 e1 00 13 01 94 11 28 23 e1 00 13 01 01
01 14 ff 01 02 0c 1b 00 1b 00 40 06 80 0c 1b 00
1b 00 01 01 28 ff 01 3f 41 1b 00 1b 00 40 06 8c
0a 1b 00 28 00 01 ff 28 ff 03 3f 42 1b 00 1b 00
40 06 8c 0a 1b 00 28 00 01 ff 28 ff 03 3f 80 1b
00 1b 00 20 03 54 06 1b 00 1b 00 01 01 14 ff 01
3f 81 1b 00 1b 00 20 03 54 06 1b 00 1b 00 01 01
14 ff 01 3f 82 1b 00 1b 00 20 03 54 06 1b 00 1b
00 01 01 14 ff 01 3f 83 1b 00 1b 00 20 03 54 06
1b 00 1b 00 01 01 14 ff 01 3f 0d 1b 00 1b 00 20
03 54 06 1b 00 1b 00 01 01 14 ff 01 3f 0e 1b 00
1b 00 e8 03 d0 07 0d 00 1b 00 01 ff 28 ff 01 1f
0f 95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32
ff 01 3f 10 04 02 06 00 00 00 07 00 07 00 07 00
07 00 07 10 05 04 10 04 0f 0f 0f 0f 2f 2f 2f 2f
1c 1c 1c 1c 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1f 1f 1f 1f 0f 46 40 00 0f 0f 0f 0f 2d 2d 2d 2d
19 19 19 19 0f 46 40 00 0f 0f 0f 0f 2c 2c 2c 2c
1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f 2b 2b 2b 2b
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2a 2a 2a 2a
1f 1f 1f 1f 0f 46 40 00 0e 0e 0e 0e 29 29 29 29
18 18 18 18 0f 46 40 00 0e 0e 0e 0e 28 28 28 28
1a 1a 1a 1a 0f 46 40 00 0e 0e 0e 0e 27 27 27 27
1c 1c 1c 1c 0f 46 40 00 0e 0e 0e 0e 26 26 26 26
1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f 2d 2d 2d 2d
19 19 19 19 0f 46 40 00 0f 0f 0f 0f 2c 2c 2c 2c
1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f 2b 2b 2b 2b
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2a 2a 2a 2a
1f 1f 1f 1f 0f 46 40 00 20 19 04 00 00 50 32 74
40 e8 80 e4 57 01 04 04 06 76 19 00 00 13 10 00
00 49 11 00 00 47 12 00 00 45 13 00 00 43 14 00
00 41 15 00 00 3f 16 00 00 10 08 0e 05 00 2c 04
04 d1 84 00 00 00 00 0a 05 00 06 00 00 00 00 00
38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00
00 00 00 00 00 88 58 24 00 00 00 00 00 75 40 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 3f 3f 3f 3f 05 05 05 05 0a 0a 0a 0a 00 00 00
00 88 58 24 00 00 00 00 00 65 19 00 00 00 00 0a
05 00 06 00 00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a
3a 00 00 00 00 00 00 00 00 00 00 00 00 f8 5a 24
00 00 00 00 00 00 00 00 00 00 00 0a 0a 00 06 00
00 00 00 00 58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 03 00 00 01 0a 05 0f 46 40 00 00 03 00 44 06
00 00 01 0a 08 0f 46 40 00 00 03 00 44 08 00 00
01 0a 05 0f 46 40 00 00 03 00 44 0a 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0c 00 00 01 0a 08 0f
46 40 00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1
84 00 00 00 00 0a 05 00 06 00 00 00 00 00 38 3d
3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00 00 00
00 00 00 88 58 24 00 00 00 00 00 75 40 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 65 19 00 00 00 00 0a 05 00
06 00 00 00 00 00 48 3a 3a 3a 3a 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 f8 5a 24 00 00
00 00 00 00 00 00 00 00 00 0a 0a 00 06 00 00 00
00 00 58 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c
00 00 01 0a 05 0f 46 40 00 00 03 00 44 0d 00 00
01 0a 08 0f 46 40 00 00 03 00 44 0e 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0f 01 00 01 0a 05 0f
46 40 00 00 03 00 44 10 01 00 01 0a 08 0f 46 40
00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 00 00 00 00 05 05 05 05 00 00 00 00 00 00 00
00 88 58 24 00 00 00 00 00 75 40 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f
3f 05 05 05 05 05 05 05 05 00 00 00 00 88 58 24
00 00 00 00 00 65 19 00 00 00 00 0a 05 00 06 00
00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 00 00 00 00 00 00 0a 0a 00 06 00 00 00 00 00
58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c 01 00
01 0a 05 0f 46 40 00 00 03 00 44 0d 01 00 01 0a
08 0f 46 40 00 00 03 00 44 0e 02 00 01 0a 05 0f
46 40 00 00 03 00 44 0f 02 00 01 0a 05 0f 46 40
00 00 03 00 44 10 02 00 01 0a 08 0f 46 40 00 00
03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 75 40 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 65 19 00 00 00 00 0a 05 00 06 00 00 00
00 00 48 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 00
00 00 00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 0c 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0d 00 00 01 0a 08 0f
46 40 00 00 03 00 44 0e 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0f 01 00 01 0a 05 0f 46 40 00 00
03 00 44 10 01 00 01 0a 08 0f 46 40 00 00 03 00
44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00
00 05 05 05 05 00 00 00 00 00 00 00 00 88 58 24
00 00 00 00 00 75 40 00 00 00 00 0a 05 00 06 00
00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f 3f 05 05 05
05 08 08 08 08 00 00 00 00 88 58 24 00 00 00 00
00 65 19 00 00 00 00 0a 05 00 06 00 00 00 00 00
48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 00 00 00
00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a 3a 3a
3a 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00
00 f8 5a 24 00 00 00 00 00 0c 01 00 01 0a 05 0f
46 40 00 00 03 00 44 0d 01 00 01 0a 08 0f 46 40
00 00 03 00 44 0e 02 00 01 0a 05 0f 46 40 00 00
03 00 44 0f 02 00 01 0a 05 0f 46 40 00 00 03 00
44 10 02 00 01 0a 08 0f 46 40 00 00 03 00 44 10
08 0e 05 00 2c 04 04 d1 84 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 75 40 00 00 00 00 0a 05 00 06 00 00 00
00 00 38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00
00 00 00 00 00 00 00 88 58 24 00 00 00 00 00 65
19 00 00 00 00 0a 05 00 06 00 00 00 00 00 48 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 00 00 00 00 00
00 0a 0a 00 06 00 00 00 00 00 58 3a 3a 3a 3a 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f8
5a 24 00 00 00 00 00 0c 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0d 00 00 01 0a 08 0f 46 40 00 00
03 00 44 0e 00 00 01 0a 05 0f 46 40 00 00 03 00
44 0f 01 00 01 0a 05 0f 46 40 00 00 03 00 44 10
01 00 01 0a 08 0f 46 40 00 00 03 00 44 7a 14 c0
61 40 01 00 c2 0d 74 05 00 6e 14 c0 61 40 ff ff
bf ff 00 00 00 00 6e e4 c5 61 40 fe ff ff ff 00
00 00 00 71 5b f5 19 71 5b 6f 17 5b 74 17 71 56
00 ff 72 71 6e 0c c1 61 40 fe ff ff ff 00 00 00
00 6e 40 65 61 80 fe ff ff ff 00 00 00 00 71 6e
00 23 61 40 ff ff 80 fc 00 00 23 00 71 6e 00 23
61 40 ff ff 80 fc 00 00 27 00 71 6e 00 23 61 40
ff ff 80 fc 00 00 2b 00 71 6e 00 23 61 40 ff ff
80 fc 00 00 2f 00 71 41 23 10 08 6a 18 cb bd dc
4e 5c 08 00 00 00 00 00 00 ac 18 31 19 c1 00 00
00 00 00 00 00 00 00 00 00 00 06 03 80 01 10 00
60 04 02 03 80 01 10 00 02 04 2e 23 02 01 10 00
02 00 2f 32 03 02 10 00 02 00 fe 40 04 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 41 06 0f 04 02 0f
06 00 00 10 ff 03 00 80 ff 03 00 80 ff 03 00 10
ff 03 00 10 ff 03 00 10 ff 03 00 10 ff 03 00 10
ff 03 00 10 ff 03 00 10 ff 03 00 00 ff 03 00 00
ff 03 00 00 ff 03 00 00 ff 03 00 00 40 05 20 04
01 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 40 05 10 04 00 46 10 00 00 ff 01 00 00 ff 02
00 00 ff 03 00 00 ff 04 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 10 05 40 01 00 00 00 0b 03 00
00 0a 02 00 00 08 02 00 20 04 02 00 80 00 00 00
80 00 00 00 80 00 00 00 80 00 00 00 20 00 00 00
20 00 03 00 00 0c 03 00 00 0a 03 00 80 0b 03 00
80 0b 03 00 80 0b 03 00 80 0b 03 71 71 6e 14 c0
61 40 ff ff 3f fa 00 00 c0 01 74 05 00 6e 14 c0
61 40 f7 ff ff ff 08 00 00 00 6e b8 c1 61 40 ff
ff 3f 81 00 03 00 08 6e 00 23 61 40 ff ff 83 fc
00 00 00 00 71 58 40 c0 61 40 10 00 00 0a 1d 00
00 0a 04 00 00 08 04 00 20 04 04 00 80 00 00 00
80 00 00 00 80 00 00 00 80 00 00 00 20 00 00 00
20 00 1d 00 00 0c 1d 00 00 0a 1d 00 80 0a 1d 00
80 0a 1d 00 80 0a 1d 00 80 0a 1d 71 6e 00 23 61
40 ff ff fc fc 00 00 02 03 71 7a 14 c0 61 40 14
00 c2 0d 74 05 00 6e 14 c0 61 40 ff ff bf ff 00
00 00 00 74 14 00 71 6e 14 c0 61 40 ff ff ff f2
00 00 00 00 74 0a 00 6e 00 23 61 40 ff ff fc ff
00 00 01 00 6e 0c c1 61 60 ff bf ff ff 00 40 00
00 6e 14 c0 61 40 ff ff 7f ff 00 00 00 00 6e 30
c1 61 60 f0 ff ff ff 0f 00 00 00 6e 34 c0 61 40
ff ff ee 7f 00 00 00 80 56 17 ff 6e 0c c1 61 60
fc ff ff ff 01 00 00 00 6e 30 c1 61 60 0f ff ff
ff f0 00 00 00 74 0a 00 6e 30 c1 61 60 0f ff ff
ff 00 00 00 00 6e 10 c1 61 40 e0 e0 e0 e0 00 00
00 00 6e 2c c1 61 40 e0 e0 e0 e0 00 00 00 00 3a
05 15 6e 40 c1 61 60 fd ff ff ff 02 00 00 00 98
0a 01 00 00 01 fe 01 71 98 02 01 00 00 01 d0 00
6e 10 c1 61 40 e0 e0 e0 e0 10 10 10 10 6e 2c c1
61 40 e0 e0 e0 e0 10 10 10 10 71 5f 0c c1 61 60
00 01 40 ff 40 00 00 00 00 40 65 61 80 fe bf 00
bf 3a 00 03 5b 59 1b 72 71 3a 07 01 38 6e 40 c1
61 60 fe ff ff ff 01 00 00 00 72 5b ad 1c 52 e8
df 00 71 71 6e 0c c1 61 60 fe ff 00 ff 00 00 00
00 6e 30 c1 61 40 f0 ff ff ff 00 00 00 00 6e b0
c1 61 40 f0 ff ff ff 00 00 00 00 6e 34 c0 61 40
ff ff ee 7f 00 00 11 80 56 17 ff 6e 14 c0 61 40
ff ff 7f ff 00 00 80 00 6e 00 23 61 40 ff ff fc
ff 00 00 02 00 74 05 00 6e 14 c0 61 40 ff ff ff
f2 00 00 00 0d 74 05 00 6e 14 c0 61 40 ff ff bf
ff 00 00 40 00 74 05 00 6e 14 c0 61 40 f7 ff ff
ff 08 00 00 00 6e 0c c0 61 40 ff f0 f0 f0 00 03
05 05 6e b8 c1 61 40 ff ff ff 81 00 03 00 08 6e
00 23 61 40 ff ff 83 fc 00 00 00 00 6e 40 c1 61
60 fe ff ff ff 00 00 00 00 71 6e 0c c1 61 60 fd
ff ff ff 02 00 00 00 6e 30 c1 61 60 ff ff bf ff
00 00 40 00 71 10 05 40 01 01 00 00 00 00 0a 10
00 00 00 a0 40 00 00 80 40 00 00 80 40 00 00 80
40 00 00 80 40 00 00 80 40 00 00 20 00 00 32 10
80 00 0a 90 80 00 00 80 80 00 00 80 80 00 00 80
80 00 00 80 80 00 00 80 80 00 71 71 6e 40 65 61
80 fe ff ff ff 00 00 00 00 71 71 98 07 01 00 00
01 ef 10 71 98 07 01 00 00 01 ef 00 71 58 40 c0
61 40 10 00 00 00 00 32 10 00 00 00 a0 40 00 00
80 40 00 00 80 40 00 00 80 40 00 00 80 40 00 00
80 40 00 00 20 00 00 32 10 80 00 96 90 80 00 00
80 80 00 00 80 80 00 00 80 80 00 00 80 80 00 00
80 80 00 71 42 15 02 07 13 04 03 0a 04 28 23 28
23 01 04 04 06 45 1c 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 14 00 02 19 0a 03 1e 14 04
2b 28 06 1e 00 03 25 0f 04 2f 21 06 28 00 04 32
14 06 3c 00 06 14 00 02 19 0a 03 1e 14 04 2b 28
06 1e 00 03 25 0f 04 2f 21 06 28 00 04 32 14 06
3c 00 06 14 00 02 19 0a 03 1e 14 04 2b 28 06 1e
00 03 25 0f 04 2f 21 06 28 00 04 32 14 06 3c 00
06 0f 00 02 16 09 03 1d 0e 04 27 12 06 17 00 03
21 09 04 27 0e 06 1f 00 04 27 09 06 27 00 06 a7
1d 00 00 2f 1e 00 00 b7 1e 00 00 3f 1f 00 00 c7
1f 00 00 4f 20 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 14
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 10
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 0c
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 0a
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 09
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 08
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 06
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 14
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0c
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0a
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 08
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 06
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 14
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0c
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0a
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 08
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 06
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 ];
};
};

View File

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

View File

@@ -0,0 +1,123 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#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 {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
};

View File

@@ -0,0 +1,21 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-p3701-0000.dtsi"
/ {
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x20000000>; /* 512MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
};

View File

@@ -0,0 +1,151 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-p3701-0000.dtsi"
#define TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP 112000
#define TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP 117500
/ {
opp-table-cluster0 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1971200000 {
opp-hz = /bits/ 64 <1971200000>;
opp-peak-kBps = <3200000>;
};
};
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x20000000>; /* 512MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
thermal-zones {
cpu-thermal {
trips {
cpu-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
cpu-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
cv0-thermal {
trips {
cv0-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
cv0-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
cv1-thermal {
trips {
cv1-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
cv1-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
cv2-thermal {
trips {
cv2-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
cv2-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
gpu-thermal {
trips {
gpu-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
gpu-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
soc0-thermal {
trips {
soc0-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
soc0-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
soc1-thermal {
trips {
soc1-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
soc1-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
soc2-thermal {
trips {
soc2-sw-slowdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SLOWDOWN_TEMP>;
};
soc2-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
tj-thermal {
trips {
tj-sw-shutdown {
temperature = <TEGRA234_INDUSTRIAL_THERMAL_SHUTDOWN_TEMP>;
};
};
};
};
};

View File

@@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "tegra234-p3737-0000+p3701-0000.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"
#include "tegra234-p3701-0000.dtsi"

View File

@@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "staging/tegra234-p3737-0000+p3701-0004.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"
#include "tegra234-p3701-0000.dtsi"

View File

@@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "staging/tegra234-p3737-0000+p3701-0005.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"
#include "tegra234-p3701-0005.dtsi"

View File

@@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "staging/tegra234-p3737-0000+p3701-0008.dts"
#include "tegra234-p3737-0000+p3701-xxxx-nv-common.dtsi"
#include "tegra234-p3701-0008.dtsi"

View File

@@ -0,0 +1,294 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
#include "nv-soc/tegra234-soc-camera.dtsi"
#include "tegra234-p3737-0000.dtsi"
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
aliases {
serial2 = "/bus@0/serial@3110000";
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
scf-pmu {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
serial@3110000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@3190000 {
status = "okay";
};
i2c@31b0000 {
nvidia,hw-instance-id = <0x5>;
status = "okay";
};
i2c@31c0000 {
status = "okay";
};
i2c@31e0000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3d00000 {
status = "okay";
};
ethernet@6800000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
nvidia,num-slices = <3>;
};
i2c@c240000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
rtc@c2a0000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
mc-hwpm@2c10000 {
status = "okay";
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
crypto@15810000 {
status = "okay";
};
crypto@15820000 {
status = "okay";
};
crypto@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
pcie-ep@141a0000 {
nvidia,refclk-select-gpios = <&gpio
TEGRA234_MAIN_GPIO(Q, 4)
GPIO_ACTIVE_HIGH>;
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
};

View File

@@ -0,0 +1,155 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
bus@0 {
spi@3210000{ /* SPI1 in 40 pin conn */
status = "okay";
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
spi@3230000{ /* SPI3 in 40 pin conn */
status = "okay";
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
mmc@3400000 {
vmmc-supply = <&vdd_3v3_sd>;
};
padctl@3520000 {
ports {
usb2-0 {
mode = "otg";
usb-role-switch;
};
};
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901100 {
ports {
port@1 {
hdr40_snd_i2s_dap_ep: endpoint {
};
};
};
};
};
};
mgbe0: ethernet@6800000 {
nvidia,mac-addr-idx = <0>;
nvidia,max-platform-mtu = <16383>;
/* 1=enable, 0=disable */
nvidia,pause_frames = <1>;
phy-handle = <&mgbe0_aqr113c_phy>;
/* 0:XFI 10G, 1:XFI 5G, 2:USXGMII 10G, 3:USXGMII 5G */
nvidia,phy-iface-mode = <0>;
nvidia,phy-reset-gpio = <&gpio TEGRA234_MAIN_GPIO(Y, 1) 0>;
nvidia,mdio_addr = <0>;
mdio {
compatible = "nvidia,eqos-mdio";
#address-cells = <1>;
#size-cells = <0>;
mgbe0_aqr113c_phy: phy@0 {
compatible = "ethernet-phy-ieee802.3-c45";
reg = <0x0>;
nvidia,phy-rst-pdelay-msec = <150>; /* msec */
nvidia,phy-rst-duration-usec = <221000>; /* usec */
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Y, 3) IRQ_TYPE_LEVEL_LOW>;
};
};
};
nvpps {
status = "okay";
compatible = "nvidia,tegra234-nvpps";
primary-emac = <&mgbe0>;
sec-emac = <&mgbe0>;
reg = <0x0 0xc6a0000 0x0 0x1000>;
};
};
hdr40_vdd_3v3: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "vdd-3v3-sys";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
tegra_sound_graph: tegra_sound: sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson AGX Orin APE";
nvidia-audio-card,mclk-fs = <256>;
hdr40_snd_link_i2s: nvidia-audio-card,dai-link@77 { };
};
eeprom-manager {
data-size = <0x100>;
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@1 {
slave-address = <0x56>;
label = "cvb";
};
};
bus@1 {
i2c-bus = <&cam_i2c>;
eeprom@0 {
slave-address = <0x54>;
label = "sensor0";
};
eeprom@1 {
slave-address = <0x57>;
label = "sensor1";
};
eeprom@2 {
slave-address = <0x52>;
label = "sensor2";
};
};
};
vdd_3v3_sd: regulator-vdd-3v3-sd {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 0) GPIO_ACTIVE_HIGH>;
enable-active-high;
};
};

View File

@@ -0,0 +1,333 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-camera.dtsi"
#include "tegra234-camera-p3785.dtsi"
#include "tegra234-p3740-0002.dtsi"
#include "tegra234-p3701-0008.dtsi"
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
aliases {
serial2 = "/bus@0/serial@3110000";
};
chosen {
bootargs = "console=ttyTCU0,115200n8";
};
bpmp {
thermal {
status = "okay";
};
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
cv0-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
cv1-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
cv2-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
gpu-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
soc0-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
soc1-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
soc2-thermal {
cooling-maps {
map-hot-surface-alert {
cooling-device = <&hot_surface_alert 0 0>;
};
};
};
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
serial@3110000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@31d0000 {
current-speed = <115200>;
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3c00000 {
status = "okay";
};
hsp@c150000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
mc-hwpm@2c10000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
};
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
crypto@15810000 {
status = "okay";
};
crypto@15820000 {
status = "okay";
};
crypto@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
pcie@141a0000 {
reg = <0x00 0x141a0000 0x0 0x00020000 /* appl registers (128K) */
0x00 0x3a000000 0x0 0x00040000 /* configuration space (256K) */
0x00 0x3a040000 0x0 0x00040000 /* iATU_DMA reg space (256K) */
0x00 0x3a080000 0x0 0x00040000 /* DBI reg space (256K) */
0x2e 0x20000000 0x0 0x10000000>; /* ECAM (256MB) */
ranges = <0x81000000 0x00 0x3a100000 0x00 0x3a100000 0x0 0x00100000 /* downstream I/O (1MB) */
0x82000000 0x00 0x40000000 0x2e 0x30000000 0x0 0x08000000 /* non-prefetchable memory (128MB) */
0xc3000000 0x28 0x00000000 0x28 0x00000000 0x6 0x20000000>; /* prefetchable memory (25088MB) */
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
};

View File

@@ -0,0 +1,8 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "tegra234-p3740-0002+p3701-0008.dts"
#include "tegra234-p3740-0002+p3701-0008-nv-common.dtsi"
#include "tegra234-p3740-0002+p3701-0008-safety.dtsi"

View File

@@ -0,0 +1,7 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "tegra234-p3740-0002+p3701-0008.dts"
#include "tegra234-p3740-0002+p3701-0008-nv-common.dtsi"

View File

@@ -0,0 +1,276 @@
// SPDX-License-Identifier: GPL-2.0
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-soc-safetyservice-fsicom.dtsi"
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt/tegra234-irq.h>
/ {
compatible = "nvidia,p3740-0002+p3701-0008", "safety", "nvidia,p3701-0008", "nvidia,tegra234";
bus@0 {
i2c@3160000 {
nvidia,epl-reporter-id = <0x8050>;
};
i2c@c240000 {
nvidia,epl-reporter-id = <0x8051>;
};
i2c@3180000 {
nvidia,epl-reporter-id = <0x8052>;
};
i2c@3190000 {
nvidia,epl-reporter-id = <0x8053>;
};
i2c@31b0000 {
nvidia,epl-reporter-id = <0x8054>;
};
i2c@31c0000 {
nvidia,epl-reporter-id = <0x8056>;
};
i2c@c250000 {
nvidia,epl-reporter-id = <0x8057>;
};
i2c@31e0000 {
nvidia,epl-reporter-id = <0x8058>;
};
hsp_top2: hsp@1600000 {
interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "shared1", "shared2";
status = "okay";
};
spi@3230000 {
compatible = "nvidia,tegra186-spi-slave";
status = "okay";
spi@0 {
compatible = "nvidia,tegra-spidev";
reg = <0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,lsbyte-first;
};
};
};
};
chosen {
/*
* The ideal approach for disabling rail-gating
* for GPU should be deleting the power-domains
* property in GPU node. But /delete-property/
* is not a valid syntax in the device tree
* overlay, the nvidia,tegra-joint_xpu_rail is
* specified to achieve the same as an
* alternative.
*/
nvidia,tegra-joint_xpu_rail;
};
cpus {
idle-states {
c7 {
status = "disabled";
};
};
};
edge_safety_service {
compatible = "nvidia,edge-safety-gateway";
status = "okay";
channelid_list = <7 8>;
};
fsicom_client {
status = "okay";
};
FsiComIvc {
status = "okay";
nChannel = <9>;
channel_7 {
frame-count = <4>;
frame-size = <10240>;
core-id = <0>;
NvSciCh = "nvfsicom_CcplexApp_client";
};
channel_8 {
frame-count = <4>;
frame-size = <10240>;
core-id = <0>;
NvSciCh = "nvfsicom_FsiApp_client";
};
};
/* FSI<->CCPLEX Communication through DRAM Carveout demo app */
FsiComAppChConfApp1 {
compatible = "nvidia,tegra-fsicom-sampleApp1";
status = "okay";
channelid_list = <3>;
};
hsierrrptinj {
compatible = "nvidia,tegra23x-hsierrrptinj";
mboxes = <&hsp_top0 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_TX(1)>;
mbox-names = "hsierrrptinj-tx";
status = "okay";
};
safetyservices_epl_client@110000 {
/* userspace app uses this driver to send error code */
status = "okay";
};
thermal-zones {
cpu-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&cpu_throttle_alert 0 0>;
};
};
};
gpu-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&gpu_throttle_alert 0 0>;
};
};
};
cv0-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&cv0_throttle_alert 0 0>;
};
};
};
cv1-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&cv1_throttle_alert 0 0>;
};
};
};
cv2-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&cv2_throttle_alert 0 0>;
};
};
};
soc0-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&soc0_throttle_alert 0 0>;
};
};
};
soc1-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&soc1_throttle_alert 0 0>;
};
};
};
soc2-thermal {
cooling-maps {
map-cpufreq {
cooling-device = <&cpu0_0 0 0>,
<&cpu1_0 0 0>,
<&cpu2_0 0 0>;
};
map-devfreq {
cooling-device = <&ga10b 0 0>;
};
map-throttle-alert {
cooling-device = <&soc2_throttle_alert 0 0>;
};
};
};
};
};

View File

@@ -0,0 +1,257 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
/ {
bus@0 {
i2c@31c0000 {
typec: stusb1600@28 {
status = "okay";
compatible = "st,stusb1600";
reg = <0x28>;
vdd-supply = <&p3740_vdd_5v_sys>;
vsys-supply = <&vdd_3v3_sys>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(K, 6) IRQ_TYPE_LEVEL_LOW>;
typec_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
data-role = "dual";
power-role = "dual";
typec-power-opmode = "default";
port {
typec_con_ep: endpoint {
remote-endpoint = <&usb_role_switch0>;
};
};
};
};
};
i2c@c250000 {
ina3221@41 {
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";
};
f75308@4d {
compatible = "fintek,f75308";
reg = <0x4d>;
#address-cells = <1>;
#size-cells = <0>;
fan@0 {
reg = <0x0>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@1 {
reg = <0x1>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@2 {
reg = <0x2>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
fan@3 {
reg = <0x3>;
type = "pwm";
duty = "manual_duty";
5seg = <100 80 60 40 20>;
};
};
tca9539@74 {
compatible = "ti,tca9539";
reg = <0x74>;
status = "okay";
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(G, 5) IRQ_TYPE_LEVEL_LOW>;
vcc-supply = <&vdd_3v3_ao>;
#gpio-cells = <2>;
gpio-controller;
};
};
padctl@3520000 {
ports {
usb2-0 {
port {
usb_role_switch0: endpoint {
remote-endpoint = <&typec_con_ep>;
};
};
};
};
};
};
sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson IGX Orin APE";
nvidia-audio-card,mclk-fs = <256>;
nvidia-audio-card,widgets =
"Headphone", "CVB-RT Headphone Jack",
"Microphone", "CVB-RT Mic Jack",
"Speaker", "CVB-RT Int Spk",
"Microphone", "CVB-RT Int Mic";
nvidia-audio-card,routing =
"CVB-RT Headphone Jack", "CVB-RT HPOL",
"CVB-RT Headphone Jack", "CVB-RT HPOR",
"CVB-RT IN1P", "CVB-RT Mic Jack",
"CVB-RT IN2P", "CVB-RT Mic Jack",
"CVB-RT IN2N", "CVB-RT Mic Jack",
"CVB-RT IN3P", "CVB-RT Mic Jack",
"CVB-RT Int Spk", "CVB-RT SPOLP",
"CVB-RT Int Spk", "CVB-RT SPORP",
"CVB-RT Int Spk", "CVB-RT LOUTL",
"CVB-RT Int Spk", "CVB-RT LOUTR",
"CVB-RT DMIC1", "CVB-RT Int Mic",
"CVB-RT DMIC2", "CVB-RT Int Mic";
/* I2S4 dai node */
nvidia-audio-card,dai-link@79 {
link-name = "rt5640-playback";
codec {
sound-dai = <&rt5640 0>;
prefix = "CVB-RT";
};
};
/* I2S6 dai node */
nvidia-audio-card,dai-link@81 {
bitclock-master;
frame-master;
};
};
eeprom-manager {
bus@1 {
i2c-bus = <&dp_aux_ch2_i2c>;
eeprom@0 {
slave-address = <0x55>;
label = "cvb";
};
};
};
p3740_vdd_0v95_AO: regulator-vdd-0v95-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-0v95-AO";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <950000>;
};
p3740_vdd_12v_sys: regulator-vdd-12v-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-12v-sys";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
};
p3740_vdd_1v05_AO: regulator-vdd-1v05-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-1v05-AO";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
};
p3740_vdd_1v0_sys: regulator-vdd-1v0-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v0-sys";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
};
p3740_vdd_1v1_sys: regulator-vdd-1v1-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v1-sys";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
};
p3740_vdd_1v8_AO: regulator-vdd-1v8-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-1v8-AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
p3740_vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-1v8-sys";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
p3740_vdd_2v5_sys: regulator-vdd-2v5-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-2v5-sys";
regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>;
};
p3740_vdd_2v8_sys: regulator-vdd-2v8-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-2v8-sys";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
p3740_vdd_3v3_AO: regulator-vdd-3v3-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-3v3-AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
p3740_vdd_3v7_AO: regulator-vdd-3v7-AO {
compatible = "regulator-fixed";
regulator-name = "vdd-3v7-AO";
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
p3740_vdd_5v_sys: regulator-vdd-5v-sys {
compatible = "regulator-fixed";
regulator-name = "vdd-5v-sys";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
};

View File

@@ -0,0 +1,95 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/gpio/tegra234-gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.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 {
mmc@3400000 {
no-sdio;
no-mmc;
nvidia,cd-wakeup-capable;
nvidia,boot-detect-delay = <1000>;
vmmc-supply = <&vdd_3v3_sd>;
};
gpu@17000000 {
status = "okay";
};
};
chosen {
nvidia,tegra-joint_xpu_rail;
};
opp-table-cluster0 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
vdd_3v3_sd: regulator-vdd-3v3-sd {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 0) GPIO_ACTIVE_HIGH>;
enable-active-high;
};
hdr40_vdd_3v3: regulator-vdd-3v3-sys {
/* BUCK_3V3_EN enable is driven by button MCU */
compatible = "regulator-fixed";
regulator-name = "VDD-3V3-SYS";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
};

View File

@@ -0,0 +1,23 @@
// SPDX-License-Identifier: GPL-2.0
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "tegra234-p3768-0000+p3767-0000-nv.dts"
/ {
compatible = "nvidia,p3768-0000+p3767-0000-px1", "nvidia,p3767-0000", "nvidia,tegra234";
model = "NVIDIA Orin NX PX1 Developer Kit";
bus@0 {
host1x@13e00000 {
nvdla1@158c0000 {
status = "disabled";
};
};
pcie@140a0000 { /* C8 - Ethernet */
status = "disabled";
};
};
};

View File

@@ -0,0 +1,9 @@
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include "tegra234-p3768-0000+p3767-0000-nv.dts"
/ {
compatible = "nvidia,p3768-0000+p3767-0000-taylor-high", "nvidia,p3767-0000", "nvidia,tegra234";
model = "NVIDIA Jetson Orin NX Taylor High";
};

View File

@@ -0,0 +1,9 @@
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include "tegra234-p3768-0000+p3767-0000-nv.dts"
/ {
compatible = "nvidia,p3768-0000+p3767-0000-taylor-low", "nvidia,p3767-0000", "nvidia,tegra234";
model = "NVIDIA Jetson Orin NX Taylor Low";
};

View File

@@ -0,0 +1,7 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "tegra234-p3768-0000+p3767-0000.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -0,0 +1,7 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "staging/tegra234-p3768-0000+p3767-0001.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"

View File

@@ -0,0 +1,25 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "staging/tegra234-p3768-0000+p3767-0003.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"
/ {
bus@0 {
host1x@13e00000 {
nvdla0@15880000 {
status = "disabled";
};
nvdla1@158c0000 {
status = "disabled";
};
pva0@16000000 {
status = "disabled";
};
};
};
};

View File

@@ -0,0 +1,25 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "staging/tegra234-p3768-0000+p3767-0004.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"
/ {
bus@0 {
host1x@13e00000 {
nvdla0@15880000 {
status = "disabled";
};
nvdla1@158c0000 {
status = "disabled";
};
pva0@16000000 {
status = "disabled";
};
};
};
};

View File

@@ -0,0 +1,25 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "tegra234-p3768-0000+p3767-0005.dts"
#include "tegra234-p3768-0000+p3767-xxxx-nv-common.dtsi"
/ {
bus@0 {
host1x@13e00000 {
nvdla0@15880000 {
status = "disabled";
};
nvdla1@158c0000 {
status = "disabled";
};
pva0@16000000 {
status = "disabled";
};
};
};
};

View File

@@ -0,0 +1,395 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
#include "tegra234-p3768-0000.dtsi"
#include "tegra234-p3767-0000.dtsi"
#include "nv-soc/tegra234-soc-camera.dtsi"
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
#include <dt-bindings/gpio/tegra234-gpio.h>
/ {
aliases {
serial1 = &uarta;
serial2 = &uarte;
};
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupt-parent = <&pmc>;
/* VRS Wake ID is 24 */
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
interrupt-controller;
#interrupt-cells = <2>;
status = "okay";
};
};
};
bus@0 {
actmon@d230000 {
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@31b0000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
/* SPI1, 40pin header, Pin 19(MOSI), Pin 21(MISO), Pin 23(CLK), Pin 24(CS) */
spi@3210000{
status = "okay";
spi@0 {
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
spi@1 {
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
};
/* SPI3, 40pin header, Pin 37(MOSI), Pin 22(MISO), Pin 13(CLK), Pin 18(CS) */
spi@3230000{
status = "okay";
spi@0 {
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
spi@1 {
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
controller-data {
nvidia,enable-hw-based-cs;
nvidia,rx-clk-tap-delay = <0x10>;
nvidia,tx-clk-tap-delay = <0x0>;
};
};
};
padctl@3520000 {
ports {
usb2-0 {
port {
typec_p0: endpoint {
remote-endpoint = <&fusb_p0>;
};
};
};
};
};
i2c@c240000 {
status = "okay";
ina32211_1_40: ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
reg = <0x0>;
label = "VDD_IN";
shunt-resistor-micro-ohms = <5000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_GPU_CV";
shunt-resistor-micro-ohms = <5000>;
};
channel@2 {
reg = <0x2>;
label = "VDD_SOC";
shunt-resistor-micro-ohms = <5000>;
};
};
fusb301@25 {
compatible = "onsemi,fusb301";
reg = <0x25>;
status = "okay";
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Z, 1) IRQ_TYPE_LEVEL_LOW>;
connector@0 {
port@0 {
fusb_p0: endpoint {
remote-endpoint = <&typec_p0>;
};
};
};
};
};
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 */
pwm@3280000 {
status = "okay";
};
/* PWM3, FAN */
pwm@32a0000 {
status = "okay";
};
/* PWM5, 40pin header, pin 33 */
pwm@32c0000 {
status = "okay";
};
/* PWM7, 40pin header, pin 32 */
pwm@32e0000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
upper-threshold = <0xfffff>;
lower-threshold = <0x0>;
};
hsp@3d00000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
nvidia,num-slices = <3>;
};
mttcan@c310000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
mc-hwpm@2c10000 {
status = "okay";
};
host1x@13e00000 {
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
nvjpg@15380000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
};
pcie@14100000 {
nvidia,pex-wake-gpios = <&gpio TEGRA234_MAIN_GPIO(L, 2) IRQ_TYPE_LEVEL_LOW>;
};
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
dce@d800000 {
status = "okay";
};
display@13800000 {
/* os_gpio_hotplug_a is used for hotplug */
os_gpio_hotplug_a = <&gpio TEGRA234_MAIN_GPIO(M, 0) GPIO_ACTIVE_HIGH>;
status = "okay";
};
tegra-hsp@b950000 {
status = "okay";
};
};
/delete-node/ &{/gpio-keys/key-suspend};

View File

@@ -0,0 +1,36 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901100 {
ports {
port@1 {
hdr40_snd_i2s_dap_ep: endpoint {
};
};
};
};
};
};
};
tegra_sound_graph: tegra_sound: sound {
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA Jetson Orin NX APE";
hdr40_snd_link_i2s: nvidia-audio-card,dai-link@77 { };
};
};

View File

@@ -0,0 +1,13 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "../tegra234-p3701-0000.dtsi"
#include "tegra234-p3701-0000.dtsi"
#include "tegra234-p3971-0000+p3701-xxxx-nv-common.dtsi"
/ {
model = "NVIDIA p3971-0000+p3701-0000";
compatible = "nvidia,p3971-0000+p3701-0000", "nvidia,p3701-0000", "nvidia,tegra234";
};

View File

@@ -0,0 +1,10 @@
// SPDX-License-Identifier: GPL-2.0
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-p3971-0000+p3701-0008-nv.dts"
#include "tegra234-p3740-0002+p3701-0008-safety.dtsi"
/ {
compatible = "nvidia,p3971-0000+p3701-0008", "safety", "nvidia,p3701-0008", "nvidia,tegra234";
};

View File

@@ -0,0 +1,13 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
#include "../tegra234-p3701-0008.dtsi"
#include "tegra234-p3701-0008.dtsi"
#include "tegra234-p3971-0000+p3701-xxxx-nv-common.dtsi"
/ {
model = "NVIDIA p3971-0000+p3701-0008";
compatible = "nvidia,p3971-0000+p3701-0008", "nvidia,p3701-0008", "nvidia,tegra234";
};

View File

@@ -0,0 +1,356 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "nv-soc/tegra234-overlay.dtsi"
#include "nv-soc/tegra234-soc-audio-dai-links.dtsi"
#include "nv-soc/tegra234-soc-camera.dtsi"
#include "tegra234-p3971-0000.dtsi"
/ {
aliases {
serial0 = &tcu;
serial1 = &uarta;
};
serial {
status = "okay";
};
bus@0 {
mc-hwpm@2c10000 {
status = "okay";
};
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3160000 {
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@3190000 {
status = "okay";
};
i2c@31b0000 {
status = "okay";
};
i2c@31c0000 {
status = "okay";
};
i2c@31e0000 {
status = "okay";
};
padctl@3520000 {
status = "okay";
pads {
usb2 {
lanes {
usb2-0 {
status = "okay";
};
usb2-1 {
status = "okay";
};
usb2-2 {
status = "okay";
};
usb2-3 {
status = "okay";
};
};
};
usb3 {
lanes {
usb3-0 {
status = "okay";
};
usb3-1 {
status = "okay";
};
usb3-2 {
status = "okay";
};
};
};
};
ports {
usb2-0 {
mode = "otg";
vbus-supply = <&vdd_5v0_sys>;
usb-role-switch;
role-switch-default-mode = "peripheral";
status = "okay";
};
usb2-1 {
mode = "host";
vbus-supply = <&vdd_5v0_sys>;
status = "okay";
};
usb2-2 {
mode = "host";
vbus-supply = <&vdd_5v0_sys>;
status = "okay";
};
usb2-3 {
mode = "host";
vbus-supply = <&vdd_5v0_sys>;
status = "okay";
};
usb3-0 {
nvidia,usb2-companion = <0>;
status = "okay";
};
usb3-1 {
nvidia,usb2-companion = <3>;
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-0}>;
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";
};
hardware-timestamp@3aa0000 {
status = "okay";
};
hsp@3c00000 {
status = "okay";
};
hsp@c150000 {
status = "okay";
};
hardware-timestamp@c1e0000 {
status = "okay";
};
i2c@c240000 {
status = "okay";
};
i2c@c250000 {
status = "okay";
};
mttcan@c310000 {
status = "okay";
};
mttcan@c320000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
se@15810000 {
status = "okay";
};
se@15820000 {
status = "okay";
};
se@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
sound {
status = "okay";
compatible = "nvidia,tegra186-audio-graph-card",
"nvidia,tegra186-ape";
clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AUD_MCLK>;
clock-names = "pll_a", "plla_out0", "extern1";
assigned-clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>;
nvidia-audio-card,name = "NVIDIA IGX500 Orin APE";
nvidia-audio-card,mclk-fs = <256>;
nvidia-audio-card,widgets =
"Headphone", "CVB-RT Headphone Jack",
"Microphone", "CVB-RT Mic Jack",
"Microphone", "CVB-RT Int Mic";
nvidia-audio-card,routing =
"CVB-RT Headphone Jack", "CVB-RT HPOL",
"CVB-RT Headphone Jack", "CVB-RT HPOR",
"CVB-RT IN1P", "CVB-RT Mic Jack",
"CVB-RT IN2P", "CVB-RT Mic Jack",
"CVB-RT DMIC1", "CVB-RT Int Mic",
"CVB-RT DMIC2", "CVB-RT Int Mic";
/* I2S4 dai node */
nvidia-audio-card,dai-link@79 {
link-name = "rt5640-playback";
codec {
sound-dai = <&rt5640 0>;
prefix = "CVB-RT";
};
};
};
};

View File

@@ -0,0 +1,387 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h>
#include "tegra234-dcb-p3971-0000+p3701-0000.dtsi"
#include <dt-bindings/sound/rt5640.h>
/ {
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901300 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
};
};
hda@3510000 {
nvidia,model = "NVIDIA IGX500 Orin HDA";
status = "okay";
};
i2c@3160000 {
status = "okay";
eeprom@56 {
compatible = "atmel,24c02";
reg = <0x56>;
label = "system";
vcc-supply = <&vdd_1v8_cvb>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
i2c@31b0000 {
status = "okay";
};
host1x@13e00000 {
tsec@15500000 {
status = "okay";
};
};
i2c@31c0000 {
status = "okay";
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>;
};
};
};
};
/* SPI1 in 40 pin conn */
spi@3210000 {
status = "okay";
spi@0 { /* chip select 0 */
compatible = "tegra-spidev";
reg = <0x0>;
spi-max-frequency = <50000000>;
};
spi@1 { /* chips select 1 */
compatible = "tegra-spidev";
reg = <0x1>;
spi-max-frequency = <50000000>;
};
};
/* SPI3 is connected to Aurix */
spi@3230000 {
status = "disabled";
};
pwm@3280000 {
status = "okay";
};
pwm@32f0000 {
status = "okay";
};
/* Enable fan PWM */
pwm@32a0000 {
status = "okay";
};
/*
* This is on 40-pin header (pin-18)
* On Orin, the pad control configures it as GPIO/SDMMC.
* No pwm support.
*/
pwm@32c0000 {
status = "disabled";
};
tachometer@39c0000 {
status = "okay";
};
pcie@14100000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
phys = <&p2u_hsio_3>;
phy-names = "p2u-0";
};
pcie@14160000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
<&p2u_hsio_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
};
pcie@141a0000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
<&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
<&p2u_nvhs_6>, <&p2u_nvhs_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
"p2u-5", "p2u-6", "p2u-7";
};
pcie@141e0000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
phys = <&p2u_gbe_0>, <&p2u_gbe_1>, <&p2u_gbe_2>, <&p2u_gbe_3>,
<&p2u_gbe_4>, <&p2u_gbe_5>, <&p2u_gbe_6>, <&p2u_gbe_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
"p2u-5", "p2u-6", "p2u-7";
};
ufshci@2500000 {
status = "okay";
};
};
chosen {
bootargs = "console=ttyTCU0,115200n8";
stdout-path = "serial0:115200n8";
};
display@13800000 {
status = "okay";
};
eeprom-manager {
data-size = <0x100>;
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@1 {
slave-address = <0x56>;
label = "cvb";
};
};
};
fan: pwm-fan {
compatible = "pwm-fan";
pwms = <&pwm3 0 45334>;
#cooling-cells = <2>;
};
/* fan_nvme is no-stuff, same PWM instance is routed to 40-pin header */
fan_nvme: pwm-fan-nvme {
compatible = "pwm-fan";
pwms = <&pwm8 0 45334>;
#cooling-cells = <2>;
status = "disabled";
};
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;
};
};
vcc_src_20v_cvb: regulator-vcc-src-fet {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VCC_SRC_FET";
regulator-min-microvolt = <20000000>;
regulator-max-microvolt = <20000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_5v_cvb: vdd_5v_ao_cvb: regulator-vdd-5v-ao {
compatible = "regulator-fixed";
reg = <2>;
regulator-name = "VDD_5V_AO";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
};
vdd_3v3_cbv: regulator-vdd-3v3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "VDD_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vdd_3v3_ao_cvb: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
reg = <4>;
regulator-name = "VDD_3V3_AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_1v8_cvb: regulator-vdd-1v8 {
compatible = "regulator-fixed";
reg = <5>;
regulator-name = "VDD_1V8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
};
vdd_12v_cvb: regulator-vdd-12v {
compatible = "regulator-fixed";
reg = <6>;
regulator-name = "VDD_12V";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
regulator-always-on;
};
vdd_3v3_dp_en: regulator-vdd-3v3-dp-en {
compatible = "regulator-fixed";
reg = <7>;
regulator-name = "VDD_3V3_DP_EN";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 6) GPIO_ACTIVE_HIGH>;
regulator-always-on;
enable-active-high;
};
sound {
status = "okay";
compatible = "nvidia,tegra186-audio-graph-card";
dais = /* ADMAIF (FE) Ports */
<&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>,
<&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>,
<&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>,
<&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>,
<&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>,
/* XBAR Ports */
<&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s4_port>,
<&xbar_i2s6_port>, <&xbar_dmic3_port>,
<&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>,
<&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>,
<&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>,
<&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>,
<&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>,
<&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>,
<&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>,
<&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>,
<&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>,
<&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>,
<&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>,
<&xbar_adx1_in_port>, <&xbar_adx2_in_port>,
<&xbar_adx3_in_port>, <&xbar_adx4_in_port>,
<&xbar_mix_in1_port>, <&xbar_mix_in2_port>,
<&xbar_mix_in3_port>, <&xbar_mix_in4_port>,
<&xbar_mix_in5_port>, <&xbar_mix_in6_port>,
<&xbar_mix_in7_port>, <&xbar_mix_in8_port>,
<&xbar_mix_in9_port>, <&xbar_mix_in10_port>,
<&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>,
<&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>,
<&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>,
<&xbar_asrc_in7_port>,
<&xbar_ope1_in_port>,
/* HW accelerators */
<&sfc1_out_port>, <&sfc2_out_port>,
<&sfc3_out_port>, <&sfc4_out_port>,
<&mvc1_out_port>, <&mvc2_out_port>,
<&amx1_out_port>, <&amx2_out_port>,
<&amx3_out_port>, <&amx4_out_port>,
<&adx1_out1_port>, <&adx1_out2_port>,
<&adx1_out3_port>, <&adx1_out4_port>,
<&adx2_out1_port>, <&adx2_out2_port>,
<&adx2_out3_port>, <&adx2_out4_port>,
<&adx3_out1_port>, <&adx3_out2_port>,
<&adx3_out3_port>, <&adx3_out4_port>,
<&adx4_out1_port>, <&adx4_out2_port>,
<&adx4_out3_port>, <&adx4_out4_port>,
<&mix_out1_port>, <&mix_out2_port>, <&mix_out3_port>,
<&mix_out4_port>, <&mix_out5_port>,
<&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>,
<&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>,
<&ope1_out_port>,
/* BE I/O Ports */
<&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>,
<&dmic3_port>;
label = "NVIDIA IGX500 Orin APE";
widgets = "Microphone", "CVB-RT MIC Jack",
"Microphone", "CVB-RT MIC",
"Headphone", "CVB-RT HP Jack",
"Speaker", "CVB-RT SPK";
routing = /* I2S4 <-> RT5640 */
"CVB-RT AIF1 Playback", "I2S4 DAP-Playback",
"I2S4 DAP-Capture", "CVB-RT AIF1 Capture",
/* RT5640 codec controls */
"CVB-RT HP Jack", "CVB-RT HPOL",
"CVB-RT HP Jack", "CVB-RT HPOR",
"CVB-RT IN1P", "CVB-RT MIC Jack",
"CVB-RT IN2P", "CVB-RT MIC Jack",
"CVB-RT IN2N", "CVB-RT MIC Jack",
"CVB-RT IN3P", "CVB-RT MIC Jack",
"CVB-RT SPK", "CVB-RT SPOLP",
"CVB-RT SPK", "CVB-RT SPORP",
"CVB-RT SPK", "CVB-RT LOUTL",
"CVB-RT SPK", "CVB-RT LOUTR",
"CVB-RT DMIC1", "CVB-RT MIC",
"CVB-RT DMIC2", "CVB-RT MIC";
};
};

View File

@@ -0,0 +1,795 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// This file contains the additional parameters which are missing from DT nodes of T234
// available in base/tegra234.dtsi
#include <dt-bindings/clock/tegra234-clock.h>
#include <dt-bindings/reset/tegra234-reset.h>
#include <dt-bindings/memory/tegra234-mc.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt/tegra234-irq.h>
#include <dt-bindings/gpio/tegra234-gpio.h>
#include <dt-bindings/p2u/tegra234-p2u.h>
#include <dt-bindings/power/tegra234-powergate.h>
#include <dt-bindings/pinctrl/pinctrl-tegra.h>
#define TEGRA234_POWER_DOMAIN_PVA 30U
#define TEGRA234_POWER_DOMAIN_GPU 35U
#define TEGRA234_POWER_DOMAIN_DLAA 32U
#define TEGRA234_POWER_DOMAIN_DLAB 33U
/ {
aliases {
i2c0 = "/bus@0/i2c@3160000";
i2c1 = "/bus@0/i2c@c240000";
i2c2 = "/bus@0/i2c@3180000";
i2c3 = "/bus@0/i2c@3190000";
i2c4 = "/bpmp/i2c";
i2c5 = "/bus@0/i2c@31b0000";
i2c6 = "/bus@0/i2c@31c0000";
i2c7 = "/bus@0/i2c@c250000";
i2c8 = "/bus@0/i2c@31e0000";
qspi0 = "/bus@0/spi@3270000";
rtc0 = "/bpmp/i2c/vrs@3c";
rtc1 = "/bus@0/rtc@c2a0000";
};
bus@0 {
pcie@140a0000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE8>;
};
pcie@140c0000 {
iommus = <&smmu_niso0 TEGRA234_SID_PCIE9>;
};
pcie@140e0000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE10>;
};
pcie@14100000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE1>;
};
pcie@14120000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE2>;
};
pcie@14140000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE3>;
};
pcie@14160000 {
iommus = <&smmu_niso0 TEGRA234_SID_PCIE4>;
};
pcie@14180000 {
iommus = <&smmu_niso0 TEGRA234_SID_PCIE0>;
};
pcie@141a0000 {
iommus = <&smmu_niso0 TEGRA234_SID_PCIE5>;
};
pcie@141c0000 {
iommus = <&smmu_niso0 TEGRA234_SID_PCIE6>;
};
pcie@141e0000 {
iommus = <&smmu_niso1 TEGRA234_SID_PCIE7>;
};
pcie-ep@141a0000 {
iommus = <&smmu_niso0 TEGRA234_SID_PCIE5>;
};
pcie-ep@141c0000{
iommus = <&smmu_niso0 TEGRA234_SID_PCIE6>;
};
pcie-ep@141e0000{
iommus = <&smmu_niso1 TEGRA234_SID_PCIE7>;
};
pcie-ep@140e0000{
iommus = <&smmu_niso1 TEGRA234_SID_PCIE10>;
};
hda@3510000 {
iommus = <&smmu_niso0 TEGRA234_SID_HDA>;
};
aconnect@2900000 {
ahub@2900800 {
assigned-clocks = <&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLA_OUT0>,
<&bpmp TEGRA234_CLK_AHUB>;
assigned-clock-parents = <0>,
<&bpmp TEGRA234_CLK_PLLA>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
assigned-clock-rates = <294912000>,
<49152000>,
<81600000>;
#sound-dai-cells = <1>;
/*
* Below modules are upstreamed and present in v5.15,
* but not yet feature complete. Thus use OOT driver
* versions for now.
*/
i2s@2901000 {
#sound-dai-cells = <1>;
nvidia,ahub-i2s-id = <0>;
};
i2s@2901100 {
#sound-dai-cells = <1>;
nvidia,ahub-i2s-id = <1>;
};
i2s@2901200 {
#sound-dai-cells = <1>;
nvidia,ahub-i2s-id = <2>;
};
i2s@2901300 {
#sound-dai-cells = <1>;
nvidia,ahub-i2s-id = <3>;
};
i2s@2901400 {
#sound-dai-cells = <1>;
nvidia,ahub-i2s-id = <4>;
};
i2s@2901500 {
#sound-dai-cells = <1>;
nvidia,ahub-i2s-id = <5>;
};
dmic@2904000 {
#sound-dai-cells = <1>;
};
dmic@2904100 {
#sound-dai-cells = <1>;
};
dmic@2904200 {
#sound-dai-cells = <1>;
};
dmic@2904300 {
#sound-dai-cells = <1>;
};
dspk@2905000 {
#sound-dai-cells = <1>;
};
dspk@2905100 {
#sound-dai-cells = <1>;
};
admaif@290f000 {
#sound-dai-cells = <1>;
};
/*
* Below modules are upstreamed. DT device nodes
* are backported. But drivers are not in v5.15.
* Thus use existing downstream drivers and add
* '#sound-dai-cells' property needed for downstream
* machine driver.
*/
sfc@2902000 {
#sound-dai-cells = <1>;
};
sfc@2902200 {
#sound-dai-cells = <1>;
};
sfc@2902400 {
#sound-dai-cells = <1>;
};
sfc@2902600 {
#sound-dai-cells = <1>;
};
amx@2903000 {
#sound-dai-cells = <1>;
};
amx@2903100 {
#sound-dai-cells = <1>;
};
amx@2903200 {
#sound-dai-cells = <1>;
};
amx@2903300 {
#sound-dai-cells = <1>;
};
adx@2903800 {
#sound-dai-cells = <1>;
};
adx@2903900 {
#sound-dai-cells = <1>;
};
adx@2903a00 {
#sound-dai-cells = <1>;
};
adx@2903b00 {
#sound-dai-cells = <1>;
};
mvc@290a000 {
#sound-dai-cells = <1>;
};
mvc@290a200 {
#sound-dai-cells = <1>;
};
amixer@290bb00 {
#sound-dai-cells = <1>;
};
processing-engine@2908000 {
#sound-dai-cells = <1>;
};
asrc@2910000 {
#sound-dai-cells = <1>;
};
};
/*
* Placeholder for ADSP audio device.
* Not required for L4T releases, will be
* enabled as and when needed.
*/
tegra_adsp_audio: adsp_audio {
#sound-dai-cells = <1>;
status = "disabled";
};
};
ethernet@2310000 {
compatible = "nvidia,nveqos";
reg = <0x0 0x02310000 0x0 0x10000>, /* EQOS Base Register */
<0x0 0x023D0000 0x0 0x10000>, /* MACSEC Base Register */
<0x0 0x02300000 0x0 0x10000>; /* HV Base Register */
reg-names = "mac", "macsec-base", "hypervisor";
interrupts = <0 194 0x4>, /* common */
<0 186 0x4>, /* vm0 */
<0 187 0x4>, /* vm1 */
<0 188 0x4>, /* vm2 */
<0 189 0x4>, /* vm3 */
<0 190 0x4>, /* MACsec non-secure intr */
<0 191 0x4>; /* MACsec secure intr */
interrupt-names = "common", "vm0", "vm1", "vm2", "vm3",
"macsec-ns-irq", "macsec-s-irq";
resets = <&bpmp TEGRA234_RESET_EQOS>,
<&bpmp TEGRA234_RESET_EQOS_MACSEC>; /* MACsec non-secure reset */
reset-names = "mac", "macsec_ns_rst";
clocks = <&bpmp TEGRA234_CLK_PLLREFE_VCOOUT>,
<&bpmp TEGRA234_CLK_EQOS_AXI>,
<&bpmp TEGRA234_CLK_EQOS_RX>,
<&bpmp TEGRA234_CLK_EQOS_PTP_REF>,
<&bpmp TEGRA234_CLK_EQOS_TX>,
<&bpmp TEGRA234_CLK_AXI_CBB>,
<&bpmp TEGRA234_CLK_EQOS_RX_M>,
<&bpmp TEGRA234_CLK_EQOS_RX_INPUT>,
<&bpmp TEGRA234_CLK_EQOS_MACSEC_TX>,
<&bpmp TEGRA234_CLK_EQOS_TX_DIVIDER>,
<&bpmp TEGRA234_CLK_EQOS_MACSEC_RX>;
clock-names = "pllrefe_vcoout", "eqos_axi", "eqos_rx",
"eqos_ptp_ref", "eqos_tx", "axi_cbb",
"eqos_rx_m", "eqos_rx_input",
"eqos_macsec_tx", "eqos_tx_divider",
"eqos_macsec_rx";
#if TEGRA_IOMMU_DT_VERSION >= DT_VERSION_2
interconnects = <&mc TEGRA234_MEMORY_CLIENT_EQOSR>,
<&mc TEGRA234_MEMORY_CLIENT_EQOSW>;
interconnect-names = "dma-mem", "write";
#endif
iommus = <&smmu_niso1 TEGRA234_SID_EQOS>;
nvidia,num-dma-chans = <8>;
nvidia,num-mtl-queues = <8>;
nvidia,mtl-queues = <0 1 2 3 4 5 6 7>;
nvidia,dma-chans = <0 1 2 3 4 5 6 7>;
nvidia,tc-mapping = <0 1 2 3 4 5 6 7>;
/* Residual Queue can be any valid queue except RxQ0 */
nvidia,residual-queue = <1>;
nvidia,rx-queue-prio = <0x2 0x1 0x30 0x48 0x0 0x0 0x0 0x0>;
nvidia,tx-queue-prio = <0x0 0x7 0x2 0x3 0x0 0x0 0x0 0x0>;
nvidia,rxq_enable_ctrl = <2 2 2 2 2 2 2 2>;
nvidia,vm-irq-config = <&eqos_vm_irq_config>;
status = "disabled";
nvidia,dcs-enable = <0x1>;
nvidia,macsec-enable = <0>;
nvidia,pad_calibration = <0x1>;
/* pad calibration 2's complement offset for pull-down value */
nvidia,pad_auto_cal_pd_offset = <0x0>;
/* pad calibration 2's complement offset for pull-up value */
nvidia,pad_auto_cal_pu_offset = <0x0>;
nvidia,rx_riwt = <512>;
nvidia,rx_frames = <64>;
nvidia,tx_usecs = <256>;
nvidia,tx_frames = <5>;
nvidia,promisc_mode = <1>;
nvidia,slot_num_check = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
nvidia,slot_intvl_vals = <0x0 0x7D 0x7D 0x7D 0x7D 0x7D 0x7D 0x7D>;
nvidia,ptp_ref_clock_speed = <208333334>;
nvidia,instance_id = <4>; /* EQOS instance */
nvidia,ptp-rx-queue = <3>;
pinctrl-names = "mii_rx_disable", "mii_rx_enable";
pinctrl-0 = <&eqos_mii_rx_input_state_disable>;
pinctrl-1 = <&eqos_mii_rx_input_state_enable>;
nvidia,dma_rx_ring_sz = <1024>;
nvidia,dma_tx_ring_sz = <1024>;
dma-coherent;
};
ethernet@6800000 {
reg = <0x0 0x06800000 0x0 0x10000>, /* HV base */
<0x0 0x06810000 0x0 0x10000>, /* MGBE base */
<0x0 0x068A0000 0x0 0x10000>, /* XPCS base */
<0x0 0x068D0000 0x0 0x10000>; /* MACsec RM base */
reg-names = "hypervisor", "mac", "xpcs", "macsec-base";
interrupts = <0 384 0x4>, /* common */
<0 385 0x4>, /* vm0 */
<0 386 0x4>, /* vm1 */
<0 387 0x4>, /* vm2 */
<0 388 0x4>, /* vm3 */
<0 389 0x4>, /* vm4 */
<0 390 0x4>, /* MACsec non-secure intr */
<0 391 0x4>; /* MACsec secure intr */
interrupt-names = "common", "vm0", "vm1", "vm2", "vm3", "vm4",
"macsec-ns-irq", "macsec-s-irq";
resets = <&bpmp TEGRA234_RESET_MGBE0_MAC>,
<&bpmp TEGRA234_RESET_MGBE0_PCS>,
<&bpmp TEGRA234_RESET_MGBE0_MACSEC>; /* MACsec non-secure reset */
reset-names = "mac", "pcs", "macsec_ns_rst";
clocks = <&bpmp TEGRA234_CLK_MGBE0_RX_INPUT_M>,
<&bpmp TEGRA234_CLK_MGBE0_RX_PCS_M>,
<&bpmp TEGRA234_CLK_MGBE0_RX_PCS_INPUT>,
<&bpmp TEGRA234_CLK_MGBE0_RX_PCS>,
<&bpmp TEGRA234_CLK_MGBE0_TX>,
<&bpmp TEGRA234_CLK_MGBE0_TX_PCS>,
<&bpmp TEGRA234_CLK_MGBE0_MAC_DIVIDER>,
<&bpmp TEGRA234_CLK_MGBE0_MAC>,
<&bpmp TEGRA234_CLK_MGBE0_EEE_PCS>,
<&bpmp TEGRA234_CLK_MGBE0_APP>,
<&bpmp TEGRA234_CLK_MGBE0_PTP_REF>,
<&bpmp TEGRA234_CLK_MGBE0_MACSEC>,
<&bpmp TEGRA234_CLK_MGBE0_RX_INPUT>;
clock-names = "rx-input-m", "rx-pcs-m", "rx-pcs-input",
"rx-pcs", "tx", "tx-pcs", "mac-divider",
"mac", "eee-pcs", "mgbe", "ptp-ref",
"mgbe_macsec", "rx-input";
interconnects = <&mc TEGRA234_MEMORY_CLIENT_MGBEARD>,
<&mc TEGRA234_MEMORY_CLIENT_MGBEAWR>;
nvidia,vm-irq-config = <&mgbe_vm_irq_config>;
nvidia,num-dma-chans = <10>;
nvidia,dma-chans = <0 1 2 3 4 5 6 7 8 9>;
nvidia,num-mtl-queues = <10>;
nvidia,mtl-queues = <0 1 2 3 4 5 6 7 8 9>;
nvidia,tc-mapping = <0 1 2 3 4 5 6 7 0 1>;
/* Residual Queue can be any valid queue except RxQ0 */
nvidia,residual-queue = <1>;
nvidia,rxq_enable_ctrl = <2 2 2 2 2 2 2 2 2 2>;
nvidia,tx-queue-prio = <0 1 2 3 4 5 6 7 0 0>;
nvidia,rx-queue-prio = <0x1 0x2 0x4 0x8 0x10 0x20 0x40 0x80 0x0 0x0>;
nvidia,dcs-enable = <0x1>;
nvidia,macsec-enable = <0>;
nvidia,rx_riwt = <512>;
nvidia,rx_frames = <64>;
nvidia,tx_usecs = <256>;
nvidia,tx_frames = <16>;
nvidia,promisc_mode = <1>;
nvidia,slot_num_check = <0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0>;
nvidia,slot_intvl_vals = <0x0 0x7D 0x7D 0x7D 0x7D 0x7D 0x7D 0x7D 0x7D 0x7D>;
nvidia,ptp_ref_clock_speed = <312500000>;
nvidia,instance_id = <0>; /* MGBE0 instance */
nvidia,ptp-rx-queue = <3>;
nvidia,dma_rx_ring_sz = <4096>;
nvidia,dma_tx_ring_sz = <4096>;
dma-coherent;
};
host1x@13e00000 {
interrupt-parent = <&gic>;
ranges = <0x0 0x14800000 0x0 0x14800000 0x0 0x02000000>,
<0x0 0x24700000 0x0 0x24700000 0x0 0x00080000>;
};
spi@3270000 {
dma-names = "rx", "tx";
dma-coherent;
iommus = <&smmu_niso1 TEGRA234_SID_QSPI0>;
};
hardware-timestamp@3aa0000 {
status = "disabled";
};
sce-fabric@b600000 {
status = "disabled";
};
hardware-timestamp@c1e0000 {
status = "disabled";
};
dce-fabric@de00000 {
compatible = "nvidia,tegra234-dce-fabric";
};
i2c@3160000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@3180000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@3190000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@31b0000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@31c0000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@31e0000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@c240000 {
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
i2c@c250000 {
nvidia,hw-instance-id = <0x7>;
iommus = <&smmu_niso0 TEGRA234_SID_GPCDMA>;
dma-coherent;
};
pwm@3280000 {
compatible = "nvidia,tegra234-pwm",
"nvidia,tegra194-pwm";
};
phy@3e00000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L0_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID0>;
};
phy@3e10000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L1_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID1>;
};
phy@3e20000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L2_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID2>;
};
phy@3e30000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L3_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID3>;
};
phy@3e40000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L4_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID4>;
};
phy@3e50000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L5_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID5>;
};
phy@3e60000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L6_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID6>;
};
phy@3e70000 {
interrupts = <GIC_SPI TEGRA234_IRQ_HSIO_L7_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID7>;
};
phy@3e90000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L0_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID8>;
};
phy@3ea0000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L1_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID9>;
};
phy@3eb0000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L2_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID10>;
};
phy@3ec0000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L3_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID11>;
};
phy@3ed0000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L4_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID12>;
};
phy@3ee0000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L5_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID13>;
};
phy@3ef0000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L6_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID14>;
};
phy@3f00000 {
interrupts = <GIC_SPI TEGRA234_IRQ_NVHS_L7_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID15>;
};
phy@3f20000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L0_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID16>;
};
phy@3f30000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L1_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID17>;
};
phy@3f40000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L2_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID18>;
};
phy@3f50000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L3_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID19>;
};
phy@3f60000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L4_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID20>;
};
phy@3f70000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L5_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID21>;
};
phy@3f80000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L6_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID22>;
};
phy@3f90000 {
interrupts = <GIC_SPI TEGRA234_IRQ_GBE_L7_P2U IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "intr";
nvidia,bpmp = <&bpmp TEGRA234_P2U_LANE_ID23>;
};
mmc@3460000 {
mmc-ddr-1_8v;
mmc-hs200-1_8v;
mmc-hs400-1_8v;
mmc-hs400-enhanced-strobe;
cap-sd-highspeed;
cap-mmc-highspeed;
};
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
};
cpus {
idle-states {
entry-method = "psci";
C7: c7 {
compatible = "arm,idle-state";
arm,psci-suspend-param = <0x40000007>;
min-residency-us = <30000>;
wakeup-latency-us = <5000>;
idle-state-name = "Core powergate";
status = "disabled";
};
};
cpu@0 {
cpu-idle-states = <&C7>;
};
cpu@100 {
cpu-idle-states = <&C7>;
};
cpu@200 {
cpu-idle-states = <&C7>;
};
cpu@300 {
cpu-idle-states = <&C7>;
};
cpu@10000 {
cpu-idle-states = <&C7>;
};
cpu@10100 {
cpu-idle-states = <&C7>;
};
cpu@10200 {
cpu-idle-states = <&C7>;
};
cpu@10300 {
cpu-idle-states = <&C7>;
};
cpu@20000 {
cpu-idle-states = <&C7>;
};
cpu@20100 {
cpu-idle-states = <&C7>;
};
cpu@20200 {
cpu-idle-states = <&C7>;
};
cpu@20300 {
cpu-idle-states = <&C7>;
};
};
mgbe_vm_irq_config: mgbe-vm-irq-config {
nvidia,num-vm-irqs = <5>;
vm_irq1 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <0 1>;
nvidia,vm-num = <0>;
nvidia,vm-irq-id = <0>;
};
vm_irq2 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <2 3>;
nvidia,vm-num = <1>;
nvidia,vm-irq-id = <1>;
};
vm_irq3 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <4 5>;
nvidia,vm-num = <2>;
nvidia,vm-irq-id = <2>;
};
vm_irq4 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <6 7>;
nvidia,vm-num = <3>;
nvidia,vm-irq-id = <3>;
};
vm_irq5 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <8 9>;
nvidia,vm-num = <4>;
nvidia,vm-irq-id = <4>;
};
};
eqos_vm_irq_config: vm-irq-config {
nvidia,num-vm-irqs = <4>;
vm_irq1 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <0 1>;
nvidia,vm-num = <0>;
nvidia,vm-irq-id = <0>;
};
vm_irq2 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <2 3>;
nvidia,vm-num = <1>;
nvidia,vm-irq-id = <1>;
};
vm_irq3 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <4 5>;
nvidia,vm-num = <2>;
nvidia,vm-irq-id = <2>;
};
vm_irq4 {
nvidia,num-vm-channels = <2>;
nvidia,vm-channels = <6 7>;
nvidia,vm-num = <3>;
nvidia,vm-irq-id = <3>;
};
};
};

View File

@@ -1,8 +1,9 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-base-overlay.dtsi"
#include "tegra234-soc-overlay.dtsi"
#include "tegra234-soc-prod-overlay.dtsi"
#include "tegra234-soc-display-overlay.dtsi"
/ {

View File

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,270 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* tegra234-soc-camera.dtsi: Camera RTCPU DTSI file.
*/
#include <dt-bindings/mailbox/tegra186-hsp.h>
#include <dt-bindings/interrupt/tegra234-irq.h>
#include <dt-bindings/power/tegra234-powergate.h>
#include <dt-bindings/memory/tegra234-mc.h>
/ {
aliases { /* RCE is the Camera RTCPU */
tegra-camera-rtcpu = "/rtcpu@bc00000";
};
bus@0 {
host1x@13e00000 {
vi0: vi0@15c00000 {
compatible = "nvidia,tegra234-vi";
clocks = <&bpmp TEGRA234_CLK_VI>;
clock-names = "vi";
nvidia,vi-falcon-device = <&vi0_thi>;
resets = <&bpmp TEGRA234_RESET_VI>;
reset-names = "vi0";
iommus = <&smmu_iso TEGRA234_SID_ISO_VI>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_VIW &emc>;
interconnect-names = "write";
dma-noncoherent;
status = "okay";
};
vi0_thi: vi0-thi@15f00000 {
compatible = "nvidia,tegra234-vi-thi";
resets = <&bpmp TEGRA234_RESET_VI>;
reset-names = "vi0_thi";
iommus = <&smmu_iso TEGRA234_SID_ISO_VI>;
dma-noncoherent;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_VI2FALR &emc>,
<&mc TEGRA234_MEMORY_CLIENT_VI2FALW &emc>;
interconnect-names = "dma-mem", "write";
status = "okay";
};
vi1: vi1@14c00000 {
compatible = "nvidia,tegra234-vi";
clocks = <&bpmp TEGRA234_CLK_VI>;
clock-names = "vi";
nvidia,vi-falcon-device = <&vi1_thi>;
resets = <&bpmp TEGRA234_RESET_VI2>;
reset-names = "vi1";
iommus = <&smmu_iso TEGRA234_SID_ISO_VI2>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_VI2W &emc>;
interconnect-names = "write";
dma-noncoherent;
status = "okay";
};
vi1_thi: vi1-thi@14f00000 {
compatible = "nvidia,tegra234-vi-thi";
resets = <&bpmp TEGRA234_RESET_VI2>;
reset-names = "vi1_thi";
iommus = <&smmu_iso TEGRA234_SID_ISO_VI2>;
dma-noncoherent;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_VIFALR &emc>,
<&mc TEGRA234_MEMORY_CLIENT_VIFALW &emc>;
interconnect-names = "dma-mem", "write";
status = "okay";
};
isp: isp@14800000 {
compatible = "nvidia,tegra194-isp";
reg = <0x0 0x14800000 0x0 0x00010000>;
resets = <&bpmp TEGRA234_RESET_ISP>;
reset-names = "isp";
clocks = <&bpmp TEGRA234_CLK_ISP>;
clock-names = "isp";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_ISPA>;
nvidia,isp-falcon-device = <&isp_thi>;
iommus = <&smmu_niso1 TEGRA234_SID_ISP>;
dma-coherent;
status = "okay";
};
isp_thi: isp-thi@14b00000 {
compatible = "nvidia,tegra194-isp-thi";
resets = <&bpmp TEGRA234_RESET_ISP>;
iommus = <&smmu_niso1 TEGRA234_SID_ISP>;
dma-coherent;
status = "okay";
};
nvcsi: nvcsi@15a00000 {
compatible = "nvidia,tegra194-nvcsi";
resets = <&bpmp TEGRA234_RESET_NVCSI>;
reset-names = "nvcsi";
clocks = <&bpmp TEGRA234_CLK_NVCSI>;
clock-names = "nvcsi";
status = "okay";
};
};
};
tegra_rce: rtcpu@bc00000 {
compatible = "nvidia,tegra194-rce";
nvidia,cpu-name = "rce";
reg = <0 0xbc00000 0 0x1000>, /* RCE EVP (RCE_ATCM_EVP) */
<0 0xb9f0000 0 0x40000>, /* RCE PM */
<0 0xb840000 0 0x10000>,
<0 0xb850000 0 0x10000>;
reg-names = "rce-evp", "rce-pm",
"ast-cpu", "ast-dma";
clocks =
<&bpmp TEGRA234_CLK_RCE_CPU_NIC>,
<&bpmp TEGRA234_CLK_RCE_NIC>,
<&bpmp TEGRA234_CLK_RCE_CPU>;
clock-names = "rce-cpu-nic", "rce-nic", "rce-cpu";
nvidia,clock-rates =
<115200000 601600000>,
<115200000 601600000>,
<115200000 601600000>;
resets = <&bpmp TEGRA234_RESET_RCE_ALL>;
reset-names = "rce-all";
interrupts = <GIC_SPI TEGRA234_IRQ_RCE_WDT_REMOTE IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "wdt-remote";
iommus = <&smmu_niso0 TEGRA234_SID_RCE>;
memory-region = <&rce_resv>;
dma-coherent;
/* Memory bandwidth in kB/s during boot */
nvidia,test-bw = <2400000>;
nvidia,trace = <&rtcpu_trace 4 0x70100000 0x100000>;
nvidia,ivc-channels = <&camera_ivc_channels 2 0x90000000 0x10000>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_RCER &emc>,
<&mc TEGRA234_MEMORY_CLIENT_RCEW &emc>;
interconnect-names = "dma-mem", "write";
nvidia,autosuspend-delay-ms = <5000>;
status = "okay";
hsp-vm1 {
compatible = "nvidia,tegra-camrtc-hsp-vm";
mboxes =
<&hsp_rce TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_TX(0)>,
<&hsp_rce TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_RX(1)>,
<&hsp_rce TEGRA_HSP_MBOX_TYPE_SS 0>;
mbox-names = "vm-tx", "vm-rx", "vm-ss";
status = "okay";
};
hsp-vm2 {
compatible = "nvidia,tegra-camrtc-hsp-vm";
mboxes =
<&hsp_rce TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_TX(2)>,
<&hsp_rce TEGRA_HSP_MBOX_TYPE_SM TEGRA_HSP_SM_RX(3)>,
<&hsp_rce TEGRA_HSP_MBOX_TYPE_SS 1>;
mbox-names = "vm-tx", "vm-rx", "vm-ss";
status = "disabled";
};
};
camera_ivc_channels: camera-ivc-channels {
echo@0 {
compatible = "nvidia,tegra186-camera-ivc-protocol-echo";
nvidia,service = "echo";
nvidia,version = <0>;
nvidia,group = <1>;
nvidia,frame-count = <16>;
nvidia,frame-size = <64>;
};
dbg@1 {
/* This is raw channel exposed as device */
compatible = "nvidia,tegra186-camera-ivc-protocol-dbg";
nvidia,service = "debug";
nvidia,version = <0>;
nvidia,group = <1>;
nvidia,frame-count = <1>;
nvidia,frame-size = <512>;
};
dbg@2 {
/* This is exposed in debugfs */
compatible = "nvidia,tegra186-camera-ivc-protocol-debug";
nvidia,service = "debug";
nvidia,version = <0>;
nvidia,group = <1>;
nvidia,frame-count = <1>;
nvidia,frame-size = <8192>;
nvidia,ivc-timeout = <50>;
nvidia,test-timeout = <5000>;
nvidia,mem-map = <&tegra_rce &vi0 &isp &vi1>;
/* Memory bandwidth in kB/s during tests */
nvidia,test-bw = <2400000>;
};
ivccontrol@3 {
compatible = "nvidia,tegra186-camera-ivc-protocol-capture-control";
nvidia,service = "capture-control";
nvidia,version = <0>;
nvidia,group = <1>;
nvidia,frame-count = <64>;
nvidia,frame-size = <320>;
};
ivccapture@4 {
compatible = "nvidia,tegra186-camera-ivc-protocol-capture";
nvidia,service = "capture";
nvidia,version = <0>;
nvidia,group = <1>;
nvidia,frame-count = <512>;
nvidia,frame-size = <64>;
};
diag@5 {
compatible = "nvidia,tegra186-camera-diagnostics";
nvidia,service = "diag";
nvidia,version = <0>;
nvidia,group = <1>;
nvidia,frame-count = <1>;
nvidia,frame-size = <64>;
};
};
rtcpu_trace: tegra-rtcpu-trace {
nvidia,enable-printk;
nvidia,interval-ms = <50>;
nvidia,log-prefix = "[RCE]";
};
capture_vi: tegra-capture-vi {
compatible = "nvidia,tegra-camrtc-capture-vi";
nvidia,vi-devices = <&vi0 &vi1>;
nvidia,vi-mapping-size = <6>;
nvidia,vi-mapping =
<0 0>,
<1 0>,
<2 1>,
<3 1>,
<4 0>,
<5 1>;
nvidia,vi-mapping-names = "csi-stream-id", "vi-unit-id";
nvidia,vi-max-channels = <72>;
};
reserved-memory {
rce_resv: rce-reservation {
iommu-addresses = <&tegra_rce 0x0 0x00000000 0x00000000 0xA0000000>,
<&tegra_rce 0x0 0xC0000000 0xffffffff 0x3fffffff>;
};
camdbg_reserved: camdbg_carveout {
compatible = "nvidia,camdbg_carveout";
size = <0 0x3200000>;
alignment = <0 0x100000>;
alloc-ranges = <0x1 0 0x1 0>;
status = "disabled";
};
};
};

View File

@@ -0,0 +1,196 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/power/tegra234-powergate.h>
/ {
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
fb0_reserved: framebuffer@0,0 {
compatible = "framebuffer";
reg = <0x00 0x00 0x00 0x00>;
iommu-addresses = <&display 0x0 0x0 0x0 0x0>;
no-map;
status = "disabled";
};
};
dce@d800000 {
compatible = "nvidia,tegra234-dce";
reg = <0x0 0x0d800000 0x0 0x00800000>;
interrupts =
<0 376 0x4>,
<0 377 0x4>;
interrupt-names = "wdt-remote",
"dce-sm0";
iommus = <&smmu_niso0 TEGRA234_SID_DCE>;
status = "disabled";
};
display: display@13800000 {
compatible = "nvidia,tegra234-display";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_DISP>;
nvidia,num-dpaux-instance = <1>;
reg-names = "nvdisplay", "dpaux0", "hdacodec", "mipical";
reg = <0x0 0x13800000 0x0 0xEFFFF /* nvdisplay */
0x0 0x155C0000 0x0 0xFFFF /* dpaux0 */
0x0 0x0242c000 0x0 0x1000 /* hdacodec */
0x0 0x03990000 0x0 0x10000>; /* mipical */
interrupt-names = "nvdisplay", "dpaux0", "hdacodec";
interrupts = <0 416 4
0 419 4
0 61 4>;
nvidia,bpmp = <&bpmp>;
clocks = <&bpmp TEGRA234_CLK_HUB>,
<&bpmp TEGRA234_CLK_DISP>,
<&bpmp TEGRA234_CLK_NVDISPLAY_P0>,
<&bpmp TEGRA234_CLK_NVDISPLAY_P1>,
<&bpmp TEGRA234_CLK_DPAUX>,
<&bpmp TEGRA234_CLK_FUSE>,
<&bpmp TEGRA234_CLK_DSIPLL_VCO>,
<&bpmp TEGRA234_CLK_DSIPLL_CLKOUTPN>,
<&bpmp TEGRA234_CLK_DSIPLL_CLKOUTA>,
<&bpmp TEGRA234_CLK_SPPLL0_VCO>,
<&bpmp TEGRA234_CLK_SPPLL0_CLKOUTPN>,
<&bpmp TEGRA234_CLK_SPPLL0_CLKOUTA>,
<&bpmp TEGRA234_CLK_SPPLL0_CLKOUTB>,
<&bpmp TEGRA234_CLK_SPPLL0_DIV10>,
<&bpmp TEGRA234_CLK_SPPLL0_DIV25>,
<&bpmp TEGRA234_CLK_SPPLL0_DIV27PN>,
<&bpmp TEGRA234_CLK_SPPLL1_VCO>,
<&bpmp TEGRA234_CLK_SPPLL1_CLKOUTPN>,
<&bpmp TEGRA234_CLK_SPPLL1_DIV27PN>,
<&bpmp TEGRA234_CLK_VPLL0_REF>,
<&bpmp TEGRA234_CLK_VPLL0>,
<&bpmp TEGRA234_CLK_VPLL1>,
<&bpmp TEGRA234_CLK_NVDISPLAY_P0_REF>,
<&bpmp TEGRA234_CLK_RG0>,
<&bpmp TEGRA234_CLK_RG1>,
<&bpmp TEGRA234_CLK_DISPPLL>,
<&bpmp TEGRA234_CLK_DISPHUBPLL>,
<&bpmp TEGRA234_CLK_DSI_LP>,
<&bpmp TEGRA234_CLK_DSI_CORE>,
<&bpmp TEGRA234_CLK_DSI_PIXEL>,
<&bpmp TEGRA234_CLK_PRE_SOR0>,
<&bpmp TEGRA234_CLK_PRE_SOR1>,
<&bpmp TEGRA234_CLK_DP_LINK_REF>,
<&bpmp TEGRA234_CLK_SOR_LINKA_INPUT>,
<&bpmp TEGRA234_CLK_SOR_LINKA_AFIFO>,
<&bpmp TEGRA234_CLK_SOR_LINKA_AFIFO_M>,
<&bpmp TEGRA234_CLK_RG0_M>,
<&bpmp TEGRA234_CLK_RG1_M>,
<&bpmp TEGRA234_CLK_SOR0_M>,
<&bpmp TEGRA234_CLK_SOR1_M>,
<&bpmp TEGRA234_CLK_PLLHUB>,
<&bpmp TEGRA234_CLK_SOR0>,
<&bpmp TEGRA234_CLK_SOR1>,
<&bpmp TEGRA234_CLK_SOR_PAD_INPUT>,
<&bpmp TEGRA234_CLK_PRE_SF0>,
<&bpmp TEGRA234_CLK_SF0>,
<&bpmp TEGRA234_CLK_SF1>,
<&bpmp TEGRA234_CLK_DSI_PAD_INPUT>,
<&bpmp TEGRA234_CLK_PRE_SOR0_REF>,
<&bpmp TEGRA234_CLK_PRE_SOR1_REF>,
<&bpmp TEGRA234_CLK_SOR0_PLL_REF>,
<&bpmp TEGRA234_CLK_SOR1_PLL_REF>,
<&bpmp TEGRA234_CLK_SOR0_REF>,
<&bpmp TEGRA234_CLK_SOR1_REF>,
<&bpmp TEGRA234_CLK_OSC>,
<&bpmp TEGRA234_CLK_DSC>,
<&bpmp TEGRA234_CLK_MAUD>,
<&bpmp TEGRA234_CLK_AZA_2XBIT>,
<&bpmp TEGRA234_CLK_AZA_BIT>,
<&bpmp TEGRA234_CLK_MIPI_CAL>,
<&bpmp TEGRA234_CLK_UART_FST_MIPI_CAL>,
<&bpmp TEGRA234_CLK_SOR0_DIV>;
clock-names = "nvdisplayhub_clk",
"nvdisplay_disp_clk",
"nvdisplay_p0_clk",
"nvdisplay_p1_clk",
"dpaux0_clk",
"fuse_clk",
"dsipll_vco_clk",
"dsipll_clkoutpn_clk",
"dsipll_clkouta_clk",
"sppll0_vco_clk",
"sppll0_clkoutpn_clk",
"sppll0_clkouta_clk",
"sppll0_clkoutb_clk",
"sppll0_div10_clk",
"sppll0_div25_clk",
"sppll0_div27_clk",
"sppll1_vco_clk",
"sppll1_clkoutpn_clk",
"sppll1_div27_clk",
"vpll0_ref_clk",
"vpll0_clk",
"vpll1_clk",
"nvdisplay_p0_ref_clk",
"rg0_clk",
"rg1_clk",
"disppll_clk",
"disphubpll_clk",
"dsi_lp_clk",
"dsi_core_clk",
"dsi_pixel_clk",
"pre_sor0_clk",
"pre_sor1_clk",
"dp_link_ref_clk",
"sor_linka_input_clk",
"sor_linka_afifo_clk",
"sor_linka_afifo_m_clk",
"rg0_m_clk",
"rg1_m_clk",
"sor0_m_clk",
"sor1_m_clk",
"pllhub_clk",
"sor0_clk",
"sor1_clk",
"sor_pad_input_clk",
"pre_sf0_clk",
"sf0_clk",
"sf1_clk",
"dsi_pad_input_clk",
"pre_sor0_ref_clk",
"pre_sor1_ref_clk",
"sor0_ref_pll_clk",
"sor1_ref_pll_clk",
"sor0_ref_clk",
"sor1_ref_clk",
"osc_clk",
"dsc_clk",
"maud_clk",
"aza_2xbit_clk",
"aza_bit_clk",
"mipi_cal_clk",
"uart_fst_mipi_cal_clk",
"sor0_div_clk";
resets = <&bpmp TEGRA234_RESET_NVDISPLAY>,
<&bpmp TEGRA234_RESET_DPAUX>,
<&bpmp TEGRA234_RESET_DSI_CORE>,
<&bpmp TEGRA234_RESET_MIPI_CAL>;
reset-names = "nvdisplay_reset",
"dpaux0_reset",
"dsi_core_reset",
"mipi_cal_reset";
hdcp_enabled;
status = "disabled";
memory-region = <&fb0_reserved>;
nvidia,disp-sw-soc-chip-id = <0x2350>;
#if TEGRA_IOMMU_DT_VERSION >= DT_VERSION_2
interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVDISPLAYR &emc>,
<&mc TEGRA234_MEMORY_CLIENT_NVDISPLAYR1 &emc>;
interconnect-names = "dma-mem", "read-1";
#endif
iommus = <&smmu_iso TEGRA234_SID_ISO_NVDISPLAY>;
non-coherent;
nvdisplay-niso {
compatible = "nvidia,tegra234-display-niso";
iommus = <&smmu_niso0 TEGRA234_SID_NVDISPLAY>;
dma-coherent;
};
};
};

View File

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,554 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
bus@0 {
i2c@3160000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@3180000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@3190000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@31b0000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@31c0000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@31e0000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@c240000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
i2c@c250000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x0000009c 0x0000ffff 0x00000308 //i2c_i2c_hs_interface_timing_0_0
0 0x000000d4 0x000000ff 0x00000000 //i2c_i2c_interface_timing_2_0
0 0x000000d8 0x000000ff 0x00000000 //i2c_i2c_hs_interface_timing_2_0
0 0x000000dc 0x0000ffff 0x00000001 //i2c_i2c_mstr_data_capture_timing_0
0 0x000000e0 0x0000ffff 0x00000002>; //i2c_i2c_slv_data_capture_timing_0
};
prod_c_fm {
prod = <
0 0x0000006c 0xffff0000 0x003c0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_fmplus {
prod = <
0 0x0000006c 0xffff0000 0x00160000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202>; //i2c_i2c_interface_timing_1_0
};
prod_c_hs {
prod = <
0 0x0000006c 0xffffffff 0x00160002 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000202 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x02020202 //i2c_i2c_interface_timing_1_0
0 0x000000a0 0x00ffffff 0x00090909>; //i2c_i2c_hs_interface_timing_1_0
};
prod_c_sm {
prod = <
0 0x0000006c 0xffff0000 0x004f0000 //i2c_i2c_clk_divisor_register_0
0 0x00000094 0x0000ffff 0x00000708 //i2c_i2c_interface_timing_0_0
0 0x00000098 0xffffffff 0x08080808>; //i2c_i2c_interface_timing_1_0
};
};
};
mmc@3400000 {
prod-settings {
#prod-cells = <4>;
prod_c_1_8v {
prod = <
0 0x000001e0 0x01f00000 0x00800000>; //SDMMCA_SDMEMCOMPPADCTRL_0
};
prod_c_3_3v {
prod = <
0 0x000001e0 0x01f00000 0x00900000>; //SDMMCA_SDMEMCOMPPADCTRL_0
};
prod {
prod = <
0 0x00000028 0x00000022 0x00000002 //SDMMCA_POWER_CONTROL_HOST_0
0 0x00000100 0x1fff006a 0x0e080020 //SDMMCA_VENDOR_CLOCK_CNTRL_0
0 0x00000128 0x42000000 0x00000000 //SDMMCA_VENDOR_MISC_CNTRL2_0
0 0x000001c0 0x00001fc0 0x00000040 //SDMMCA_VENDOR_TUNING_CNTRL0_0
0 0x000001e0 0x0001f000 0x00009000 //SDMMCA_SDMEMCOMPPADCTRL_0
0 0x000001e4 0x20000000 0x20000000>; //SDMMCA_AUTO_CAL_CONFIG_0
};
prod_c_ddr50 {
prod = <
0 0x0000003c 0x00070000 0x00040000>; //SDMMCA_AUTO_CMD12_ERR_STATUS_0
};
prod_c_ddr52 {
prod = <
0 0x0000003c 0x00070000 0x00040000>; //SDMMCA_AUTO_CMD12_ERR_STATUS_0
};
prod_c_hs200 {
prod = <
0 0x0000003c 0x00070000 0x00030000 //SDMMCA_AUTO_CMD12_ERR_STATUS_0
0 0x000001c0 0x0000e000 0x00004000>; //SDMMCA_VENDOR_TUNING_CNTRL0_0
};
prod_c_nopwrsave {
prod = <
0 0x00000100 0x00000001 0x00000001 //SDMMCA_VENDOR_CLOCK_CNTRL_0
0 0x000001ac 0x00000004 0x00000000>; //SDMMCA_VENDOR_IO_TRIM_CNTRL_0
};
prod_c_pwrsave {
prod = <
0 0x00000100 0x00000001 0x00000000 //SDMMCA_VENDOR_CLOCK_CNTRL_0
0 0x000001ac 0x00000004 0x00000004>; //SDMMCA_VENDOR_IO_TRIM_CNTRL_0
};
prod_c_sdr104 {
prod = <
0 0x0000003c 0x00070000 0x00030000 //SDMMCA_AUTO_CMD12_ERR_STATUS_0
0 0x000001c0 0x0000e000 0x00004000>; //SDMMCA_VENDOR_TUNING_CNTRL0_0
};
prod_c_sdr12 {
prod = <
0 0x0000003c 0x00070000 0x00000000>; //SDMMCA_AUTO_CMD12_ERR_STATUS_0
};
prod_c_sdr25 {
prod = <
0 0x0000003c 0x00070000 0x00010000>; //SDMMCA_AUTO_CMD12_ERR_STATUS_0
};
prod_c_sdr50 {
prod = <
0 0x0000003c 0x00070000 0x00020000 //SDMMCA_AUTO_CMD12_ERR_STATUS_0
0 0x000001c0 0x0000e000 0x00008000>; //SDMMCA_VENDOR_TUNING_CNTRL0_0
};
};
};
mmc@3460000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000004 0x00000fff 0x00000200 //sdmmcab_block_size_block_count_0
0 0x00000028 0x00000020 0x00000020 //sdmmcab_power_control_host_0
0 0x00000100 0x1f00006a 0x12000020 //sdmmcab_vendor_clock_cntrl_0
0 0x00000128 0x43000000 0x00000000 //sdmmcab_vendor_misc_cntrl2_0
0 0x000001c0 0x00001fc0 0x00000040 //sdmmcab_vendor_tuning_cntrl0_0
0 0x000001e0 0x01f1f000 0x00a0a000 //sdmmcab_sdmemcomppadctrl_0
0 0x000001e4 0x20000000 0x20000000>; //sdmmcab_auto_cal_config_0
};
prod_c_ddr50 {
prod = <
0 0x0000003c 0x00070000 0x00040000 //sdmmcab_auto_cmd12_err_status_0
0 0x00000100 0x1fff0000 0x12070000>; //sdmmcab_vendor_clock_cntrl_0
};
prod_c_ddr52 {
prod = <
0 0x0000003c 0x00070000 0x00040000 //sdmmcab_auto_cmd12_err_status_0
0 0x00000100 0x1fff0000 0x12070000>; //sdmmcab_vendor_clock_cntrl_0
};
prod_c_hs200 {
prod = <
0 0x0000003c 0x00070000 0x00030000 //sdmmcab_auto_cmd12_err_status_0
0 0x000001c0 0x0000e000 0x00004000>; //sdmmcab_vendor_tuning_cntrl0_0
};
prod_c_hs400 {
prod = <
0 0x0000003c 0x00070000 0x00050000 //sdmmcab_auto_cmd12_err_status_0
0 0x00000100 0x00000008 0x00000008 //sdmmcab_vendor_clock_cntrl_0
0 0x0000010c 0x00003f00 0x00002800 //sdmmcab_vendor_cap_overrides_0
0 0x000001c0 0x0000e000 0x00004000>; //sdmmcab_vendor_tuning_cntrl0_0
};
prod_c_nopwrsave {
prod = <
0 0x00000100 0x00000001 0x00000001 //sdmmcab_vendor_clock_cntrl_0
0 0x000001ac 0x00000004 0x00000000>; //sdmmcab_vendor_io_trim_cntrl_0
};
prod_c_pwrsave {
prod = <
0 0x00000100 0x00000001 0x00000000 //sdmmcab_vendor_clock_cntrl_0
0 0x000001ac 0x00000004 0x00000004>; //sdmmcab_vendor_io_trim_cntrl_0
};
prod_c_sdr12 {
prod = <
0 0x00000100 0x1fff0000 0x12070000>; //sdmmcab_vendor_clock_cntrl_0
};
prod_c_sdr25 {
prod = <
0 0x00000100 0x1fff0000 0x12070000>; //sdmmcab_vendor_clock_cntrl_0
};
prod_c_sdr50 {
prod = <
0 0x0000003c 0x00070000 0x00020000>; //sdmmcab_auto_cmd12_err_status_0
};
};
};
spi@3210000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000194 0x80000000 0x00000000>; //spi_misc_0
};
};
};
spi@3230000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000194 0x80000000 0x00000000>; //spi_misc_0
};
};
};
spi@3240000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000194 0x80000000 0x00000000>; //spi_misc_0
};
};
};
spi@3250000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000194 0x80000000 0x00000000>; //spi_misc_0
};
};
};
spi@3270000 {
prod-settings {
#prod-cells = <4>;
prod_c_nonsecure {
prod = <
0 0x0000f000 0x0000003f 0x00000012>; //qspi_secure_axi_ctl_0
};
prod_c_nopwrsave {
prod = <
0 0x00000194 0x80000000 0x80000000 //qspi_misc_0
0 0x000001ec 0x00000002 0x00000000 //qspi_qspi_comp_control_0
0 0x000001fc 0x00000002 0x00000000>; //qspi_io_trim_cntrl_0
};
prod_c_pwrsave {
prod = <
0 0x00000194 0x80000000 0x00000000 //qspi_misc_0
0 0x000001ec 0x00000002 0x00000002 //qspi_qspi_comp_control_0
0 0x000001fc 0x00000002 0x00000002>; //qspi_io_trim_cntrl_0
};
prod_c_secure {
prod = <
0 0x0000f000 0x0000003f 0x00000000>; //qspi_secure_axi_ctl_0
};
};
};
spi@3300000 {
prod-settings {
#prod-cells = <4>;
prod_c_nonsecure {
prod = <
0 0x0000f000 0x0000003f 0x00000012>; //qspi_secure_axi_ctl_0
};
prod_c_nopwrsave {
prod = <
0 0x00000194 0x80000000 0x80000000 //qspi_misc_0
0 0x000001ec 0x00000002 0x00000000 //qspi_qspi_comp_control_0
0 0x000001fc 0x00000002 0x00000000>; //qspi_io_trim_cntrl_0
};
prod_c_pwrsave {
prod = <
0 0x00000194 0x80000000 0x00000000 //qspi_misc_0
0 0x000001ec 0x00000002 0x00000002 //qspi_qspi_comp_control_0
0 0x000001fc 0x00000002 0x00000002>; //qspi_io_trim_cntrl_0
};
prod_c_secure {
prod = <
0 0x0000f000 0x0000003f 0x00000000>; //qspi_secure_axi_ctl_0
};
};
};
spi@c260000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000194 0x80000000 0x00000000>; //spi_misc_0
};
};
};
xusb_padctl@3520000 {
prod-settings {
#prod-cells = <4>;
prod {
prod = <
0 0x00000284 0x00000038 0x00000038 //XUSB_PADCTL_USB2_BIAS_PAD_CTL_0_0
0 0x00000288 0x03fff000 0x0051e000>; //XUSB_PADCTL_USB2_BIAS_PAD_CTL_1_0
};
};
};
};
};

View File

@@ -0,0 +1,144 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/mailbox/tegra186-hsp.h>
#include <dt-bindings/memory/tegra234-mc.h>
/ {
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
fsicom_resv: reservation-fsicom {
iommu-addresses = <&fsicom_client 0x0 0x0 0x0 0xf0000000>,
<&fsicom_client 0x0 0xf1000000 0xffffffff 0x0effffff>;
};
fsicom_resv_inst1: reservation-fsicom_inst1 {
iommu-addresses = <&fsicom_client_inst1 0x0 0x0 0x0 0xf0000000>,
<&fsicom_client_inst1 0x0 0xf1000000 0xffffffff 0x0effffff>;
};
};
fsicom_client: fsicom_client {
compatible = "nvidia,tegra234-fsicom-client";
#if TEGRA_HSP_DT_VERSION >= DT_VERSION_2
mboxes =
<&hsp_top2 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_TX(2)>,
<&hsp_top2 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_RX(1)>,
<&hsp_top2 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_TX(5)>,
<&hsp_top2 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_RX(4)>;
#else
mboxes =
<&hsp_top2 TEGRA_HSP_MBOX_TYPE_SM_128BIT TEGRA_HSP_SM_TX(2)>,
<&hsp_top2 TEGRA_HSP_MBOX_TYPE_SM_128BIT TEGRA_HSP_SM_RX(1)>,
<&hsp_top2 TEGRA_HSP_MBOX_TYPE_SM_128BIT TEGRA_HSP_SM_TX(5)>,
<&hsp_top2 TEGRA_HSP_MBOX_TYPE_SM_128BIT TEGRA_HSP_SM_RX(4)>;
#endif
mbox-names = "fsi-tx-cpu0", "fsi-rx-cpu0", "fsi-tx-cpu1", "fsi-rx-cpu1";
iommus = <&smmu_niso1 TEGRA234_SID_NISO1_FSI_CPU0>;
memory-region = <&fsicom_resv>;
dma-coherent;
#if defined(ENABLE_FSI) && !defined(ENABLE_MODS_CONFIG)
enable-deinit-notify;
#endif
smmu_inst = <0>;
max_fsi_core=<1>; /*Value 1 <-> core 0, value 2 <-> core0,1*/
status = "disabled";
};
fsicom_client_inst1: fsicom_client_inst1 {
compatible = "nvidia,tegra234-fsicom-client";
iommus = <&smmu_niso1 TEGRA234_SID_NISO1_FSI_CPU1>;
memory-region = <&fsicom_resv_inst1>;
dma-coherent;
smmu_inst = <1>;
status = "okay";
};
safetyservices_epl_client@110000 {
compatible = "nvidia,tegra234-epl-client";
#if TEGRA_HSP_DT_VERSION >= DT_VERSION_2
mboxes =
<&hsp_top2 (TEGRA_HSP_MBOX_TYPE_SM | TEGRA_HSP_MBOX_TYPE_SM_128BIT) TEGRA_HSP_SM_TX(0)>;
#else
mboxes =
<&hsp_top2 TEGRA_HSP_MBOX_TYPE_SM_128BIT TEGRA_HSP_SM_TX(0)>;
#endif
mbox-names = "epl-tx";
reg = <0x0 0x00110000 0x0 0x4>,
<0x0 0x00110004 0x0 0x4>,
<0x0 0x00120000 0x0 0x4>,
<0x0 0x00120004 0x0 0x4>,
<0x0 0x00130000 0x0 0x4>,
<0x0 0x00130004 0x0 0x4>,
<0x0 0x00140000 0x0 0x4>,
<0x0 0x00140004 0x0 0x4>,
<0x0 0x00150000 0x0 0x4>,
<0x0 0x00150004 0x0 0x4>,
<0x0 0x024e0038 0x0 0x4>;
/* Device driver's name for reporting errors via MISCREG_MISC_EC_ERR0_SW_ERR_CODE_0 */
client-misc-sw-generic-err0 = "fsicom_client";
/* Device driver's name for reporting errors via MISCREG_MISC_EC_ERR1_SW_ERR_CODE_0 */
client-misc-sw-generic-err1 = "gk20b";
/* Device driver's name for reporting errors via MISCREG_MISC_EC_ERR3_SW_ERR_CODE_0 */
client-misc-sw-generic-err3 = "gk20d";
/* Device driver's name for reporting errors via MISCREG_MISC_EC_ERR4_SW_ERR_CODE_0 */
client-misc-sw-generic-err4 = "gk20e";
#if defined(ENABLE_FSI) && !defined(ENABLE_MODS_CONFIG)
enable-deinit-notify;
#endif
status = "disabled";
};
FsiComIvc {
compatible = "nvidia,tegra-fsicom-channels";
status = "disabled";
nChannel=<7>;
channel_0{
frame-count = <4>;
frame-size = <1024>;
core-id = <0>;
NvSciCh = "nvfsicom_EPD";
};
channel_1{
frame-count = <30>;
frame-size = <64>;
core-id = <0>;
NvSciCh = "nvfsicom_CcplexApp";
};
channel_2{
frame-count = <4>;
frame-size = <64>;
core-id = <0>;
NvSciCh = "nvfsicom_CcplexApp_state_change";
};
channel_3{
frame-count = <4>;
frame-size = <64>;
core-id = <0>;
NvSciCh = "nvfsicom_app1";
};
channel_4{
frame-count = <2>;
frame-size = <64>;
core-id = <1>;
NvSciCh = "nvfsicom_app2";
};
channel_5{
frame-count = <4>;
frame-size = <64>;
core-id = <0>;
NvSciCh = "nvfsicom_appGR";
};
channel_6{
frame-count = <4>;
frame-size = <10240>;
core-id = <0>;
};
};
FsiComClientChConfigEpd {
compatible = "nvidia,tegra-fsicom-EPD";
status = "disabled";
channelid_list = <0>;
};
};

View File

@@ -0,0 +1,98 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#define TEGRA234_THERMAL_SHUTDOWN_TEMP 104500
/ {
thermal-zones {
cpu-thermal {
trips {
cpu_sw_shutdown: cpu-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
gpu-thermal {
trips {
gpu_sw_shutdown: gpu-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
cv0-thermal {
trips {
cv0_sw_shutdown: cv0-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
cv1-thermal {
trips {
cv1_sw_shutdown: cv1-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
cv2-thermal {
trips {
cv2_sw_shutdown: cv2-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
soc0-thermal {
trips {
soc0_sw_shutdown: soc0-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
soc1-thermal {
trips {
soc1_sw_shutdown: soc1-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
soc2-thermal {
trips {
soc2_sw_shutdown: soc2-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
tj-thermal {
trips {
tj_sw_shutdown: tj-sw-shutdown {
temperature = <TEGRA234_THERMAL_SHUTDOWN_TEMP>;
hysteresis = <0>;
type = "critical";
};
};
};
};
};

View File

@@ -0,0 +1,222 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/thermal/thermal.h>
#define TEGRA234_THERMAL_SLOWDOWN_TEMP 99000
/ {
bus@0 {
gpu@17000000 {
#cooling-cells = <2>;
};
};
cpus{
cpu@0 {
#cooling-cells = <2>;
};
cpu@10000 {
#cooling-cells = <2>;
};
cpu@20000 {
#cooling-cells = <2>;
};
};
thermal-zones {
cpu-thermal {
trips {
cpu_sw_slowdown: cpu-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cpu_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cpu_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
gpu-thermal {
trips {
gpu_sw_slowdown: gpu-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&gpu_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&gpu_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cv0-thermal {
trips {
cv0_sw_slowdown: cv0-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cv0_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cv0_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cv1-thermal {
trips {
cv1_sw_slowdown: cv1-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cv1_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cv1_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cv2-thermal {
trips {
cv2_sw_slowdown: cv2-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cv2_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cv2_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
soc0-thermal {
trips {
soc0_sw_slowdown: soc0-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&soc0_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&soc0_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
soc1-thermal {
trips {
soc1_sw_slowdown: soc1-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&soc1_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&soc1_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
soc2-thermal {
trips {
soc2_sw_slowdown: soc2-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&soc2_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&soc2_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
};
};

View File

@@ -0,0 +1,258 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/thermal/thermal.h>
#define TEGRA234_THERMAL_SLOWDOWN_TEMP 99000
/ {
bus@0 {
gpu@17000000 {
#cooling-cells = <2>;
};
};
cpus{
cpu@0 {
#cooling-cells = <2>;
};
cpu@200 {
#cooling-cells = <2>;
};
cpu@10000 {
#cooling-cells = <2>;
};
cpu@10200 {
#cooling-cells = <2>;
};
cpu@20000 {
#cooling-cells = <2>;
};
cpu@20200 {
#cooling-cells = <2>;
};
};
thermal-zones {
cpu-thermal {
trips {
cpu_sw_slowdown: cpu-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cpu_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cpu_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
gpu-thermal {
trips {
gpu_sw_slowdown: gpu-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&gpu_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&gpu_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cv0-thermal {
trips {
cv0_sw_slowdown: cv0-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cv0_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cv0_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cv1-thermal {
trips {
cv1_sw_slowdown: cv1-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cv1_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cv1_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
cv2-thermal {
trips {
cv2_sw_slowdown: cv2-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&cv2_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&cv2_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
soc0-thermal {
trips {
soc0_sw_slowdown: soc0-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&soc0_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&soc0_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
soc1-thermal {
trips {
soc1_sw_slowdown: soc1-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&soc1_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&soc1_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
soc2-thermal {
trips {
soc2_sw_slowdown: soc2-sw-slowdown {
temperature = <TEGRA234_THERMAL_SLOWDOWN_TEMP>;
hysteresis = <0>;
type = "passive";
};
};
cooling-maps {
map-cpufreq {
trip = <&soc2_sw_slowdown>;
cooling-device = <&cpu0_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu0_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map-devfreq {
trip = <&soc2_sw_slowdown>;
cooling-device = <&ga10b THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
};
};

View File

@@ -0,0 +1,239 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#define TEGRA234_THERMAL_HOT_SURFACE_TEMP 70000
#define TEGRA234_THERMAL_HOT_SURFACE_HYST 8000
/ {
cpu_throttle_alert: cpu-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "cpu-throttle-alert";
#cooling-cells = <2>;
};
gpu_throttle_alert: gpu-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "gpu-throttle-alert";
#cooling-cells = <2>;
};
cv0_throttle_alert: cv0-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "cv0-throttle-alert";
#cooling-cells = <2>;
};
cv1_throttle_alert: cv1-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "cv1-throttle-alert";
#cooling-cells = <2>;
};
cv2_throttle_alert: cv2-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "cv2-throttle-alert";
#cooling-cells = <2>;
};
soc0_throttle_alert: soc0-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "soc0-throttle-alert";
#cooling-cells = <2>;
};
soc1_throttle_alert: soc1-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "soc1-throttle-alert";
#cooling-cells = <2>;
};
soc2_throttle_alert: soc2-throttle-alert {
compatible = "thermal-trip-event";
cdev-type = "soc2-throttle-alert";
#cooling-cells = <2>;
};
hot_surface_alert: hot-surface-alert {
compatible = "thermal-trip-event";
cdev-type = "hot-surface-alert";
#cooling-cells = <2>;
};
thermal-zones {
cpu-thermal {
trips {
cpu_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&cpu_sw_slowdown>;
cooling-device = <&cpu_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&cpu_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
gpu-thermal {
trips {
gpu_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&gpu_sw_slowdown>;
cooling-device = <&gpu_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&gpu_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
cv0-thermal {
trips {
cv0_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&cv0_sw_slowdown>;
cooling-device = <&cv0_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&cv0_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
cv1-thermal {
trips {
cv1_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&cv1_sw_slowdown>;
cooling-device = <&cv1_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&cv1_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
cv2-thermal {
trips {
cv2_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&cv2_sw_slowdown>;
cooling-device = <&cv2_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&cv2_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
soc0-thermal {
trips {
soc0_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&soc0_sw_slowdown>;
cooling-device = <&soc0_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&soc0_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
soc1-thermal {
trips {
soc1_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&soc1_sw_slowdown>;
cooling-device = <&soc1_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&soc1_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
soc2-thermal {
trips {
soc2_trip_hot_surface: hot-surface {
temperature = <TEGRA234_THERMAL_HOT_SURFACE_TEMP>;
hysteresis = <TEGRA234_THERMAL_HOT_SURFACE_HYST>;
type = "passive";
};
};
cooling-maps {
map-throttle-alert {
trip = <&soc2_sw_slowdown>;
cooling-device = <&soc2_throttle_alert 1 1>;
};
map-hot-surface-alert {
trip = <&soc2_trip_hot_surface>;
cooling-device = <&hot_surface_alert 1 1>;
};
};
};
};
};

View File

@@ -0,0 +1,71 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#define TEGRA234_THERMAL_POLLING_DELAY 1000
/ {
thermal-zones {
cpu-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
gpu-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
cv0-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
cv1-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
cv2-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
soc0-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
soc1-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
soc2-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
tj-thermal {
status = "okay";
polling-delay = <TEGRA234_THERMAL_POLLING_DELAY>;
polling-delay-passive = <TEGRA234_THERMAL_POLLING_DELAY>;
};
};
};

View File

@@ -0,0 +1,178 @@
/*
* SPDX-License-Identifier: BSD-2-Clause
*
* SPDX-FileCopyrightText: Copyright (c) 2021-2024, NVIDIA CORPORATION. All rights reserved.
*/
/dts-v1/;
/ {
#address-cells = <2>;
#size-cells = <2>;
/* MB2 fills the non-secure memory chucks here in order to
* enable the dynamic shared memory in OP-TEE.
* Example:
* nsec-memory@<xxx> {
* device_type = "memory";
* reg = <xxx xxx xxx xxx>;
* };
*/
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
/* MB2 will fill the DICE identities in the DICE node. */
dice {
compatible = "nvidia,dice-identity";
status = "disabled";
secure-status = "disabled";
#address-cells = <2>;
#size-cells = <2>;
eca-csr@0 {
compatible = "nvidia,dice-eca-csr";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
device-id-cert@0 {
compatible = "nvidia,dice-device-id-cert";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
device-id-key-pub@0 {
compatible = "nvidia,dice-device-id-key-pub";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
alias-key-cert@0 {
compatible = "nvidia,dice-alias-key-cert";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
alias-key-pub@0 {
compatible = "nvidia,dice-alias-key-pub";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
alias-key-priv@0 {
compatible = "nvidia,dice-alias-key-priv";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
};
/*
* The fTPM node is created to pass fTPM information from MB2 to OP-TEE.
* The reg attribute indicates the address and the size of the component,
* which will be filled by MB2 at runtime. All addresses are inside TZDRAM.
* The status of the nodes below will always be set to disabled and the
* secure-status will be set to okay by MB2 at runtime.
*/
ftpm {
compatible = "nvidia,ftpm-contents";
status = "disabled";
secure-status = "disabled";
#address-cells = <2>;
#size-cells = <2>;
/* This is the ftpm seed. */
ftpm-seed@0 {
compatible = "nvidia,ftpm-seed";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
/*
* This is the Firmware ID private key.
* OP-TEE needs it to sign the EK CSR.
*/
firmware-id-privkey@0 {
compatible = "nvidia,ftpm-firmware-id-privkey";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
/* This is the Firmware ID certificate. */
firmware-id-certificate@0 {
compatible = "nvidia,ftpm-firmware-id-certificate";
reg = <0 0 0 0>;
status = "disabled";
secure-status = "disabled";
};
};
/* MB2 will fill the address and size of EKB blob. */
ekb-blob@0 {
compatible = "jetson-ekb-blob";
reg = <0 0 0 0>;
};
/* MB2 will fill the address and size. */
tpm-event-log@0 {
compatible = "arm,tpm_event_log";
tpm_event_log_addr = <0x0 0x0>;
tpm_event_log_size = <0x0>;
};
};
efuse@03810000 {
compatible = "nvidia,tegra234-efuse";
reg = <0x0 0x03810000 0x0 0x600>;
status = "disabled";
secure-status = "okay";
};
se0@03b50000 {
compatible = "nvidia,tegra234-se0";
reg = <0x0 0x03b50000 0x0 0x30000>;
status = "disabled";
secure-status = "okay";
};
rng1@03b70000 {
compatible = "nvidia,tegra234-rng1";
reg = <0x0 0x03b70000 0x0 0x10000>;
status = "disabled";
secure-status = "okay";
};
stmm-device-mappings {
uuid = <0xed32d533 0x99e64209 0x9cc02d72 0xcdd998a7>;
description = "UEFI-mm";
device-regions {
combuart-t234 {
base-address = <0x00000000 0x0c198000>;
pages-count = <0x1>;
attributes = <0x3>; /* read-write */
};
qspi0-t234 {
base-address = <0x00000000 0x03270000>;
pages-count = <0x10>;
attributes = <0x3>; /* read-write */
};
scratch-t234 {
base-address = <0x00000000 0x0c390000>;
pages-count = <0x2>;
attributes = <0x3>; /* read-write */
};
};
};
};

View File

@@ -1,5 +1,5 @@
# SPDX-License-Identifier: GPL-2.0-only
# Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
DTC_FLAGS += -@
@@ -12,10 +12,61 @@ makefile-path := t23x/nv-public/overlay
dtbo-y += tegra-optee.dtbo
dtbo-y += tegra234-audio-overlay.dtbo
dtbo-y += tegra234-carveouts.dtbo
dtbo-y += tegra234-jetson.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000.dtbo
dtbo-y += tegra234-p3740-0002+p3701-0008.dtbo
dtbo-y += tegra234-p3768-0000+p3767-0000.dtbo
dtbo-y += tegra234-dcb-p3767-0000-hdmi.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-as-p3701-0004.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-as-p3767-0000.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-as-p3767-0001.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-as-p3767-0003.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-as-p3767-0004.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-dynamic.dtbo
dtbo-y += tegra234-p3768-0000+p3767-0000-dynamic.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-audio-adafruit-uda1334a.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-audio-adafruit-sph0645lm4h.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-audio-fe-pi.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-audio-respeaker-4-mic-array.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-audio-respeaker-4-mic-lin-array.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-csi.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-hdr40.dtbo
dtbo-y += tegra234-p3737-0000+p3701-0000-m2ke.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-audio-adafruit-sph0645lm4h.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-audio-adafruit-uda1334a.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-audio-fe-pi.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-audio-respeaker-4-mic-array.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-audio-respeaker-4-mic-lin-array.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-csi.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-hdr40.dtbo
dtbo-y += tegra234-p3767-0000+p3509-a02-m2ke.dtbo
dtbo-y += tegra234-p3767-0000+p3768-0000-csi.dtbo
dtbo-y += tegra234-p3740-0002+p3701-0008-hdr20.dtbo
dtbo-y += tegra234-p3740-0002+p3701-0008-m2ke.dtbo
dtbo-y += tegra234-p3740-0002+p3701-0008-m2kb.dtbo
dtbo-y += tegra234-p3740-0002-p3701-0008-csi.dtbo
dtbo-y += tegra234-p3971-0000+p3701-0008-camera-dual-imx274-overlay.dtbo
dtbo-y += tegra234-p3971-0000+p3701-0008-camera-p3762-a00-overlay.dtbo
dtbo-y += tegra234-p3737-camera-dual-imx274-overlay.dtbo
dtbo-y += tegra234-p3737-camera-e3331-overlay.dtbo
dtbo-y += tegra234-p3737-camera-e3333-overlay.dtbo
dtbo-y += tegra234-p3737-camera-imx185-overlay.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx219-dual.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx477-dual.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx477-dual-4lane.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx477-imx219.dtbo
dtbo-y += tegra234-p3737-camera-eCAM130A-overlay.dtbo
dtbo-y += tegra234-p3737-camera-dual-hawk-ar0234-e3653-overlay.dtbo
dtbo-y += tegra234-p3737-camera-imx390-overlay.dtbo
dtbo-y += tegra234-p3737-camera-imx390-addr-0x21-overlay.dtbo
dtbo-y += tegra234-p3737-camera-p3762-a00-1Hawk-overlay.dtbo
dtbo-y += tegra234-p3737-camera-p3762-a00-2Hawk-overlay.dtbo
dtbo-y += tegra234-p3737-camera-p3762-a00-3Hawk-3Owl-overlay.dtbo
dtbo-y += tegra234-p3737-camera-p3762-a00-4Hawk-overlay.dtbo
dtbo-y += tegra234-p3737-camera-p3762-a00-4Owl-overlay.dtbo
dtbo-y += tegra234-p3737-camera-p3762-a00-overlay.dtbo
dtbo-y += tegra234-p3740-camera-p3783-a00-overlay.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx219-C.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx219-A.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx219-imx477.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx477-C.dtbo
dtbo-y += tegra234-p3767-camera-p3768-imx477-A.dtbo
ifneq ($(dtb-y),)
dtb-y := $(addprefix $(makefile-path)/,$(dtb-y))

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// Jetson Device-tree overlay for OP-TEE.
/dts-v1/;
@@ -21,6 +21,10 @@
method = "smc";
status = "disabled";
};
ftpm {
compatible = "microsoft,ftpm";
status = "disabled";
};
};
};
};

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;

View File

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-camera@0 {
@@ -12,38 +12,38 @@
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_vi_in0: endpoint {
dual_hawk_vi_in0: endpoint {
vc-id = <0>;
port-index = <1>;
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_out0>;
remote-endpoint = <&dual_hawk_csi_out0>;
};
};
port@1 {
reg = <1>;
ar0234_vi_in1: endpoint {
dual_hawk_vi_in1: endpoint {
vc-id = <1>;
port-index = <1>;
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_out1>;
remote-endpoint = <&dual_hawk_csi_out1>;
};
};
port@2 {
reg = <2>;
ar0234_vi_in2: endpoint {
vc-id = <2>;
dual_hawk_vi_in2: endpoint {
vc-id = <0>;
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_out2>;
remote-endpoint = <&dual_hawk_csi_out2>;
};
};
port@3 {
reg = <3>;
ar0234_vi_in3: endpoint {
vc-id = <3>;
dual_hawk_vi_in3: endpoint {
vc-id = <1>;
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_out3>;
remote-endpoint = <&dual_hawk_csi_out3>;
};
};
};
@@ -62,16 +62,16 @@
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_csi_in0: endpoint@0 {
port-index = <1>;
dual_hawk_csi_in0: endpoint@0 {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&ar0234_ar0234_out0>;
remote-endpoint = <&dual_hawk_out0>;
};
};
port@1 {
reg = <1>;
ar0234_csi_out0: endpoint@1 {
remote-endpoint = <&ar0234_vi_in0>;
dual_hawk_csi_out0: endpoint@1 {
remote-endpoint = <&dual_hawk_vi_in0>;
};
};
};
@@ -83,16 +83,16 @@
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_csi_in1: endpoint@2 {
port-index = <1>;
dual_hawk_csi_in1: endpoint@2 {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&ar0234_ar0234_out1>;
remote-endpoint = <&dual_hawk_out1>;
};
};
port@1 {
reg = <1>;
ar0234_csi_out1: endpoint@3 {
remote-endpoint = <&ar0234_vi_in1>;
dual_hawk_csi_out1: endpoint@3 {
remote-endpoint = <&dual_hawk_vi_in1>;
};
};
};
@@ -104,16 +104,16 @@
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_csi_in2: endpoint@4 {
dual_hawk_csi_in2: endpoint@4 {
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_ar0234_out2>;
remote-endpoint = <&dual_hawk_out2>;
};
};
port@1 {
reg = <1>;
ar0234_csi_out2: endpoint@5 {
remote-endpoint = <&ar0234_vi_in2>;
dual_hawk_csi_out2: endpoint@5 {
remote-endpoint = <&dual_hawk_vi_in2>;
};
};
};
@@ -125,16 +125,16 @@
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_csi_in3: endpoint@6 {
dual_hawk_csi_in3: endpoint@6 {
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_ar0234_out3>;
remote-endpoint = <&dual_hawk_out3>;
};
};
port@1 {
reg = <1>;
ar0234_csi_out3: endpoint@7 {
remote-endpoint = <&ar0234_vi_in3>;
dual_hawk_csi_out3: endpoint@7 {
remote-endpoint = <&dual_hawk_vi_in3>;
};
};
};
@@ -144,23 +144,31 @@
i2c@3180000 {
tca9546@70 {
i2c@0 {
ar0234_a@18 {
dual_hawk_a@18 {
compatible = "onsemi,ar0234";
reg = <0x18>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="ar0234";
sync_sensor = "HAWK1";
sync_sensor_index = <1>;
supports-alt-exp = "true";
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
//use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
@@ -245,10 +253,11 @@
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX424_MODE_3840X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
vc_id = "0";
discontinuous_clk = "no";
@@ -258,6 +267,7 @@
csi_pixel_bit_depth = "10";
mode_type = "bayer";
pixel_phase = "grbg";
active_w = "1920";
active_h = "1200";
readout_orientation = "0";
@@ -265,7 +275,8 @@
inherent_gain = "1";
mclk_multiplier = "3.01";
pix_clk_hz = "134400000";
serdes_pix_clk_hz = "280000000";
serdes_pix_clk_hz = "299000000";
gain_factor = "100";
min_gain_val = "100"; /* dB */
max_gain_val = "1600"; /* dB */
@@ -285,37 +296,47 @@
default_exp_time = "22000";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_ar0234_out0: endpoint {
dual_hawk_out0: endpoint {
vc-id = <0>;
port-index = <1>;
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_in0>;
remote-endpoint = <&dual_hawk_csi_in0>;
};
};
};
};
ar0234_b@10 {
dual_hawk_b@10 {
compatible = "onsemi,ar0234";
reg = <0x10>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="ar0234";
sync_sensor = "HAWK1";
sync_sensor_index = <2>;
supports-alt-exp = "true";
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
//use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
@@ -400,6 +421,341 @@
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX424_MODE_3840X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_a";
vc_id = "1";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "10";
csi_pixel_bit_depth = "10";
mode_type = "bayer";
pixel_phase = "grbg";
active_w = "1920";
active_h = "1200";
readout_orientation = "0";
line_length = "2448";
inherent_gain = "1";
mclk_multiplier = "3.01";
pix_clk_hz = "134400000";
serdes_pix_clk_hz = "299000000";
gain_factor = "100";
min_gain_val = "100"; /* dB */
max_gain_val = "1600"; /* dB */
step_gain_val = "1"; /* 0.1 */
default_gain = "100";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "30000000";
max_framerate = "30000000";
step_framerate = "30000000";
default_framerate = "30000000";
exposure_factor = "1000000";
min_exp_time = "28"; /*us, 2 lines*/
max_exp_time = "22000";
step_exp_time = "1";
default_exp_time = "22000";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dual_hawk_out1: endpoint {
vc-id = <1>;
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&dual_hawk_csi_in1>;
};
};
};
};
};
i2c@1 {
dual_hawk_c@18 {
compatible = "onsemi,ar0234";
reg = <0x18>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="ar0234";
sync_sensor = "HAWK2";
sync_sensor_index = <1>;
supports-alt-exp = "true";
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
//use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
*
* vc_id = "";
* The virtual channel id of the sensor.
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_khz and pix_clk_hz
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* dynamic_pixel_bit_depth = "";
* sensor dynamic bit depth for sensor mode
*
* csi_pixel_bit_depth = "";
* sensor output bit depth for sensor mode
*
* mode_type="";
* Sensor mode type, For eg: yuv, Rgb, bayer, bayer_wdr_pwl
*
* pixel_phase="";
* Pixel phase for sensor mode, For eg: rggb, vyuy, rgb888
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* Gain limits for mode
* if use_decibel_gain = "true", please set the gain as decibel
*
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX424_MODE_3840X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
vc_id = "0";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "10";
csi_pixel_bit_depth = "10";
mode_type = "bayer";
pixel_phase = "grbg";
active_w = "1920";
active_h = "1200";
readout_orientation = "0";
line_length = "2448";
inherent_gain = "1";
mclk_multiplier = "3.01";
pix_clk_hz = "134400000";
serdes_pix_clk_hz = "299000000";
gain_factor = "100";
min_gain_val = "100"; /* dB */
max_gain_val = "1600"; /* dB */
step_gain_val = "1"; /* 0.1 */
default_gain = "100";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "30000000";
max_framerate = "30000000";
step_framerate = "30000000";
default_framerate = "30000000";
exposure_factor = "1000000";
min_exp_time = "28"; /*us, 2 lines*/
max_exp_time = "22000";
step_exp_time = "1";
default_exp_time = "22000";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dual_hawk_out2: endpoint {
vc-id = <0>;
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&dual_hawk_csi_in2>;
};
};
};
};
dual_hawk_d@10 {
compatible = "onsemi,ar0234";
reg = <0x10>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="ar0234";
sync_sensor = "HAWK2";
sync_sensor_index = <2>;
supports-alt-exp = "true";
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
//use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
*
* vc_id = "";
* The virtual channel id of the sensor.
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_khz and pix_clk_hz
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* dynamic_pixel_bit_depth = "";
* sensor dynamic bit depth for sensor mode
*
* csi_pixel_bit_depth = "";
* sensor output bit depth for sensor mode
*
* mode_type="";
* Sensor mode type, For eg: yuv, Rgb, bayer, bayer_wdr_pwl
*
* pixel_phase="";
* Pixel phase for sensor mode, For eg: rggb, vyuy, rgb888
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* Gain limits for mode
* if use_decibel_gain = "true", please set the gain as decibel
*
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX424_MODE_3840X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
@@ -412,6 +768,7 @@
csi_pixel_bit_depth = "10";
mode_type = "bayer";
pixel_phase = "grbg";
active_w = "1920";
active_h = "1200";
readout_orientation = "0";
@@ -419,7 +776,8 @@
inherent_gain = "1";
mclk_multiplier = "3.01";
pix_clk_hz = "134400000";
serdes_pix_clk_hz = "280000000";
serdes_pix_clk_hz = "299000000";
gain_factor = "100";
min_gain_val = "100"; /* dB */
max_gain_val = "1600"; /* dB */
@@ -439,326 +797,17 @@
default_exp_time = "22000";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_ar0234_out1: endpoint {
dual_hawk_out3: endpoint {
vc-id = <1>;
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_in1>;
};
};
};
};
};
i2c@1 {
ar0234_c@18 {
compatible = "onsemi,ar0234";
reg = <0x18>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="ar0234";
sync_sensor = "HAWK2";
sync_sensor_index = <1>;
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
//use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
*
* vc_id = "";
* The virtual channel id of the sensor.
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_khz and pix_clk_hz
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* dynamic_pixel_bit_depth = "";
* sensor dynamic bit depth for sensor mode
*
* csi_pixel_bit_depth = "";
* sensor output bit depth for sensor mode
*
* mode_type="";
* Sensor mode type, For eg: yuv, Rgb, bayer, bayer_wdr_pwl
*
* pixel_phase="";
* Pixel phase for sensor mode, For eg: rggb, vyuy, rgb888
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* Gain limits for mode
* if use_decibel_gain = "true", please set the gain as decibel
*
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX424_MODE_3840X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
vc_id = "2";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "10";
csi_pixel_bit_depth = "10";
mode_type = "bayer";
pixel_phase = "grbg";
active_w = "1920";
active_h = "1200";
readout_orientation = "0";
line_length = "2448";
inherent_gain = "1";
mclk_multiplier = "3.01";
pix_clk_hz = "134400000";
serdes_pix_clk_hz = "280000000";
gain_factor = "100";
min_gain_val = "100"; /* dB */
max_gain_val = "1600"; /* dB */
step_gain_val = "1"; /* 0.1 */
default_gain = "100";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "30000000";
max_framerate = "30000000";
step_framerate = "30000000";
default_framerate = "30000000";
exposure_factor = "1000000";
min_exp_time = "28"; /*us, 2 lines*/
max_exp_time = "22000";
step_exp_time = "1";
default_exp_time = "22000";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_ar0234_out2: endpoint {
vc-id = <2>;
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_in2>;
};
};
};
};
ar0234_d@10 {
compatible = "onsemi,ar0234";
reg = <0x10>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="ar0234";
sync_sensor = "HAWK2";
sync_sensor_index = <2>;
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
//use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
*
* vc_id = "";
* The virtual channel id of the sensor.
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_khz and pix_clk_hz
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* dynamic_pixel_bit_depth = "";
* sensor dynamic bit depth for sensor mode
*
* csi_pixel_bit_depth = "";
* sensor output bit depth for sensor mode
*
* mode_type="";
* Sensor mode type, For eg: yuv, Rgb, bayer, bayer_wdr_pwl
*
* pixel_phase="";
* Pixel phase for sensor mode, For eg: rggb, vyuy, rgb888
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* Gain limits for mode
* if use_decibel_gain = "true", please set the gain as decibel
*
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX424_MODE_3840X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
vc_id = "3";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "10";
csi_pixel_bit_depth = "10";
mode_type = "bayer";
pixel_phase = "grbg";
active_w = "1920";
active_h = "1200";
readout_orientation = "0";
line_length = "2448";
inherent_gain = "1";
mclk_multiplier = "3.01";
pix_clk_hz = "134400000";
serdes_pix_clk_hz = "280000000";
gain_factor = "100";
min_gain_val = "100"; /* dB */
max_gain_val = "1600"; /* dB */
step_gain_val = "1"; /* 0.1 */
default_gain = "100";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "30000000";
max_framerate = "30000000";
step_framerate = "30000000";
default_framerate = "30000000";
exposure_factor = "1000000";
min_exp_time = "28"; /*us, 2 lines*/
max_exp_time = "22000";
step_exp_time = "1";
default_exp_time = "22000";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
ar0234_ar0234_out3: endpoint {
vc-id = <3>;
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&ar0234_csi_in3>;
remote-endpoint = <&dual_hawk_csi_in3>;
};
};
};
@@ -814,54 +863,46 @@
*/
modules {
module0 {
badge = "ar0234_bottomleft";
badge = "dual_hawk_bottomleft";
position = "bottomleft";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "ar0234 30-0018";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@70/i2c@0/ar0234_a@18";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/dual_hawk_a@18";
};
};
module1 {
badge = "ar0234_bottomright";
badge = "dual_hawk_bottomright";
position = "bottomright";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "ar0234 30-0010";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@70/i2c@0/ar0234_b@10";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/dual_hawk_b@10";
};
};
module2 {
badge = "ar0234_centerleft";
badge = "dual_hawk_centerleft";
position = "centerleft";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "ar0234 31-0018";
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@70/i2c@1/ar0234_c@18";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@1/dual_hawk_c@18";
};
};
module3 {
badge = "ar0234_centerright";
badge = "dual_hawk_centerright";
position = "centerright";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "ar0234 31-0010";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9546@70/i2c@1/ar0234_d@10";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@1/dual_hawk_d@10";
};
};
};

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-camera@0 {
@@ -193,7 +193,6 @@
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
e3331_imx318_out0: endpoint {
@@ -263,8 +262,7 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "imx318 30-0010";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9546@70/i2c@0/imx318_a@10";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/imx318_a@10";
};
};
};

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2015-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2015-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-camera@0 {
@@ -115,12 +115,11 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "ov5693 30-0036";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9548@77/i2c@0/ov5693_a@36";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9548@77/i2c@0/ov5693_a@36";
};
drivernode1 {
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/e3333_lens_ov5693@P5V27C/";
sysfs-device-tree = "/sys/firmware/devicetree/base/e3333_lens_ov5693@P5V27C/";
};
};
module1 {
@@ -129,12 +128,11 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "ov5693 31-0036";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9548@77/i2c@1/ov5693_b@36";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9548@77/i2c@1/ov5693_b@36";
};
drivernode1 {
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/e3333_lens_ov5693@P5V27C/";
sysfs-device-tree = "/sys/firmware/devicetree/base/e3333_lens_ov5693@P5V27C/";
};
};
module2 {
@@ -143,12 +141,11 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "ov5693 32-0036";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9548@77/i2c@2/ov5693_c@36";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9548@77/i2c@2/ov5693_c@36";
};
drivernode1 {
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/e3333_lens_ov5693@P5V27C/";
sysfs-device-tree = "/sys/firmware/devicetree/base/e3333_lens_ov5693@P5V27C/";
};
};
module3 {
@@ -157,12 +154,11 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "ov5693 33-0036";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9548@77/i2c@3/ov5693_d@36";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9548@77/i2c@3/ov5693_d@36";
};
drivernode1 {
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/e3333_lens_ov5693@P5V27C/";
sysfs-device-tree = "/sys/firmware/devicetree/base/e3333_lens_ov5693@P5V27C/";
};
};
module4 {
@@ -171,12 +167,11 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "ov5693 34-0036";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9548@77/i2c@4/ov5693_e@36";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9548@77/i2c@4/ov5693_e@36";
};
drivernode1 {
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/e3333_lens_ov5693@P5V27C/";
sysfs-device-tree = "/sys/firmware/devicetree/base/e3333_lens_ov5693@P5V27C/";
};
};
module5 {
@@ -185,12 +180,11 @@
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "ov5693 35-0036";
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9548@77/i2c@5/ov5693_g@36";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9548@77/i2c@5/ov5693_g@36";
};
drivernode1 {
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/e3333_lens_ov5693@P5V27C/";
sysfs-device-tree = "/sys/firmware/devicetree/base/e3333_lens_ov5693@P5V27C/";
};
};
};

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-camera@0 {
@@ -453,10 +453,8 @@
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx185 30-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9546@70/i2c@0/imx185_a@1a";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/imx185_a@1a";
};
};
};

View File

@@ -1,5 +1,5 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-camera@0 {
@@ -763,15 +763,13 @@
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx274 30-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9546@70/i2c@0/imx274_a@1a";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/imx274_a@1a";
};
drivernode1 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/bus@0/lens_imx274@A6V26/";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/lens_imx274@A6V26/";
};
};
module1 {
@@ -781,15 +779,13 @@
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx274 31-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9546@70/i2c@1/imx274_c@1a";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@1/imx274_c@1a";
};
drivernode1 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_lens";
proc-device-tree = "/proc/device-tree/bus@0/lens_imx274@A6V26/";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/lens_imx274@A6V26/";
};
};
};

View File

@@ -1,31 +1,21 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2016-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-camera@0 {
target-path = "/";
__overlay__ {
tegra-capture-vi {
num-channels = <2>;
num-channels = <1>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
imx390_vi_in0: endpoint {
vc-id = <0>;
liimx390_vi_in0: endpoint {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&imx390_csi_out0>;
};
};
port@1 {
reg = <1>;
imx390_vi_in1: endpoint {
vc-id = <1>;
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&imx390_csi_out1>;
bus-width = <4>;
remote-endpoint = <&liimx390_csi_out0>;
};
};
};
@@ -34,7 +24,7 @@
bus@0{
host1x@13e00000 {
nvcsi@15a00000 {
num-channels = <2>;
num-channels = <1>;
#address-cells = <1>;
#size-cells = <0>;
channel@0 {
@@ -44,86 +34,74 @@
#size-cells = <0>;
port@0 {
reg = <0>;
imx390_csi_in0: endpoint@0 {
liimx390_csi_in0: endpoint@0 {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&imx390_imx390_out0>;
bus-width = <4>;
remote-endpoint = <&liimx390_imx390_out0>;
};
};
port@1 {
reg = <1>;
imx390_csi_out0: endpoint@1 {
remote-endpoint = <&imx390_vi_in0>;
};
};
};
};
channel@1 {
reg = <1>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
imx390_csi_in1: endpoint@2 {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&imx390_imx390_out1>;
};
};
port@1 {
reg = <1>;
imx390_csi_out1: endpoint@3 {
remote-endpoint = <&imx390_vi_in1>;
liimx390_csi_out0: endpoint@1 {
remote-endpoint = <&liimx390_vi_in0>;
};
};
};
};
};
};
i2c@3180000 {
tca9546@70 {
i2c@0 {
imx390_a@1b {
imx390_a@21 {
compatible = "sony,imx390";
reg = <0x1b>;
reg = <0x21>;
devnode = "video0";
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="imx390";
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
use_decibel_gain = "true";
/* if true, delay gain setting by one frame to be in sync with exposure */
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/* WAR to prevent banding by reducing analog gain. Bug 2229902 */
/**
* ==== Modes ====
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
* == Signal properties ==
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
* phy_mode = "";
* PHY mode used by the MIPI lanes for this device
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
* CSI Serial interface connected to tegra
* Incase of virtual HW devices, use virtual
* For SW emulated devices, use host
*
* vc_id = "";
* The virtual channel id of the sensor.
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_khz and pix_clk_hz
* == Image format Properties ==
*
* active_w = "";
* Pixel active region width
@@ -131,61 +109,117 @@
* active_h = "";
* Pixel active region height
*
* dynamic_pixel_bit_depth = "";
* sensor dynamic bit depth for sensor mode
*
* csi_pixel_bit_depth = "";
* sensor output bit depth for sensor mode
*
* mode_type="";
* Sensor mode type, For eg: yuv, Rgb, bayer, bayer_wdr_pwl
*
* pixel_phase="";
* Pixel phase for sensor mode, For eg: rggb, vyuy, rgb888
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
* pixel_t = "";
* The sensor readout pixel pattern
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
* == Source Control Settings ==
*
* Gain factor used to convert fixed point integer to float
* Gain range [min_gain/gain_factor, max_gain/gain_factor]
* Gain step [step_gain/gain_factor is the smallest step that can be configured]
* Default gain [Default gain to be initialized for the control.
* use min_gain_val as default for optimal results]
* Framerate factor used to convert fixed point integer to float
* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
* Default Framerate [Default framerate to be initialized for the control.
* use max_framerate to get required performance]
* Exposure factor used to convert fixed point integer to float
* For convenience use 1 sec = 1000000us as conversion factor
* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
* Default Exposure Time [Default exposure to be initialized for the control.
* Set default exposure based on the default_framerate for optimal exposure settings]
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* gain_factor = ""; (integer factor used for floating to fixed point conversion)
* min_gain_val = ""; (ceil to integer)
* max_gain_val = ""; (ceil to integer)
* step_gain_val = ""; (ceil to integer)
* default_gain = ""; (ceil to integer)
* Gain limits for mode
* if use_decibel_gain = "true", please set the gain as decibel
*
* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
* step_exp_time = ""; (ceil to integer)
* default_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (sec)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
* min_framerate = ""; (ceil to integer)
* max_framerate = ""; (ceil to integer)
* step_framerate = ""; (ceil to integer)
* default_framerate = ""; (ceil to integer)
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX390_MODE_1920X1080_CROP_30FPS*/
mode0 {/*mode IMX390_MODE_1936X1096_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
num_lanes = "4";
tegra_sinterface = "serial_a";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "20";
csi_pixel_bit_depth = "12";
mode_type = "bayer_wdr_pwl";
pixel_phase = "rggb";
active_w = "1936";
active_h = "1096";
readout_orientation = "0";
line_length = "4400";
inherent_gain = "1";
mclk_multiplier = "14.58";
pix_clk_hz = "148500000";
serdes_pix_clk_hz = "500000000";
gain_factor = "10";
min_gain_val = "84"; /* dB */
max_gain_val = "240"; /* dB */
step_gain_val = "1"; /* 0.1 */
default_gain = "84";
framerate_factor = "1000000";
min_framerate = "30000000";
max_framerate = "30000000";
step_framerate = "1";
default_framerate = "30000000";
exposure_factor = "1000000";
min_exp_time = "2000"; /*us, 2 lines*/
max_exp_time = "33000";
step_exp_time = "1";
default_exp_time = "11000";/* us */
embedded_metadata_height = "0";
min_hdr_ratio = "64.0";
max_hdr_ratio = "64.0";
num_control_point = "9";
control_point_x_0 = "0";
control_point_y_0 = "0";
control_point_x_1="479";
control_point_y_1="479";
control_point_x_2="1438";
control_point_y_2="837";
control_point_x_3="4315";
control_point_y_3="1238";
control_point_x_4="12945";
control_point_y_4="1688";
control_point_x_5="38836";
control_point_y_5="2191";
control_point_x_6="116508";
control_point_y_6="2755";
control_point_x_7="349525";
control_point_y_7="3387";
control_point_x_8="1048575";
control_point_y_8="4095";
};
mode1 {/*mode IMX390_MODE_1936X1096_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "4";
tegra_sinterface = "serial_a";
vc_id = "0";
discontinuous_clk = "no";
@@ -195,13 +229,15 @@
csi_pixel_bit_depth = "12";
mode_type = "bayer";
pixel_phase = "rggb";
active_w = "1920";
active_h = "1080";
active_w = "1936";
active_h = "1096";
readout_orientation = "0";
line_length = "2200";
inherent_gain = "1";
pix_clk_hz = "74250000";
serdes_pix_clk_hz = "200000000";
gain_factor = "10";
min_gain_val = "0"; /* dB */
max_gain_val = "300"; /* dB */
@@ -221,190 +257,19 @@
default_exp_time = "33333";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
imx390_imx390_out0: endpoint {
vc-id = <0>;
liimx390_imx390_out0: endpoint {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&imx390_csi_in0>;
bus-width = <4>;
remote-endpoint = <&liimx390_csi_in0>;
};
};
};
gmsl-link {
src-csi-port = "b";
dst-csi-port = "a";
serdes-csi-link = "a";
csi-mode = "1x4";
st-vc = <0>;
vc-id = <0>;
num-lanes = <2>;
streams = "ued-u1", "raw12";
};
};
imx390_b@1c {
compatible = "sony,imx390";
reg = <0x1c>;
/* Physical dimensions of sensor */
physical_w = "15.0";
physical_h = "12.5";
sensor_model ="imx390";
/* Defines number of frames to be dropped by driver internally after applying */
/* sensor crop settings. Some sensors send corrupt frames after applying */
/* crop co-ordinates */
post_crop_frame_drop = "0";
/* Convert Gain to unit of dB (decibel) befor passing to kernel driver */
use_decibel_gain = "true";
/* enable CID_SENSOR_MODE_ID for sensor modes selection */
use_sensor_mode_id = "true";
/**
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* mclk_khz = "";
* Standard MIPI driving clock, typically 24MHz
*
* num_lanes = "";
* Number of lane channels sensor is programmed to output
*
* tegra_sinterface = "";
* The base tegra serial interface lanes are connected to
*
* vc_id = "";
* The virtual channel id of the sensor.
*
* discontinuous_clk = "";
* The sensor is programmed to use a discontinuous clock on MIPI lanes
*
* dpcm_enable = "true";
* The sensor is programmed to use a DPCM modes
*
* cil_settletime = "";
* MIPI lane settle time value.
* A "0" value attempts to autocalibrate based on mclk_khz and pix_clk_hz
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* dynamic_pixel_bit_depth = "";
* sensor dynamic bit depth for sensor mode
*
* csi_pixel_bit_depth = "";
* sensor output bit depth for sensor mode
*
* mode_type="";
* Sensor mode type, For eg: yuv, Rgb, bayer, bayer_wdr_pwl
*
* pixel_phase="";
* Pixel phase for sensor mode, For eg: rggb, vyuy, rgb888
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* line_length = "";
* Pixel line length (width) for sensor mode.
* This is used to calibrate features in our camera stack.
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
*
*
*
* inherent_gain = "";
* Gain obtained inherently from mode (ie. pixel binning)
*
* min_gain_val = ""; (floor to 6 decimal places)
* max_gain_val = ""; (floor to 6 decimal places)
* Gain limits for mode
* if use_decibel_gain = "true", please set the gain as decibel
*
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (us)
*
*
* min_hdr_ratio = "";
* max_hdr_ratio = "";
* HDR Ratio limits for mode
*
* min_framerate = "";
* max_framerate = "";
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 {/*mode IMX390_MODE_1920X1080_CROP_30FPS*/
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_a";
vc_id = "1";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
mode_type = "bayer";
pixel_phase = "rggb";
active_w = "1920";
active_h = "1080";
readout_orientation = "0";
line_length = "2200";
inherent_gain = "1";
pix_clk_hz = "74250000";
serdes_pix_clk_hz = "200000000";
gain_factor = "10";
min_gain_val = "0"; /* dB */
max_gain_val = "300"; /* dB */
step_gain_val = "3"; /* 0.3 */
default_gain = "0";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "30000000";
max_framerate = "30000000";
step_framerate = "1";
default_framerate = "30000000";
exposure_factor = "1000000";
min_exp_time = "59"; /*us, 2 lines*/
max_exp_time = "33333";
step_exp_time = "1";
default_exp_time = "33333";/* us */
embedded_metadata_height = "0";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
imx390_imx390_out1: endpoint {
vc-id = <1>;
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&imx390_csi_in1>;
};
};
};
gmsl-link {
src-csi-port = "b";
dst-csi-port = "a";
serdes-csi-link = "b";
csi-mode = "1x4";
st-vc = <0>;
vc-id = <1>;
num-lanes = <2>;
streams = "ued-u1", "raw12";
};
};
};
};
@@ -440,13 +305,14 @@
* isp_bw_margin_pct = <>;
* Isp bandwidth margin in percentage
*/
num_csi_lanes = <2>;
max_lane_speed = <4000000>;
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 first part is the camera_board_id for the module; if the module is in a FFD
@@ -457,29 +323,14 @@
*/
modules {
module0 {
badge = "imx390_rear";
position = "rear";
orientation = "1";
badge = "imx390_bottomleft_liimx390";
position = "bottomleft";
orientation = "0";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx390 30-001b";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9546@70/i2c@0/imx390_a@1b";
};
};
module1 {
badge = "imx390_front";
position = "front";
orientation = "1";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx390 30-001c";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/bus@0/i2c@3180000/tca9546@70/i2c@0/imx390_b@1c";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/i2c@3180000/tca9546@70/i2c@0/imx390_a@21";
};
};
};

View File

File diff suppressed because it is too large Load Diff

View File

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,761 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include <dt-bindings/clock/tegra234-clock.h>
#include <dt-bindings/gpio/tegra234-gpio.h>
/ {
fragment-camera@0 {
target-path = "/";
__overlay__ {
tegra-capture-vi {
num-channels = <2>;
ports {
#address-cells = <1>;
#size-cells = <0>;
vi_port0: port@0 {
reg = <0>;
rbpcv2_imx219_vi_in0: endpoint {
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&rbpcv2_imx219_csi_out0>;
};
};
vi_port1: port@1 {
reg = <1>;
rbpcv2_imx219_vi_in1: endpoint {
port-index = <2>;
bus-width = <2>;
remote-endpoint = <&rbpcv2_imx219_csi_out1>;
};
};
};
};
bus@0 {
host1x@13e00000 {
nvcsi@15a00000 {
num-channels = <2>;
#address-cells = <1>;
#size-cells = <0>;
csi_chan0: channel@0 {
reg = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
csi_chan0_port0: port@0 {
reg = <0>;
rbpcv2_imx219_csi_in0: endpoint@0 {
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&rbpcv2_imx219_out0>;
};
};
csi_chan0_port1: port@1 {
reg = <1>;
rbpcv2_imx219_csi_out0: endpoint@1 {
remote-endpoint = <&rbpcv2_imx219_vi_in0>;
};
};
};
};
csi_chan1: channel@1 {
reg = <1>;
ports {
#address-cells = <1>;
#size-cells = <0>;
csi_chan1_port0: port@0 {
reg = <0>;
rbpcv2_imx219_csi_in1: endpoint@2 {
port-index = <2>;
bus-width = <2>;
remote-endpoint = <&rbpcv2_imx219_out1>;
};
};
csi_chan1_port1: port@1 {
reg = <1>;
rbpcv2_imx219_csi_out1: endpoint@3 {
remote-endpoint = <&rbpcv2_imx219_vi_in1>;
};
};
};
};
};
};
cam_i2cmux {
i2c_0:i2c@0 {
imx219_cam0: rbpcv2_imx219_a@10 {
compatible = "sony,imx219";
/* I2C device address */
reg = <0x10>;
/* V4L2 device node location */
devnode = "video0";
/* Physical dimensions of sensor */
physical_w = "3.680";
physical_h = "2.760";
sensor_model = "imx219";
use_sensor_mode_id = "true";
/**
* ==== Modes ====
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* == Signal properties ==
*
* phy_mode = "";
* PHY mode used by the MIPI lanes for this device
*
* tegra_sinterface = "";
* CSI Serial interface connected to tegra
* Incase of virtual HW devices, use virtual
* For SW emulated devices, use host
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* == Image format Properties ==
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* pixel_t = "";
* The sensor readout pixel pattern
*
* line_length = "";
* Pixel line length (width) for sensor mode.
*
* == Source Control Settings ==
*
* Gain factor used to convert fixed point integer to float
* Gain range [min_gain/gain_factor, max_gain/gain_factor]
* Gain step [step_gain/gain_factor is the smallest step that can be configured]
* Default gain [Default gain to be initialized for the control.
* use min_gain_val as default for optimal results]
* Framerate factor used to convert fixed point integer to float
* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
* Default Framerate [Default framerate to be initialized for the control.
* use max_framerate to get required performance]
* Exposure factor used to convert fixed point integer to float
* For convenience use 1 sec = 1000000us as conversion factor
* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
* Default Exposure Time [Default exposure to be initialized for the control.
* Set default exposure based on the default_framerate for optimal exposure settings]
*
* gain_factor = ""; (integer factor used for floating to fixed point conversion)
* min_gain_val = ""; (ceil to integer)
* max_gain_val = ""; (ceil to integer)
* step_gain_val = ""; (ceil to integer)
* default_gain = ""; (ceil to integer)
* Gain limits for mode
*
* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* step_exp_time = ""; (ceil to integer)
* default_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (sec)
*
* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
* min_framerate = ""; (ceil to integer)
* max_framerate = ""; (ceil to integer)
* step_framerate = ""; (ceil to integer)
* default_framerate = ""; (ceil to integer)
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 { /* IMX219_MODE_3280x2464_21FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
lane_polarity = "6";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "3280";
active_h = "2464";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "21000000"; /* 21.0 fps */
step_framerate = "1";
default_framerate = "21000000"; /* 21.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode1 { /* IMX219_MODE_3280x1848_28FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
lane_polarity = "6";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "3280";
active_h = "1848";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "28000000"; /* 28.0 fps */
step_framerate = "1";
default_framerate = "28000000"; /* 28.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode2 { /* IMX219_MODE_1920x1080_30FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
lane_polarity = "6";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1920";
active_h = "1080";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "30000000"; /* 30.0 fps */
step_framerate = "1";
default_framerate = "30000000"; /* 30.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode3 { /* IMX219_MODE_1640x1232_30FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
lane_polarity = "6";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1640";
active_h = "1232";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "30000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "30000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode4 { /* IMX219_MODE_1280x720_60FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_b";
lane_polarity = "6";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1280";
active_h = "720";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
rbpcv2_imx219_out0: endpoint {
port-index = <1>;
bus-width = <2>;
remote-endpoint = <&rbpcv2_imx219_csi_in0>;
};
};
};
};
};
i2c_1: i2c@1 {
imx219_cam1: rbpcv2_imx219_c@10 {
compatible = "sony,imx219";
/* I2C device address */
reg = <0x10>;
/* V4L2 device node location */
devnode = "video1";
/* Physical dimensions of sensor */
physical_w = "3.680";
physical_h = "2.760";
sensor_model = "imx219";
use_sensor_mode_id = "true";
/**
* ==== Modes ====
* A modeX node is required to support v4l2 driver
* implementation with NVIDIA camera software stack
*
* == Signal properties ==
*
* phy_mode = "";
* PHY mode used by the MIPI lanes for this device
*
* tegra_sinterface = "";
* CSI Serial interface connected to tegra
* Incase of virtual HW devices, use virtual
* For SW emulated devices, use host
*
* pix_clk_hz = "";
* Sensor pixel clock used for calculations like exposure and framerate
*
* readout_orientation = "0";
* Based on camera module orientation.
* Only change readout_orientation if you specifically
* Program a different readout order for this mode
*
* == Image format Properties ==
*
* active_w = "";
* Pixel active region width
*
* active_h = "";
* Pixel active region height
*
* pixel_t = "";
* The sensor readout pixel pattern
*
* line_length = "";
* Pixel line length (width) for sensor mode.
*
* == Source Control Settings ==
*
* Gain factor used to convert fixed point integer to float
* Gain range [min_gain/gain_factor, max_gain/gain_factor]
* Gain step [step_gain/gain_factor is the smallest step that can be configured]
* Default gain [Default gain to be initialized for the control.
* use min_gain_val as default for optimal results]
* Framerate factor used to convert fixed point integer to float
* Framerate range [min_framerate/framerate_factor, max_framerate/framerate_factor]
* Framerate step [step_framerate/framerate_factor is the smallest step that can be configured]
* Default Framerate [Default framerate to be initialized for the control.
* use max_framerate to get required performance]
* Exposure factor used to convert fixed point integer to float
* For convenience use 1 sec = 1000000us as conversion factor
* Exposure range [min_exp_time/exposure_factor, max_exp_time/exposure_factor]
* Exposure step [step_exp_time/exposure_factor is the smallest step that can be configured]
* Default Exposure Time [Default exposure to be initialized for the control.
* Set default exposure based on the default_framerate for optimal exposure settings]
*
* gain_factor = ""; (integer factor used for floating to fixed point conversion)
* min_gain_val = ""; (ceil to integer)
* max_gain_val = ""; (ceil to integer)
* step_gain_val = ""; (ceil to integer)
* default_gain = ""; (ceil to integer)
* Gain limits for mode
*
* exposure_factor = ""; (integer factor used for floating to fixed point conversion)
* min_exp_time = ""; (ceil to integer)
* max_exp_time = ""; (ceil to integer)
* step_exp_time = ""; (ceil to integer)
* default_exp_time = ""; (ceil to integer)
* Exposure Time limits for mode (sec)
*
* framerate_factor = ""; (integer factor used for floating to fixed point conversion)
* min_framerate = ""; (ceil to integer)
* max_framerate = ""; (ceil to integer)
* step_framerate = ""; (ceil to integer)
* default_framerate = ""; (ceil to integer)
* Framerate limits for mode (fps)
*
* embedded_metadata_height = "";
* Sensor embedded metadata height in units of rows.
* If sensor does not support embedded metadata value should be 0.
*/
mode0 { /* IMX219_MODE_3280x2464_21FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_c";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "3280";
active_h = "2464";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "21000000"; /* 21.0 fps */
step_framerate = "1";
default_framerate = "21000000"; /* 21.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode1 { /* IMX219_MODE_3280x1848_28FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_c";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "3280";
active_h = "1848";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "28000000"; /* 28.0 fps */
step_framerate = "1";
default_framerate = "28000000"; /* 28.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode2 { /* IMX219_MODE_1920x1080_30FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_c";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1920";
active_h = "1080";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "30000000"; /* 30.0 fps */
step_framerate = "1";
default_framerate = "30000000"; /* 30.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode3 { /* IMX219_MODE_1640x1232_30FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_c";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1640";
active_h = "1232";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "30000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "30000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
mode4 { /* IMX219_MODE_1280x720_60FPS */
mclk_khz = "24000";
num_lanes = "2";
tegra_sinterface = "serial_c";
phy_mode = "DPHY";
discontinuous_clk = "yes";
dpcm_enable = "false";
cil_settletime = "0";
active_w = "1280";
active_h = "720";
mode_type = "bayer";
pixel_phase = "rggb";
csi_pixel_bit_depth = "10";
readout_orientation = "90";
line_length = "3448";
inherent_gain = "1";
mclk_multiplier = "9.33";
pix_clk_hz = "182400000";
gain_factor = "16";
framerate_factor = "1000000";
exposure_factor = "1000000";
min_gain_val = "16"; /* 1.00x */
max_gain_val = "170"; /* 10.66x */
step_gain_val = "1";
default_gain = "16"; /* 1.00x */
min_hdr_ratio = "1";
max_hdr_ratio = "1";
min_framerate = "2000000"; /* 2.0 fps */
max_framerate = "60000000"; /* 60.0 fps */
step_framerate = "1";
default_framerate = "60000000"; /* 60.0 fps */
min_exp_time = "13"; /* us */
max_exp_time = "683709"; /* us */
step_exp_time = "1";
default_exp_time = "2495"; /* us */
embedded_metadata_height = "2";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
rbpcv2_imx219_out1: endpoint {
port-index = <2>;
bus-width = <2>;
remote-endpoint = <&rbpcv2_imx219_csi_in1>;
};
};
};
};
};
};
lens_imx219@RBPCV2 {
min_focus_distance = "0.0";
hyper_focal = "0.0";
focal_length = "3.04";
f_number = "2.0";
aperture = "0.0";
};
};
tcp: 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 first part is the camera_board_id for the module; if the module is in a FFD
* platform, then use the platform name for this part.
* The second part contains the position of the module, ex. "rear" or "front".
* The third part contains the last 6 characters of a part number which is found
* in the module's specsheet from the vendor.
*/
modules {
cam_module0: module0 {
badge = "jakku_front_RBP194";
position = "front";
orientation = "1";
cam_module0_drivernode0: drivernode0 {
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/cam_i2cmux/i2c@0/rbpcv2_imx219_a@10";
};
cam_module0_drivernode1: drivernode1 {
pcl_id = "v4l2_lens";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/lens_imx219@RBPCV2";
};
};
cam_module1: module1 {
badge = "jakku_rear_RBP194";
position = "rear";
orientation = "1";
cam_module1_drivernode0: drivernode0 {
pcl_id = "v4l2_sensor";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/cam_i2cmux/i2c@1/rbpcv2_imx219_c@10";
};
cam_module1_drivernode1: drivernode1 {
pcl_id = "v4l2_lens";
sysfs-device-tree = "/sys/firmware/devicetree/base/bus@0/lens_imx219@RBPCV2/";
};
};
};
};
};
};
};

View File

@@ -1,10 +1,12 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
overlay-name = "Tegra234 Carveouts Overlay";
fragment@0 {
target-path = "/";
__overlay__ {
@@ -16,6 +18,7 @@
vpr: vpr-carveout {
compatible = "nvidia,vpr-carveout";
no-map;
status = "okay";
};

View File

@@ -1,540 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-t234-dcb@0 {
target-path = "/";
__overlay__ {
display@13800000 {
nvidia,dcb-image = [
55 aa 16 00 00 37 34 30 30 e9 4c 19 77 cc 56 49
44 45 4f 20 0d 00 00 00 70 01 00 00 00 00 49 42
4d 20 56 47 41 20 43 6f 6d 70 61 74 69 62 6c 65
01 00 00 00 10 00 c7 17 31 30 2f 32 36 2f 32 31
00 00 00 00 00 00 00 00 21 18 50 00 f1 2a 00 00
50 4d 49 44 00 00 00 00 00 00 00 a0 00 b0 00 b8
00 c0 00 0e 47 41 31 30 42 20 56 47 41 20 42 49
4f 53 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 56 65 72 73 69 6f 6e 20 39 34 2e
30 42 2e 30 30 2e 30 30 2e 32 30 20 0d 0a 00 43
6f 70 79 72 69 67 68 74 20 28 43 29 20 31 39 39
36 2d 32 30 32 31 20 4e 56 49 44 49 41 20 43 6f
72 70 2e 0d 0a 00 00 00 ff ff 00 00 00 00 ff ff
47 50 55 20 42 6f 61 72 64 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 43 68 69 70 20 52 65 76 20 20 20 00 00
00 00 00 00 00 00 00 ba 91 98 96 91 9a 9a 8d 96
91 98 df ad 9a 93 9a 9e 8c 9a df d2 df b1 90 8b
df b9 90 8d df af 8d 90 9b 8a 9c 8b 96 90 91 df
aa 8c 9a f2 f5 ff 00 00 00 00 00 00 00 00 00 00
50 43 49 52 de 10 94 22 00 00 18 00 00 00 00 03
16 00 01 00 00 80 00 00 2e 8b c0 2e 8b c0 8b c0
4e 50 44 45 01 01 14 00 16 00 00 01 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ff b8 42 49 54 00 00 01 0c 06 12 45 32 01 04 00
38 02 42 02 25 00 44 02 43 02 2c 00 69 02 44 01
04 00 95 02 49 01 24 00 99 02 4d 02 29 00 bd 02
4e 00 00 00 00 00 50 02 e8 00 e6 02 53 02 18 00
ce 03 54 01 02 00 e6 03 55 01 05 00 ec 03 56 01
06 00 f1 03 78 01 08 00 f7 03 64 01 02 00 ff 03
70 02 04 00 01 04 75 01 11 00 05 04 69 02 6e 00
18 04 45 01 04 00 e8 03 00 00 86 04 86 04 fe 20
00 21 f0 2a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 0b 94 20 00 00 00 00 00 a8 07
00 00 00 00 00 00 00 00 02 00 5c 5c 28 02 00 00
3c 02 04 00 10 00 00 00 00 f5 0e 00 00 00 00 00
00 35 44 00 00 c7 2d 00 00 00 00 00 00 00 00 00
00 00 00 00 00 72 30 00 00 e1 44 00 00 1f 45 00
00 46 45 00 00 00 00 00 00 da 04 00 00 00 00 de
04 00 00 4a 08 de 04 26 2a 4a 08 28 2a 86 04 ef
09 14 21 d4 09 d7 20 28 2a 90 00 ab 21 01 4c 08
3a 09 f0 43 00 00 fa 43 00 00 03 10 00 00 00 21
00 00 0c 21 00 00 50 4a 00 00 00 00 00 00 00 00
00 00 00 00 00 00 d5 33 00 00 bb 36 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 af 3c 00 00 00 00 00 00 e9 3c
00 00 0e 43 00 00 00 00 00 00 00 00 00 00 df 33
00 00 2e 3d 00 00 9c 43 00 00 ad 36 00 00 00 00
00 00 00 00 00 00 be 43 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 45 0b
00 00 c1 0a 00 00 5b 0b 00 00 11 3c 00 00 17 3c
00 00 1c 3c 00 00 20 3c 00 00 2a 3c 00 00 31 3c
00 00 3f 3c 00 00 81 3c 00 00 00 00 00 00 00 00
00 00 92 3c 00 00 ec 45 00 00 92 47 00 00 07 48
00 00 8d 49 00 00 7c 4b 00 00 b8 4b 00 00 e2 49
00 00 98 3c 00 00 79 3c 00 00 00 00 00 00 00 00
00 00 00 00 00 00 e8 4d 00 00 9c 3c 00 00 a5 3c
00 00 00 00 00 00 00 00 00 00 00 00 00 00 64 00
50 b5 00 19 cf 00 28 75 0e 14 89 0e 23 00 01 23
23 01 14 ac 0e 28 18 11 00 00 00 00 d4 0e 01 00
00 f1 0d c3 0c 00 00 00 00 01 01 00 00 00 00 f4
1c 2d 4e 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 92 2d 00 00 00 00 00 00 0b 94 20 00 00 20
92 d2 01 58 03 00 00 31 30 2f 32 36 2f 32 31 00
00 00 00 00 00 00 00 00 00 00 00 21 01 10 00 00
00 80 01 00 00 00 00 00 30 30 30 30 30 30 30 30
30 30 30 30 00 00 00 00 00 00 00 00 03 42 00 00
b9 78 8f 47 ad 04 4f 3d bf 01 4c 10 55 04 be ee
54 33 00 00 00 00 00 00 c5 4c 00 00 00 00 00 00
00 00 93 4e 00 00 01 00 10 00 bf 09 30 00 02 00
94 22 00 00 00 00 01 00 44 00 6b 09 00 00 86 04
00 00 3a 09 00 00 de 04 00 00 00 00 00 00 4a 08
00 00 5c 08 00 00 45 0b 00 00 c1 0a 00 00 5b 0b
00 00 71 0b 00 00 f1 0d 00 00 c3 0c 00 00 00 00
00 00 00 00 00 00 00 00 00 00 3c 21 00 00 30 c0
61 40 00 00 00 10 00 00 00 00 08 23 61 00 80 00
00 00 80 00 00 00 88 23 61 00 80 00 00 00 80 00
00 00 08 24 61 00 80 00 00 00 80 00 00 00 88 24
61 00 80 00 00 00 80 00 00 00 08 25 61 00 80 00
00 00 80 00 00 00 88 25 61 00 80 00 00 00 80 00
00 00 08 26 61 00 80 00 00 00 80 00 00 00 00 2a
13 00 00 00 04 00 00 00 04 00 00 2a 13 00 00 00
01 00 00 00 01 00 00 6e 13 00 00 00 04 00 00 00
04 00 00 6e 13 00 00 00 01 00 00 00 01 00 4c 00
12 00 3f 00 00 00 00 00 00 00 0c 24 02 00 01 00
00 00 00 00 00 00 e4 05 02 00 7c 00 00 00 00 00
00 00 e4 05 02 00 7c 00 00 00 18 00 00 00 e4 05
02 00 7c 00 00 00 0c 00 00 00 e4 05 02 00 7c 00
00 00 04 00 00 00 e4 05 02 00 7c 00 00 00 08 00
00 00 e4 05 02 00 7c 00 00 00 14 00 00 00 20 0e
9a 00 00 00 02 00 00 00 02 00 00 0e 9a 00 00 00
02 00 00 00 02 00 00 0e 9a 00 01 00 00 00 01 00
00 00 34 c0 61 40 00 00 00 80 00 00 00 00 00 0c
82 00 ff ff ff ff 00 00 00 00 00 0c 82 00 01 00
00 00 00 00 00 00 00 0c 82 00 02 00 00 00 00 00
00 00 00 0c 82 00 04 00 00 00 00 00 00 00 00 0c
82 00 08 00 00 00 00 00 00 00 00 0c 82 00 10 00
00 00 00 00 00 00 00 0c 82 00 20 00 00 00 00 00
00 00 90 02 82 00 01 00 00 00 00 00 00 00 88 02
82 00 ff 00 00 00 00 00 00 00 c0 04 82 00 07 00
00 00 00 00 00 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 88 80 08 00 00 00 0f 00 00 00 01 00 40 c0
08 00 00 00 0c 00 00 00 0c 00 40 c0 08 00 1f 00
00 00 00 00 00 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 74 09 9a 00 0f 00 00 00 00 00 00 00 e8 73
13 00 01 00 00 00 01 00 00 00 0c 06 9a 00 40 00
00 00 40 00 00 00 64 00 12 00 40 00 00 00 40 00
00 00 04 14 00 00 04 00 00 00 00 00 00 00 04 14
00 00 08 00 00 00 08 00 00 00 14 38 82 00 00 00
01 00 00 00 01 00 00 0a 00 00 00 00 f0 1f 00 00
00 00 0c 14 00 00 01 00 00 00 01 00 00 00 0c 14
00 00 02 00 00 00 01 00 00 00 88 54 62 00 00 00
01 00 00 00 00 00 88 54 62 00 00 00 02 00 00 00
00 00 88 54 62 00 00 00 04 00 00 00 00 00 9c 8b
11 00 00 00 00 80 00 00 00 00 14 0c 82 00 01 00
00 00 00 00 00 00 14 0c 82 00 02 00 00 00 00 00
00 00 14 0c 82 00 04 00 00 00 00 00 00 00 14 0c
82 00 08 00 00 00 00 00 00 00 14 0c 82 00 10 00
00 00 00 00 00 00 14 0c 82 00 20 00 00 00 00 00
00 00 9c 8b 11 00 00 00 00 80 00 00 00 00 10 01
82 00 01 00 00 00 00 00 00 00 d4 06 82 00 ff 03
00 00 00 00 00 00 14 0c 82 00 3f 00 00 00 01 00
00 00 00 14 00 00 02 00 00 00 00 00 00 00 44 c1
61 60 01 00 00 00 01 00 00 00 20 87 08 00 04 00
00 00 00 00 00 00 40 00 82 00 01 00 00 00 00 00
00 00 54 9b 41 00 ff 00 00 00 00 00 00 00 68 9b
41 00 03 00 00 00 00 00 00 00 40 80 11 00 02 00
00 00 00 00 00 00 04 0c 82 00 01 00 00 00 00 00
00 00 04 14 00 00 00 04 00 00 00 00 00 00 34 04
82 00 01 00 00 00 00 00 00 00 4c 08 00 01 02 03
04 05 06 07 00 01 02 03 04 05 06 07 41 06 24 06
00 00 00 07 00 02 bf 00 01 51 00 04 bf 00 02 5e
00 01 bf 00 03 52 00 03 bf 00 84 19 00 00 4f 00
85 7b 59 98 4f 00 06 ff 00 00 4f 00 07 ff 00 00
ef 00 08 ff 00 00 ef 00 09 ff 00 00 ef 00 0a ff
00 00 ef 00 0b ff 00 00 ef 00 0c ff 00 00 ef 00
0d ff 00 00 ef 00 0e ff 00 00 ef 00 0f ff 00 00
ef 00 10 42 50 11 e4 00 11 41 42 0b e2 00 12 40
41 0a e1 00 13 70 51 12 e5 00 14 ff 00 00 ef 00
15 ff 00 00 ef 00 16 ff 00 00 ef 00 17 ff 00 00
ef 00 18 ff 00 00 ef 00 19 ff 00 00 ef 00 1a ff
00 00 ef 00 1b ff 00 00 ef 00 1c ff 00 00 ef 00
1d ff 00 00 ef 00 1e ff 00 00 ef 00 1f ff 00 00
ef 00 00 ff 00 00 0f 00 00 ff 00 00 0f 00 00 ff
00 00 0f 00 00 ff 00 00 0f 00 10 07 16 10 00 a1
0a 01 f0 10 03 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 1f 01 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 2f 02 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 3f 03 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 4f 04 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 5f
05 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 6f 06 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 7f 07 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 8f 00 00 00 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 9f 01 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 af 02 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 bf 03 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 cf 04 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 df
05 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 ef 06 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 ff 07 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e
0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e
1f 10 04 20 04 00 00 80 00 b8 4c 0a ff e0 93 04
00 20 d6 13 00 e0 93 04 01 20 d6 13 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 00
00 00 00 00 00 00 00 00 01 00 00 00 00 ff 00 00
00 00 00 00 00 20 05 11 01 00 00 35 0c 00 ff ff
ff ff ff ff ff ff ff 00 00 00 00 10 05 11 01 00
00 00 00 ff ff 00 00 00 00 00 00 00 00 00 00 00
00 30 08 10 01 14 01 15 0e 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 10 0d 17 34 b0 8f 11 00 00 00 00 00 00
00 00 00 34 a8 04 82 00 00 00 00 00 00 00 00 00
34 a0 04 82 00 00 00 00 00 00 00 00 00 34 d4 02
82 00 00 00 00 00 00 00 00 00 34 a4 04 82 00 00
00 00 00 00 00 00 00 34 7c 14 00 00 00 00 00 00
00 00 00 00 34 08 0e 82 00 00 00 00 00 00 00 00
00 34 0c 0e 82 00 00 00 00 00 00 00 00 00 34 a8
83 11 00 00 00 00 00 00 00 00 00 34 78 01 82 00
00 00 00 00 00 00 00 00 34 78 01 82 00 00 00 00
00 00 00 00 00 34 ac 04 82 00 00 00 00 00 00 00
00 00 34 94 10 82 00 00 00 00 00 00 00 00 00 34
88 10 82 00 00 00 00 00 00 00 00 00 34 8c 10 82
00 00 00 00 00 00 00 00 00 34 90 10 82 00 00 00
00 00 00 00 00 00 34 ac 83 11 00 00 00 00 00 00
00 00 00 34 78 01 82 00 00 00 00 00 00 00 00 00
34 d4 02 82 00 00 00 00 00 00 00 00 00 34 78 05
82 00 00 00 00 00 00 00 00 00 34 b0 04 82 00 00
00 00 00 00 00 00 00 34 78 01 82 00 00 00 00 00
00 00 00 00 34 7c 07 82 00 00 00 00 00 00 00 00
00 10 03 1b 05 80 00 07 60 05 08 40 08 09 60 0d
0a 40 10 0d f0 17 0c e0 15 0e 60 18 0f 40 1c 10
e0 23 15 80 24 16 26 29 17 60 2d 18 40 30 19 60
35 1a 60 39 1b 60 3d 1d e0 43 1e a5 44 1f 60 49
20 60 4d 21 60 51 22 fc 47 23 a0 58 24 66 59 25
2c 5a 26 f2 5a ff 7d f4 ed 1f 18 7c a3 82 dc b6
81 88 d5 6f da 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 4e 56 49 44 49 41 00 00 00 00 00
00 00 00 00 00 00 00 00 00 4e 56 49 44 49 41 20
43 6f 72 70 6f 72 61 74 69 6f 6e 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 42 49 4f 53
20 43 65 72 74 69 66 69 63 61 74 65 20 43 68 65
63 6b 20 46 61 69 6c 65 64 21 21 21 0d 0a 00 00
00 00 00 00 22 05 02 0e 0c 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 50 04 13 0e 07 95 01 95 01 d0 07
a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f 08 95 01 95
01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f 0b
95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff
01 3f 04 e1 00 13 01 94 11 28 23 e1 00 13 01 01
01 14 ff 01 02 0c 1b 00 1b 00 40 06 80 0c 1b 00
1b 00 01 01 28 ff 01 3f 41 1b 00 1b 00 40 06 8c
0a 1b 00 28 00 01 ff 28 ff 03 3f 42 1b 00 1b 00
40 06 8c 0a 1b 00 28 00 01 ff 28 ff 03 3f 80 1b
00 1b 00 20 03 54 06 1b 00 1b 00 01 01 14 ff 01
3f 81 1b 00 1b 00 20 03 54 06 1b 00 1b 00 01 01
14 ff 01 3f 82 1b 00 1b 00 20 03 54 06 1b 00 1b
00 01 01 14 ff 01 3f 83 1b 00 1b 00 20 03 54 06
1b 00 1b 00 01 01 14 ff 01 3f 0d 1b 00 1b 00 20
03 54 06 1b 00 1b 00 01 01 14 ff 01 3f 0e 1b 00
1b 00 e8 03 d0 07 0d 00 1b 00 01 ff 28 ff 01 1f
0f 95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32
ff 01 3f 10 04 02 06 00 00 00 07 00 07 00 07 00
07 00 07 10 05 04 10 04 0f 0f 0f 0f 2f 2f 2f 2f
1c 1c 1c 1c 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f 2f 2f 2f 2f
1f 1f 1f 1f 0f 46 40 00 0f 0f 0f 0f 2d 2d 2d 2d
19 19 19 19 0f 46 40 00 0f 0f 0f 0f 2c 2c 2c 2c
1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f 2b 2b 2b 2b
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2a 2a 2a 2a
1f 1f 1f 1f 0f 46 40 00 0e 0e 0e 0e 29 29 29 29
18 18 18 18 0f 46 40 00 0e 0e 0e 0e 28 28 28 28
1a 1a 1a 1a 0f 46 40 00 0e 0e 0e 0e 27 27 27 27
1c 1c 1c 1c 0f 46 40 00 0e 0e 0e 0e 26 26 26 26
1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f 2d 2d 2d 2d
19 19 19 19 0f 46 40 00 0f 0f 0f 0f 2c 2c 2c 2c
1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f 2b 2b 2b 2b
1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f 2a 2a 2a 2a
1f 1f 1f 1f 0f 46 40 00 20 19 04 00 00 50 32 74
40 e8 80 e4 57 01 04 04 06 76 19 00 00 13 10 00
00 49 11 00 00 47 12 00 00 45 13 00 00 43 14 00
00 41 15 00 00 3f 16 00 00 10 08 0e 05 00 2c 04
04 d1 84 00 00 00 00 0a 05 00 06 00 00 00 00 00
38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00
00 00 00 00 00 88 58 24 00 00 00 00 00 75 40 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 3f 3f 3f 3f 05 05 05 05 0a 0a 0a 0a 00 00 00
00 88 58 24 00 00 00 00 00 65 19 00 00 00 00 0a
05 00 06 00 00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a
3a 00 00 00 00 00 00 00 00 00 00 00 00 f8 5a 24
00 00 00 00 00 00 00 00 00 00 00 0a 0a 00 06 00
00 00 00 00 58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 03 00 00 01 0a 05 0f 46 40 00 00 03 00 44 06
00 00 01 0a 08 0f 46 40 00 00 03 00 44 08 00 00
01 0a 05 0f 46 40 00 00 03 00 44 0a 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0c 00 00 01 0a 08 0f
46 40 00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1
84 00 00 00 00 0a 05 00 06 00 00 00 00 00 38 3d
3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00 00 00
00 00 00 88 58 24 00 00 00 00 00 75 40 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 65 19 00 00 00 00 0a 05 00
06 00 00 00 00 00 48 3a 3a 3a 3a 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 f8 5a 24 00 00
00 00 00 00 00 00 00 00 00 0a 0a 00 06 00 00 00
00 00 58 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c
00 00 01 0a 05 0f 46 40 00 00 03 00 44 0d 00 00
01 0a 08 0f 46 40 00 00 03 00 44 0e 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0f 01 00 01 0a 05 0f
46 40 00 00 03 00 44 10 01 00 01 0a 08 0f 46 40
00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 00 00 00 00 05 05 05 05 00 00 00 00 00 00 00
00 88 58 24 00 00 00 00 00 75 40 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f
3f 05 05 05 05 05 05 05 05 00 00 00 00 88 58 24
00 00 00 00 00 65 19 00 00 00 00 0a 05 00 06 00
00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 00 00 00 00 00 00 0a 0a 00 06 00 00 00 00 00
58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c 01 00
01 0a 05 0f 46 40 00 00 03 00 44 0d 01 00 01 0a
08 0f 46 40 00 00 03 00 44 0e 02 00 01 0a 05 0f
46 40 00 00 03 00 44 0f 02 00 01 0a 05 0f 46 40
00 00 03 00 44 10 02 00 01 0a 08 0f 46 40 00 00
03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 75 40 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 65 19 00 00 00 00 0a 05 00 06 00 00 00
00 00 48 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 00
00 00 00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 0c 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0d 00 00 01 0a 08 0f
46 40 00 00 03 00 44 0e 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0f 01 00 01 0a 05 0f 46 40 00 00
03 00 44 10 01 00 01 0a 08 0f 46 40 00 00 03 00
44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00
00 05 05 05 05 00 00 00 00 00 00 00 00 88 58 24
00 00 00 00 00 75 40 00 00 00 00 0a 05 00 06 00
00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f 3f 05 05 05
05 08 08 08 08 00 00 00 00 88 58 24 00 00 00 00
00 65 19 00 00 00 00 0a 05 00 06 00 00 00 00 00
48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 00 00 00
00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a 3a 3a
3a 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00
00 f8 5a 24 00 00 00 00 00 0c 01 00 01 0a 05 0f
46 40 00 00 03 00 44 0d 01 00 01 0a 08 0f 46 40
00 00 03 00 44 0e 02 00 01 0a 05 0f 46 40 00 00
03 00 44 0f 02 00 01 0a 05 0f 46 40 00 00 03 00
44 10 02 00 01 0a 08 0f 46 40 00 00 03 00 44 10
08 0e 05 00 2c 04 04 d1 84 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 75 40 00 00 00 00 0a 05 00 06 00 00 00
00 00 38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00
00 00 00 00 00 00 00 88 58 24 00 00 00 00 00 65
19 00 00 00 00 0a 05 00 06 00 00 00 00 00 48 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 00 00 00 00 00
00 0a 0a 00 06 00 00 00 00 00 58 3a 3a 3a 3a 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f8
5a 24 00 00 00 00 00 0c 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0d 00 00 01 0a 08 0f 46 40 00 00
03 00 44 0e 00 00 01 0a 05 0f 46 40 00 00 03 00
44 0f 01 00 01 0a 05 0f 46 40 00 00 03 00 44 10
01 00 01 0a 08 0f 46 40 00 00 03 00 44 7a 14 c0
61 40 01 00 c2 0d 74 05 00 6e 14 c0 61 40 ff ff
bf ff 00 00 00 00 6e e4 c5 61 40 fe ff ff ff 00
00 00 00 71 5b f5 19 71 5b 6f 17 5b 74 17 71 56
00 ff 72 71 6e 0c c1 61 40 fe ff ff ff 00 00 00
00 6e 40 65 61 80 fe ff ff ff 00 00 00 00 71 6e
00 23 61 40 ff ff 80 fc 00 00 23 00 71 6e 00 23
61 40 ff ff 80 fc 00 00 27 00 71 6e 00 23 61 40
ff ff 80 fc 00 00 2b 00 71 6e 00 23 61 40 ff ff
80 fc 00 00 2f 00 71 41 23 10 08 6a 18 cb bd dc
4e 5c 08 00 00 00 00 00 00 ac 18 31 19 c1 00 00
00 00 00 00 00 00 00 00 00 00 06 03 80 01 10 00
60 04 02 03 80 01 10 00 02 04 2e 23 02 01 10 00
02 00 2f 32 03 02 10 00 02 00 fe 40 04 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 0f 00 00 00 00 00
00 00 0f 00 00 00 00 00 00 00 41 06 0f 04 02 0f
06 00 00 10 ff 03 00 80 ff 03 00 80 ff 03 00 10
ff 03 00 10 ff 03 00 10 ff 03 00 10 ff 03 00 10
ff 03 00 10 ff 03 00 10 ff 03 00 00 ff 03 00 00
ff 03 00 00 ff 03 00 00 ff 03 00 00 40 05 20 04
01 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 40 05 10 04 00 46 10 00 00 ff 01 00 00 ff 02
00 00 ff 03 00 00 ff 04 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00
00 00 ff 00 00 00 10 05 40 01 00 00 00 0b 03 00
00 0a 02 00 00 08 02 00 20 04 02 00 80 00 00 00
80 00 00 00 80 00 00 00 80 00 00 00 20 00 00 00
20 00 03 00 00 0c 03 00 00 0a 03 00 80 0b 03 00
80 0b 03 00 80 0b 03 00 80 0b 03 71 71 6e 14 c0
61 40 ff ff 3f fa 00 00 c0 01 74 05 00 6e 14 c0
61 40 f7 ff ff ff 08 00 00 00 6e b8 c1 61 40 ff
ff 3f 81 00 03 00 08 6e 00 23 61 40 ff ff 83 fc
00 00 00 00 71 58 40 c0 61 40 10 00 00 0a 1d 00
00 0a 04 00 00 08 04 00 20 04 04 00 80 00 00 00
80 00 00 00 80 00 00 00 80 00 00 00 20 00 00 00
20 00 1d 00 00 0c 1d 00 00 0a 1d 00 80 0a 1d 00
80 0a 1d 00 80 0a 1d 00 80 0a 1d 71 6e 00 23 61
40 ff ff fc fc 00 00 02 03 71 7a 14 c0 61 40 14
00 c2 0d 74 05 00 6e 14 c0 61 40 ff ff bf ff 00
00 00 00 74 14 00 71 6e 14 c0 61 40 ff ff ff f2
00 00 00 00 74 0a 00 6e 00 23 61 40 ff ff fc ff
00 00 01 00 6e 0c c1 61 60 ff bf ff ff 00 40 00
00 6e 14 c0 61 40 ff ff 7f ff 00 00 00 00 6e 30
c1 61 60 f0 ff ff ff 0f 00 00 00 6e 34 c0 61 40
ff ff ee 7f 00 00 00 80 56 17 ff 6e 0c c1 61 60
fc ff ff ff 01 00 00 00 6e 30 c1 61 60 0f ff ff
ff f0 00 00 00 74 0a 00 6e 30 c1 61 60 0f ff ff
ff 00 00 00 00 6e 10 c1 61 40 e0 e0 e0 e0 00 00
00 00 6e 2c c1 61 40 e0 e0 e0 e0 00 00 00 00 3a
05 15 6e 40 c1 61 60 fd ff ff ff 02 00 00 00 98
0a 01 00 00 01 fe 01 71 98 02 01 00 00 01 d0 00
6e 10 c1 61 40 e0 e0 e0 e0 10 10 10 10 6e 2c c1
61 40 e0 e0 e0 e0 10 10 10 10 71 5f 0c c1 61 60
00 01 40 ff 40 00 00 00 00 40 65 61 80 fe bf 00
bf 3a 00 03 5b 59 1b 72 71 3a 07 01 38 6e 40 c1
61 60 fe ff ff ff 01 00 00 00 72 5b ad 1c 52 e8
df 00 71 71 6e 0c c1 61 60 fe ff 00 ff 00 00 00
00 6e 30 c1 61 40 f0 ff ff ff 00 00 00 00 6e b0
c1 61 40 f0 ff ff ff 00 00 00 00 6e 34 c0 61 40
ff ff ee 7f 00 00 11 80 56 17 ff 6e 14 c0 61 40
ff ff 7f ff 00 00 80 00 6e 00 23 61 40 ff ff fc
ff 00 00 02 00 74 05 00 6e 14 c0 61 40 ff ff ff
f2 00 00 00 0d 74 05 00 6e 14 c0 61 40 ff ff bf
ff 00 00 40 00 74 05 00 6e 14 c0 61 40 f7 ff ff
ff 08 00 00 00 6e 0c c0 61 40 ff f0 f0 f0 00 03
05 05 6e b8 c1 61 40 ff ff ff 81 00 03 00 08 6e
00 23 61 40 ff ff 83 fc 00 00 00 00 6e 40 c1 61
60 fe ff ff ff 00 00 00 00 71 6e 0c c1 61 60 fd
ff ff ff 02 00 00 00 6e 30 c1 61 60 ff ff bf ff
00 00 40 00 71 10 05 40 01 01 00 00 00 00 0a 10
00 00 00 a0 40 00 00 80 40 00 00 80 40 00 00 80
40 00 00 80 40 00 00 80 40 00 00 20 00 00 32 10
80 00 0a 90 80 00 00 80 80 00 00 80 80 00 00 80
80 00 00 80 80 00 00 80 80 00 71 71 6e 40 65 61
80 fe ff ff ff 00 00 00 00 71 71 98 07 01 00 00
01 ef 10 71 98 07 01 00 00 01 ef 00 71 58 40 c0
61 40 10 00 00 00 00 32 10 00 00 00 a0 40 00 00
80 40 00 00 80 40 00 00 80 40 00 00 80 40 00 00
80 40 00 00 20 00 00 32 10 80 00 96 90 80 00 00
80 80 00 00 80 80 00 00 80 80 00 00 80 80 00 00
80 80 00 71 42 15 02 07 13 04 03 0a 04 28 23 28
23 01 04 04 06 45 1c 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 14 00 02 19 0a 03 1e 14 04
2b 28 06 1e 00 03 25 0f 04 2f 21 06 28 00 04 32
14 06 3c 00 06 14 00 02 19 0a 03 1e 14 04 2b 28
06 1e 00 03 25 0f 04 2f 21 06 28 00 04 32 14 06
3c 00 06 14 00 02 19 0a 03 1e 14 04 2b 28 06 1e
00 03 25 0f 04 2f 21 06 28 00 04 32 14 06 3c 00
06 0f 00 02 16 09 03 1d 0e 04 27 12 06 17 00 03
21 09 04 27 0e 06 1f 00 04 27 09 06 27 00 06 a7
1d 00 00 2f 1e 00 00 b7 1e 00 00 3f 1f 00 00 c7
1f 00 00 4f 20 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 14
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 10
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 0c
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 0a
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 09
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 08
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 06
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 14
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0c
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0a
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 08
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 06
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 08 00 00 00 10 08 00 1e
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 14
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0c
00 00 00 00 03 00 01 00 50 00 00 00 00 00 00 0a
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 08
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 06
00 00 00 00 00 05 05 00 00 00 00 00 00 00 00 10
08 00 00 00 10 08 00 1e 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 14 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 10 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0c 00 00 00 00 03 00 01 00
50 00 00 00 00 00 00 0a 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 09 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 08 00 00 00 00 03 00 01 00
40 00 00 00 00 00 00 06 00 00 00 00 00 05 05 00
00 00 00 00 00 00 00 ];
};
};
};
};

View File

@@ -0,0 +1,557 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
fragment-t234-dcb@0 {
target-path = "/";
__overlay__ {
display@13800000 {
nvidia,dcb-image = [
55 aa 16 00 00 37 34 30 30 e9 4c 19 77 cc 56 49
44 45 4f 20 0d 00 00 00 70 01 00 00 00 00 49 42
4d 20 56 47 41 20 43 6f 6d 70 61 74 69 62 6c 65
01 00 00 00 10 00 82 18 30 33 2f 31 36 2f 32 33
00 00 00 00 00 00 00 00 21 18 50 00 e1 2b 00 00
50 4d 49 44 00 00 00 00 00 00 00 a0 00 b0 00 b8
00 c0 00 0e 47 41 31 30 42 20 56 47 41 20 42 49
4f 53 0d 0a 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 56 65 72 73 69 6f 6e 20 39 34 2e
30 42 2e 30 30 2e 30 30 2e 32 31 20 0d 0a 00 43
6f 70 79 72 69 67 68 74 20 28 43 29 20 31 39 39
36 2d 32 30 32 33 20 4e 56 49 44 49 41 20 43 6f
72 70 2e 0d 0a 00 00 00 ff ff 00 00 00 00 ff ff
47 50 55 20 42 6f 61 72 64 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 43 68 69 70 20 52 65 76 20 20 20 00 00
00 00 00 00 00 00 00 ba 91 98 96 91 9a 9a 8d 96
91 98 df ad 9a 93 9a 9e 8c 9a df d2 df b1 90 8b
df b9 90 8d df af 8d 90 9b 8a 9c 8b 96 90 91 df
aa 8c 9a f2 f5 ff 00 00 00 00 00 00 00 00 00 00
50 43 49 52 de 10 94 22 00 00 18 00 00 00 00 03
16 00 01 00 00 80 00 00 2e 8b c0 2e 8b c0 8b c0
4e 50 44 45 01 01 14 00 16 00 00 01 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ff b8 42 49 54 00 00 01 0c 06 13 44 32 01 04 00
3e 02 42 02 25 00 4a 02 43 02 2c 00 6f 02 44 01
04 00 9b 02 49 01 24 00 9f 02 4d 02 29 00 c3 02
4e 00 00 00 00 00 50 02 fc 00 ec 02 53 02 18 00
e8 03 54 01 02 00 00 04 55 01 05 00 0a 04 56 01
06 00 0f 04 78 01 08 00 15 04 64 01 02 00 1d 04
70 02 04 00 1f 04 75 01 11 00 23 04 69 02 6e 00
34 04 45 01 04 00 02 04 73 01 04 00 06 04 00 00
a2 04 a2 04 e9 21 f0 21 e0 2b 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 0b 94 21 00
00 00 00 00 a8 07 00 00 00 00 00 00 00 00 02 00
5c 5c 2e 02 00 00 42 02 04 00 10 00 00 00 00 e9
0e 00 00 00 00 00 00 3f 44 00 00 e7 2d 00 00 00
00 00 00 00 00 00 00 00 00 00 00 92 30 00 00 eb
44 00 00 29 45 00 00 50 45 00 00 00 00 00 00 f6
04 00 00 00 00 fa 04 00 00 66 08 fa 04 16 2b 66
08 18 2b a2 04 ef 09 04 22 d4 09 c2 21 18 2b 90
00 9b 22 01 68 08 56 09 fa 43 00 00 04 44 00 00
f7 0f 00 00 f0 21 00 00 fc 21 00 00 30 4b 00 00
00 00 00 00 00 00 00 00 00 00 00 00 d5 33 00 00
bb 36 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 b3 3c 00 00
00 00 00 00 ed 3c 00 00 12 43 00 00 00 00 00 00
00 00 00 00 df 33 00 00 32 3d 00 00 a6 43 00 00
ad 36 00 00 00 00 00 00 00 00 00 00 c8 43 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 61 0b 00 00 dd 0a 00 00 77 0b 00 00
11 3c 00 00 17 3c 00 00 1c 3c 00 00 20 3c 00 00
2a 3c 00 00 31 3c 00 00 3f 3c 00 00 81 3c 00 00
00 00 00 00 00 00 00 00 96 3c 00 00 f6 45 00 00
9c 47 00 00 11 48 00 00 63 4a 00 00 5c 4c 00 00
98 4c 00 00 c2 4a 00 00 9c 3c 00 00 79 3c 00 00
00 00 00 00 00 00 00 00 00 00 00 00 c8 4e 00 00
a0 3c 00 00 a9 3c 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 64 00 50 b5 00 19 cf 00
28 91 0e 14 a5 0e 23 00 01 23 23 01 14 00 00 00
0c 11 00 00 00 00 83 17 00 00 c8 0e 01 00 00 0d
0e df 0c 00 00 00 00 01 01 00 00 00 00 af 1d 0d
4f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b2 2d 00 00 00 00 0b 94 21 00 00 66 60 f1 01 f0
03 00 00 30 33 2f 31 36 2f 32 33 00 00 00 00 00
00 00 00 00 00 00 00 21 01 10 00 00 00 80 01 00
00 00 00 00 30 30 30 30 30 30 30 30 30 30 30 30
00 00 00 00 00 00 00 00 03 42 00 00 1c 06 99 a6
b9 51 42 01 b8 8b e9 f1 13 c6 1b 3f 54 33 00 00
00 00 00 00 a5 4d 00 00 00 00 00 00 00 00 73 4f
00 00 01 00 10 00 bf 09 30 00 02 00 94 22 00 00
00 00 01 00 44 00 6b 09 00 00 a2 04 00 00 56 09
00 00 fa 04 00 00 00 00 00 00 66 08 00 00 78 08
00 00 61 0b 00 00 dd 0a 00 00 77 0b 00 00 8d 0b
00 00 0d 0e 00 00 df 0c 00 00 00 00 00 00 00 00
00 00 00 00 00 00 2c 22 00 00 30 c0 61 40 00 00
00 10 00 00 00 00 08 23 61 00 80 00 00 00 80 00
00 00 88 23 61 00 80 00 00 00 80 00 00 00 08 24
61 00 80 00 00 00 80 00 00 00 88 24 61 00 80 00
00 00 80 00 00 00 08 25 61 00 80 00 00 00 80 00
00 00 88 25 61 00 80 00 00 00 80 00 00 00 08 26
61 00 80 00 00 00 80 00 00 00 00 2a 13 00 00 00
04 00 00 00 04 00 00 2a 13 00 00 00 01 00 00 00
01 00 00 6e 13 00 00 00 04 00 00 00 04 00 00 6e
13 00 00 00 01 00 00 00 01 00 4c 00 12 00 3f 00
00 00 00 00 00 00 0c 24 02 00 01 00 00 00 00 00
00 00 e4 05 02 00 7c 00 00 00 00 00 00 00 e4 05
02 00 7c 00 00 00 18 00 00 00 e4 05 02 00 7c 00
00 00 0c 00 00 00 e4 05 02 00 7c 00 00 00 04 00
00 00 e4 05 02 00 7c 00 00 00 08 00 00 00 e4 05
02 00 7c 00 00 00 14 00 00 00 20 0e 9a 00 00 00
02 00 00 00 02 00 00 0e 9a 00 00 00 02 00 00 00
02 00 00 0e 9a 00 01 00 00 00 01 00 00 00 34 c0
61 40 00 00 00 80 00 00 00 00 00 0c 82 00 ff ff
ff ff 00 00 00 00 00 0c 82 00 01 00 00 00 00 00
00 00 00 0c 82 00 02 00 00 00 00 00 00 00 00 0c
82 00 04 00 00 00 00 00 00 00 00 0c 82 00 08 00
00 00 00 00 00 00 00 0c 82 00 10 00 00 00 00 00
00 00 00 0c 82 00 20 00 00 00 00 00 00 00 90 02
82 00 01 00 00 00 00 00 00 00 88 02 82 00 ff 00
00 00 00 00 00 00 c0 04 82 00 07 00 00 00 00 00
00 00 00 0a 00 00 00 00 f0 1f 00 00 00 00 88 80
08 00 00 00 0f 00 00 00 01 00 40 c0 08 00 00 00
0c 00 00 00 0c 00 40 c0 08 00 1f 00 00 00 00 00
00 00 00 0a 00 00 00 00 f0 1f 00 00 00 00 74 09
9a 00 0f 00 00 00 00 00 00 00 e8 73 13 00 01 00
00 00 01 00 00 00 0c 06 9a 00 40 00 00 00 40 00
00 00 64 00 12 00 40 00 00 00 40 00 00 00 04 14
00 00 04 00 00 00 00 00 00 00 04 14 00 00 08 00
00 00 08 00 00 00 14 38 82 00 00 00 01 00 00 00
01 00 00 0a 00 00 00 00 f0 1f 00 00 00 00 0c 14
00 00 01 00 00 00 01 00 00 00 0c 14 00 00 02 00
00 00 01 00 00 00 88 54 62 00 00 00 01 00 00 00
00 00 88 54 62 00 00 00 02 00 00 00 00 00 88 54
62 00 00 00 04 00 00 00 00 00 9c 8b 11 00 00 00
00 80 00 00 00 00 14 0c 82 00 01 00 00 00 00 00
00 00 14 0c 82 00 02 00 00 00 00 00 00 00 14 0c
82 00 04 00 00 00 00 00 00 00 14 0c 82 00 08 00
00 00 00 00 00 00 14 0c 82 00 10 00 00 00 00 00
00 00 14 0c 82 00 20 00 00 00 00 00 00 00 9c 8b
11 00 00 00 00 80 00 00 00 00 10 01 82 00 01 00
00 00 00 00 00 00 d4 06 82 00 ff 03 00 00 00 00
00 00 14 0c 82 00 3f 00 00 00 01 00 00 00 00 14
00 00 02 00 00 00 00 00 00 00 44 c1 61 60 01 00
00 00 01 00 00 00 20 87 08 00 04 00 00 00 00 00
00 00 40 00 82 00 01 00 00 00 00 00 00 00 54 9b
41 00 ff 00 00 00 00 00 00 00 68 9b 41 00 03 00
00 00 00 00 00 00 40 80 11 00 02 00 00 00 00 00
00 00 04 0c 82 00 01 00 00 00 00 00 00 00 04 14
00 00 00 04 00 00 00 00 00 00 34 04 82 00 01 00
00 00 00 00 00 00 68 08 00 01 02 03 04 05 06 07
00 01 02 03 04 05 06 07 41 06 24 06 00 00 00 07
00 02 bf 00 01 51 00 04 bf 00 02 5e 00 01 bf 00
03 52 00 03 bf 00 84 19 00 00 4f 00 85 7b 59 98
4f 00 06 ff 00 00 4f 00 07 ff 00 00 ef 00 08 ff
00 00 ef 00 09 ff 00 00 ef 00 0a ff 00 00 ef 00
0b ff 00 00 ef 00 0c ff 00 00 ef 00 0d ff 00 00
ef 00 0e ff 00 00 ef 00 0f ff 00 00 ef 00 10 42
50 11 e4 00 11 41 42 0b e2 00 12 40 41 0a e1 00
13 70 51 12 e5 00 14 ff 00 00 ef 00 15 ff 00 00
ef 00 16 ff 00 00 ef 00 17 ff 00 00 ef 00 18 ff
00 00 ef 00 19 ff 00 00 ef 00 1a ff 00 00 ef 00
1b ff 00 00 ef 00 1c ff 00 00 ef 00 1d ff 00 00
ef 00 1e ff 00 00 ef 00 1f ff 00 00 ef 00 00 ff
00 00 0f 00 00 ff 00 00 0f 00 00 ff 00 00 0f 00
00 ff 00 00 0f 00 10 07 16 10 00 bd 0a 01 f0 10
03 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 1f 01 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 2f 02 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 3f
03 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 4f 04 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 5f 05 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 6f 06 00 00 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 7f 07 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 8f 00 00
00 00 00 00 00 ff ff ff 00 ff ff 00 10 00 00 00
00 00 00 9f 01 00 00 00 00 00 00 ff ff ff 00 ff
ff 00 10 00 00 00 00 00 00 af 02 00 00 00 00 00
00 ff ff ff 00 ff ff 00 10 00 00 00 00 00 00 bf
03 00 00 00 00 00 00 ff ff ff 00 ff ff 00 10 00
00 00 00 00 00 cf 04 00 00 00 00 00 00 ff ff ff
00 ff ff 00 10 00 00 00 00 00 00 df 05 00 00 00
00 00 00 ff ff ff 00 ff ff 00 10 00 00 00 00 00
00 ef 06 00 00 00 00 00 00 ff ff ff 00 ff ff 00
10 00 00 00 00 00 00 ff 07 00 00 00 00 00 00 ff
ff ff 00 ff ff 00 10 00 00 00 00 00 00 00 01 02
03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12
13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 10 04 20
04 00 00 80 00 b8 4c 0a ff e0 93 04 00 20 d6 13
00 e0 93 04 01 20 d6 13 00 ff 00 00 00 00 00 00
00 00 00 00 00 00 00 00 ff 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 00 ff 00 00 00 00 00 00
00 00 00 00 00 00 00 00 ff 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 00 ff 00 00 00 00 00 00
00 00 00 00 00 00 00 00 ff 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 00 ff 00 00 00 00 00 00
00 20 05 11 01 00 00 35 0c 00 ff ff ff ff ff ff
ff ff ff 00 00 00 00 10 05 11 01 00 00 00 00 ff
ff 00 00 00 00 00 00 00 00 00 00 00 00 30 08 10
01 14 01 15 0e 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10
0d 17 34 b0 8f 11 00 00 00 00 00 00 00 00 00 34
a8 04 82 00 00 00 00 00 00 00 00 00 34 a0 04 82
00 00 00 00 00 00 00 00 00 34 d4 02 82 00 00 00
00 00 00 00 00 00 34 a4 04 82 00 00 00 00 00 00
00 00 00 34 7c 14 00 00 00 00 00 00 00 00 00 00
34 08 0e 82 00 00 00 00 00 00 00 00 00 34 0c 0e
82 00 00 00 00 00 00 00 00 00 34 a8 83 11 00 00
00 00 00 00 00 00 00 34 78 01 82 00 00 00 00 00
00 00 00 00 34 78 01 82 00 00 00 00 00 00 00 00
00 34 ac 04 82 00 00 00 00 00 00 00 00 00 34 94
10 82 00 00 00 00 00 00 00 00 00 34 88 10 82 00
00 00 00 00 00 00 00 00 34 8c 10 82 00 00 00 00
00 00 00 00 00 34 90 10 82 00 00 00 00 00 00 00
00 00 34 ac 83 11 00 00 00 00 00 00 00 00 00 34
78 01 82 00 00 00 00 00 00 00 00 00 34 d4 02 82
00 00 00 00 00 00 00 00 00 34 78 05 82 00 00 00
00 00 00 00 00 00 34 b0 04 82 00 00 00 00 00 00
00 00 00 34 78 01 82 00 00 00 00 00 00 00 00 00
34 7c 07 82 00 00 00 00 00 00 00 00 00 10 03 1b
05 80 00 07 60 05 08 40 08 09 60 0d 0a 40 10 0d
f0 17 0c e0 15 0e 60 18 0f 40 1c 10 e0 23 15 80
24 16 26 29 17 60 2d 18 40 30 19 60 35 1a 60 39
1b 60 3d 1d e0 43 1e a5 44 1f 60 49 20 60 4d 21
60 51 22 fc 47 23 a0 58 24 66 59 25 2c 5a 26 f2
5a 68 74 e1 61 8d e9 54 da de d0 33 c4 0d 30 30
cb 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 4e 56 49 44 49 41 00 00 00 00 00 00 00 00 00
00 00 00 00 00 4e 56 49 44 49 41 20 43 6f 72 70
6f 72 61 74 69 6f 6e 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 22 05 02 0e 0c 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 50 04 13 0e 07 95 01
95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32 ff 01 3f
08 95 01 95 01 d0 07 a0 0f 1b 00 1b 00 0f 0f 32
ff 01 3f 0b 95 01 95 01 d0 07 a0 0f 1b 00 1b 00
0f 0f 32 ff 01 3f 04 e1 00 13 01 94 11 28 23 e1
00 13 01 01 01 14 ff 01 02 0c 1b 00 1b 00 40 06
80 0c 1b 00 1b 00 01 01 28 ff 01 3f 41 1b 00 1b
00 40 06 8c 0a 1b 00 28 00 01 ff 28 ff 03 3f 42
1b 00 1b 00 40 06 8c 0a 1b 00 28 00 01 ff 28 ff
03 3f 80 1b 00 1b 00 20 03 54 06 1b 00 1b 00 01
01 14 ff 01 3f 81 1b 00 1b 00 20 03 54 06 1b 00
1b 00 01 01 14 ff 01 3f 82 1b 00 1b 00 20 03 54
06 1b 00 1b 00 01 01 14 ff 01 3f 83 1b 00 1b 00
20 03 54 06 1b 00 1b 00 01 01 14 ff 01 3f 0d 1b
00 1b 00 20 03 54 06 1b 00 1b 00 01 01 14 ff 01
3f 0e 1b 00 1b 00 e8 03 d0 07 0d 00 1b 00 01 ff
28 ff 01 1f 0f 95 01 95 01 d0 07 a0 0f 1b 00 1b
00 0f 0f 32 ff 01 3f 10 04 02 06 00 00 00 07 00
07 00 07 00 07 00 07 10 05 04 10 04 0f 0f 0f 0f
2f 2f 2f 2f 1c 1c 1c 1c 0f 46 40 00 0e 0e 0e 0e
2d 2d 2d 2d 13 13 13 13 0f 46 40 00 0e 0e 0e 0e
2c 2c 2c 2c 15 15 15 15 0f 46 40 00 0e 0e 0e 0e
2b 2b 2b 2b 17 17 17 17 0f 46 40 00 0f 0f 0f 0f
2d 2d 2d 2d 19 19 19 19 0f 46 40 00 0f 0f 0f 0f
2c 2c 2c 2c 1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f
2b 2b 2b 2b 1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f
2a 2a 2a 2a 1f 1f 1f 1f 0f 46 40 00 0e 0e 0e 0e
29 29 29 29 18 18 18 18 0f 46 40 00 0e 0e 0e 0e
28 28 28 28 1a 1a 1a 1a 0f 46 40 00 0e 0e 0e 0e
27 27 27 27 1c 1c 1c 1c 0f 46 40 00 0e 0e 0e 0e
26 26 26 26 1e 1e 1e 1e 0f 46 40 00 0f 0f 0f 0f
2d 2d 2d 2d 19 19 19 19 0f 46 40 00 0f 0f 0f 0f
2c 2c 2c 2c 1b 1b 1b 1b 0f 46 40 00 0f 0f 0f 0f
2b 2b 2b 2b 1d 1d 1d 1d 0f 46 40 00 0f 0f 0f 0f
2a 2a 2a 2a 1f 1f 1f 1f 0f 46 40 00 20 19 04 00
00 50 32 74 40 e8 80 e4 57 01 04 04 06 31 1a 00
00 07 10 00 00 3d 11 00 00 3b 12 00 00 39 13 00
00 37 14 00 00 35 15 00 00 33 16 00 00 10 08 0e
05 00 2c 04 04 d1 84 00 00 00 00 0a 05 00 06 00
00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05 05 05
05 00 00 00 00 00 00 00 00 88 58 24 00 00 00 00
00 75 40 00 00 00 00 0a 05 00 06 00 00 00 00 00
38 3d 3e 3f 3a 3f 3f 3f 3f 05 05 05 05 0a 0a 0a
0a 00 00 00 00 88 58 24 00 aa aa 00 00 65 19 00
00 00 00 0a 05 00 06 00 00 00 00 00 48 3a 3a 3a
3a 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00
00 f8 5a 24 00 aa aa 00 00 00 00 00 00 00 00 0a
0a 00 06 00 00 00 00 00 58 3a 3a 3a 3a 3a 3a 3a
3a 00 00 00 00 00 00 00 00 00 00 00 00 f8 5a 24
00 aa aa 00 00 03 00 00 01 0a 05 0f 46 40 00 00
03 00 44 06 00 00 01 0a 08 0f 46 40 00 00 03 00
44 08 00 00 01 0a 05 0f 46 40 00 00 03 00 44 0a
00 00 01 0a 05 0f 46 40 00 00 03 00 44 0c 00 00
01 0a 08 0f 46 40 00 00 03 00 44 10 08 0e 05 00
2c 04 04 d1 84 00 00 00 00 0a 05 00 06 00 00 00
00 00 38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00
00 00 00 00 00 00 00 88 58 24 00 00 00 00 00 75
40 00 00 00 00 0a 05 00 06 00 00 00 00 00 38 3d
3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00 00 00
00 00 00 88 58 24 00 00 00 00 00 65 19 00 00 00
00 0a 05 00 06 00 00 00 00 00 48 3a 3a 3a 3a 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f8
5a 24 00 00 00 00 00 00 00 00 00 00 00 0a 0a 00
06 00 00 00 00 00 58 3a 3a 3a 3a 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 f8 5a 24 00 00
00 00 00 0c 00 00 01 0a 05 0f 46 40 00 00 03 00
44 0d 00 00 01 0a 08 0f 46 40 00 00 03 00 44 0e
00 00 01 0a 05 0f 46 40 00 00 03 00 44 0f 01 00
01 0a 05 0f 46 40 00 00 03 00 44 10 01 00 01 0a
08 0f 46 40 00 00 03 00 44 10 08 0e 05 00 2c 04
04 d1 84 00 00 00 00 0a 05 00 06 00 00 00 00 00
38 3d 3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00
00 00 00 00 00 88 58 24 00 00 00 00 00 75 40 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 3f 3f 3f 3f 05 05 05 05 05 05 05 05 00 00 00
00 88 58 24 00 00 00 00 00 65 19 00 00 00 00 0a
05 00 06 00 00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a
3a 00 00 00 00 00 00 00 00 00 00 00 00 f8 5a 24
00 00 00 00 00 00 00 00 00 00 00 0a 0a 00 06 00
00 00 00 00 58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 0c 01 00 01 0a 05 0f 46 40 00 00 03 00 44 0d
01 00 01 0a 08 0f 46 40 00 00 03 00 44 0e 02 00
01 0a 05 0f 46 40 00 00 03 00 44 0f 02 00 01 0a
05 0f 46 40 00 00 03 00 44 10 02 00 01 0a 08 0f
46 40 00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1
84 00 00 00 00 0a 05 00 06 00 00 00 00 00 38 3d
3e 3f 3a 00 00 00 00 05 05 05 05 00 00 00 00 00
00 00 00 88 58 24 00 00 00 00 00 75 40 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 65 19 00 00 00 00 0a 05 00
06 00 00 00 00 00 48 3a 3a 3a 3a 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 f8 5a 24 00 00
00 00 00 00 00 00 00 00 00 0a 0a 00 06 00 00 00
00 00 58 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c
00 00 01 0a 05 0f 46 40 00 00 03 00 44 0d 00 00
01 0a 08 0f 46 40 00 00 03 00 44 0e 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0f 01 00 01 0a 05 0f
46 40 00 00 03 00 44 10 01 00 01 0a 08 0f 46 40
00 00 03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00
00 00 00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f
3a 00 00 00 00 05 05 05 05 00 00 00 00 00 00 00
00 88 58 24 00 00 00 00 00 75 40 00 00 00 00 0a
05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 3f 3f 3f
3f 05 05 05 05 08 08 08 08 00 00 00 00 88 58 24
00 00 00 00 00 65 19 00 00 00 00 0a 05 00 06 00
00 00 00 00 48 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00
00 00 00 00 00 00 00 00 00 f8 5a 24 00 00 00 00
00 00 00 00 00 00 00 0a 0a 00 06 00 00 00 00 00
58 3a 3a 3a 3a 3a 3a 3a 3a 00 00 00 00 00 00 00
00 00 00 00 00 f8 5a 24 00 00 00 00 00 0c 01 00
01 0a 05 0f 46 40 00 00 03 00 44 0d 01 00 01 0a
08 0f 46 40 00 00 03 00 44 0e 02 00 01 0a 05 0f
46 40 00 00 03 00 44 0f 02 00 01 0a 05 0f 46 40
00 00 03 00 44 10 02 00 01 0a 08 0f 46 40 00 00
03 00 44 10 08 0e 05 00 2c 04 04 d1 84 00 00 00
00 0a 05 00 06 00 00 00 00 00 38 3d 3e 3f 3a 00
00 00 00 05 05 05 05 00 00 00 00 00 00 00 00 88
58 24 00 00 00 00 00 75 40 00 00 00 00 0a 05 00
06 00 00 00 00 00 38 3d 3e 3f 3a 00 00 00 00 05
05 05 05 00 00 00 00 00 00 00 00 88 58 24 00 00
00 00 00 65 19 00 00 00 00 0a 05 00 06 00 00 00
00 00 48 3a 3a 3a 3a 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 f8 5a 24 00 00 00 00 00 00
00 00 00 00 00 0a 0a 00 06 00 00 00 00 00 58 3a
3a 3a 3a 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 f8 5a 24 00 00 00 00 00 0c 00 00 01 0a
05 0f 46 40 00 00 03 00 44 0d 00 00 01 0a 08 0f
46 40 00 00 03 00 44 0e 00 00 01 0a 05 0f 46 40
00 00 03 00 44 0f 01 00 01 0a 05 0f 46 40 00 00
03 00 44 10 01 00 01 0a 08 0f 46 40 00 00 03 00
44 7a 14 c0 61 40 01 00 c2 0d 74 05 00 6e 14 c0
61 40 ff ff bf ff 00 00 00 00 6e e4 c5 61 40 fe
ff ff ff 00 00 00 00 71 5b b0 1a 71 5b 63 17 5b
68 17 71 56 00 ff 72 71 6e 0c c1 61 40 fe ff ff
ff 00 00 00 00 6e 40 65 61 80 fe ff ff ff 00 00
00 00 71 10 07 01 60 01 60 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 6e 00 23 61 40 ff
ff 80 fc 00 00 23 00 71 6e 00 23 61 40 ff ff 80
fc 00 00 27 00 71 6e 00 23 61 40 ff ff 80 fc 00
00 2b 00 71 6e 00 23 61 40 ff ff 80 fc 00 00 2f
00 71 41 23 10 08 25 19 cb bd dc 4e 78 08 00 00
00 00 00 00 67 19 ec 19 c1 00 00 00 00 00 00 00
00 00 00 00 00 02 03 80 01 10 00 62 04 0e 01 80
01 10 00 02 04 0e 11 02 01 10 00 02 00 2e 32 03
02 10 00 02 00 fe 40 04 00 00 00 00 00 0f 00 00
00 00 00 00 00 0f 00 00 00 00 00 00 00 0f 00 00
00 00 00 00 00 0f 00 00 00 00 00 00 00 0f 00 00
00 00 00 00 00 0f 00 00 00 00 00 00 00 0f 00 00
00 00 00 00 00 0f 00 00 00 00 00 00 00 0f 00 00
00 00 00 00 00 0f 00 00 00 00 00 00 00 0f 00 00
00 00 00 00 00 41 06 0f 04 02 0f 06 00 00 10 ff
03 00 80 ff 03 00 80 ff 03 00 10 ff 03 00 10 ff
03 00 10 ff 03 00 10 ff 03 00 10 ff 03 00 10 ff
03 00 10 ff 03 00 00 ff 03 00 00 ff 03 00 00 ff
03 00 00 ff 03 00 00 40 05 20 04 01 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00 00
ff 00 00 00 ff 00 00 00 ff 00 00 00 40 05 10 04
00 61 10 00 00 ff 01 00 00 ff 02 00 00 ff 03 00
00 ff 04 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 ff 00 00 00 ff 00 00 00 ff 00 00 00 ff 00 00
00 10 05 40 01 00 00 00 0b 03 00 00 0a 02 00 00
08 02 00 20 04 02 00 80 00 00 00 80 00 00 00 80
00 00 00 80 00 00 00 20 00 00 00 20 00 03 00 00
0c 03 00 00 0a 03 00 80 0b 03 00 80 0b 03 00 80
0b 03 00 80 0b 03 71 71 6e 14 c0 61 40 ff ff 3f
fa 00 00 c0 01 74 05 00 6e 14 c0 61 40 f7 ff ff
ff 08 00 00 00 6e b8 c1 61 40 ff ff 3f 81 00 03
00 08 6e 00 23 61 40 ff ff 83 fc 00 00 00 00 71
58 40 c0 61 40 10 00 00 0a 1d 00 00 0a 04 00 00
08 04 00 20 04 04 00 80 00 00 00 80 00 00 00 80
00 00 00 80 00 00 00 20 00 00 00 20 00 1d 00 00
0c 1d 00 00 0a 1d 00 80 0a 1d 00 80 0a 1d 00 80
0a 1d 00 80 0a 1d 71 6e 00 23 61 40 ff ff fc fc
00 00 02 03 71 7a 14 c0 61 40 14 00 c2 0d 74 05
00 6e 14 c0 61 40 ff ff bf ff 00 00 00 00 74 14
00 71 6e 14 c0 61 40 ff ff ff f2 00 00 00 00 74
0a 00 6e 00 23 61 40 ff ff fc ff 00 00 01 00 6e
0c c1 61 60 ff bf ff ff 00 40 00 00 6e 14 c0 61
40 ff ff 7f ff 00 00 00 00 6e 30 c1 61 60 f0 ff
ff ff 0f 00 00 00 6e 34 c0 61 40 ff ff ee 7f 00
00 00 80 56 17 ff 6e 0c c1 61 60 fc ff ff ff 01
00 00 00 6e 30 c1 61 60 0f ff ff ff f0 00 00 00
74 0a 00 6e 30 c1 61 60 0f ff ff ff 00 00 00 00
6e 10 c1 61 40 e0 e0 e0 e0 00 00 00 00 6e 2c c1
61 40 e0 e0 e0 e0 00 00 00 00 3a 05 15 6e 40 c1
61 60 fd ff ff ff 02 00 00 00 98 0a 01 00 00 01
fe 01 71 98 02 01 00 00 01 d0 00 6e 10 c1 61 40
e0 e0 e0 e0 10 10 10 10 6e 2c c1 61 40 e0 e0 e0
e0 10 10 10 10 71 5f 0c c1 61 60 00 01 40 ff 40
00 00 00 00 40 65 61 80 fe bf 00 bf 3a 00 03 5b
14 1c 72 71 3a 07 01 38 6e 40 c1 61 60 fe ff ff
ff 01 00 00 00 72 5b 68 1d 52 e8 df 00 71 71 6e
0c c1 61 60 fe ff 00 ff 00 00 00 00 6e 30 c1 61
40 f0 ff ff ff 00 00 00 00 6e b0 c1 61 40 f0 ff
ff ff 00 00 00 00 6e 34 c0 61 40 ff ff ee 7f 00
00 11 80 56 17 ff 6e 14 c0 61 40 ff ff 7f ff 00
00 80 00 6e 00 23 61 40 ff ff fc ff 00 00 02 00
74 05 00 6e 14 c0 61 40 ff ff ff f2 00 00 00 0d
74 05 00 6e 14 c0 61 40 ff ff bf ff 00 00 40 00
74 05 00 6e 14 c0 61 40 f7 ff ff ff 08 00 00 00
6e 0c c0 61 40 ff f0 f0 f0 00 03 05 05 6e b8 c1
61 40 ff ff ff 81 00 03 00 08 6e 00 23 61 40 ff
ff 83 fc 00 00 00 00 6e 40 c1 61 60 fe ff ff ff
00 00 00 00 71 6e 0c c1 61 60 fd ff ff ff 02 00
00 00 6e 30 c1 61 60 ff ff bf ff 00 00 40 00 71
10 05 40 01 01 00 00 00 00 0a 10 00 00 00 a0 40
00 00 80 40 00 00 80 40 00 00 80 40 00 00 80 40
00 00 80 40 00 00 20 00 00 32 10 80 00 0a 90 80
00 00 80 80 00 00 80 80 00 00 80 80 00 00 80 80
00 00 80 80 00 71 71 6e 40 65 61 80 fe ff ff ff
00 00 00 00 71 71 98 07 01 00 00 01 ef 10 71 98
07 01 00 00 01 ef 00 71 58 40 c0 61 40 10 00 00
00 00 32 10 00 00 00 a0 40 00 00 80 40 00 00 80
40 00 00 80 40 00 00 80 40 00 00 80 40 00 00 20
00 00 32 10 80 00 96 90 80 00 00 80 80 00 00 80
80 00 00 80 80 00 00 80 80 00 00 80 80 00 71 42
15 02 07 13 04 03 0a 04 28 23 28 23 01 04 04 06
00 1d 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 14 00 02 19 0a 03 1e 14 04 2b 28 06 1e 00
03 25 0f 04 2f 21 06 28 00 04 32 14 06 3c 00 06
14 00 02 19 0a 03 1e 14 04 2b 28 06 1e 00 03 25
0f 04 2f 21 06 28 00 04 32 14 06 3c 00 06 14 00
02 19 0a 03 1e 14 04 2b 28 06 1e 00 03 25 0f 04
2f 21 06 28 00 04 32 14 06 3c 00 06 0f 00 02 16
09 03 1d 0e 04 27 12 06 17 00 03 21 09 04 27 0e
06 1f 00 04 27 09 06 27 00 06 62 1e 00 00 f2 1e
00 00 82 1f 00 00 12 20 00 00 a2 20 00 00 32 21
00 00 10 08 00 00 00 11 08 00 1e 00 00 00 00 01
05 05 00 40 00 00 00 00 00 30 00 14 00 00 00 00
01 05 05 00 40 00 00 00 00 00 30 00 10 00 00 00
00 01 05 05 00 40 00 00 00 00 00 30 00 0c 00 00
00 00 01 05 05 00 40 00 00 00 00 00 30 00 0a 00
00 00 00 01 05 05 00 40 00 00 00 00 00 30 00 09
00 00 00 00 01 05 05 00 40 00 00 00 00 00 30 00
08 00 00 00 00 01 05 05 00 40 00 00 00 00 00 30
00 06 00 00 00 00 01 05 05 00 40 00 00 00 00 00
30 00 10 08 00 00 00 11 08 00 1e 00 00 00 00 00
05 05 00 00 00 00 00 00 00 00 00 14 00 00 00 00
00 05 05 00 00 00 00 00 00 00 00 00 10 00 00 00
00 03 00 01 00 50 00 00 00 00 00 00 00 0c 00 00
00 00 03 00 01 00 50 00 00 00 00 00 00 00 0a 00
00 00 00 00 05 05 00 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 00
08 00 00 00 00 03 00 01 00 40 00 00 00 00 00 00
00 06 00 00 00 00 00 05 05 00 00 00 00 00 00 00
00 00 10 08 00 00 00 11 08 00 1e 00 00 00 00 00
05 05 00 00 00 00 00 00 00 00 00 14 00 00 00 00
00 05 05 00 00 00 00 00 00 00 00 00 10 00 00 00
00 03 00 01 00 50 00 00 00 00 00 00 00 0c 00 00
00 00 03 00 01 00 50 00 00 00 00 00 00 00 0a 00
00 00 00 00 05 05 00 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 00
08 00 00 00 00 03 00 01 00 40 00 00 00 00 00 00
00 06 00 00 00 00 00 05 05 00 00 00 00 00 00 00
00 00 10 08 00 00 00 11 08 00 1e 00 00 00 00 00
05 05 00 00 00 00 00 00 00 00 00 14 00 00 00 00
00 05 05 00 00 00 00 00 00 00 00 00 10 00 00 00
00 03 00 01 00 50 00 00 00 00 00 00 00 0c 00 00
00 00 03 00 01 00 50 00 00 00 00 00 00 00 0a 00
00 00 00 00 05 05 00 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 00
08 00 00 00 00 03 00 01 00 40 00 00 00 00 00 00
00 06 00 00 00 00 00 05 05 00 00 00 00 00 00 00
00 00 10 08 00 00 00 11 08 00 1e 00 00 00 00 00
05 05 00 00 00 00 00 00 00 00 00 14 00 00 00 00
00 05 05 00 00 00 00 00 00 00 00 00 10 00 00 00
00 03 00 01 00 50 00 00 00 00 00 00 00 0c 00 00
00 00 03 00 01 00 50 00 00 00 00 00 00 00 0a 00
00 00 00 00 05 05 00 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 00
08 00 00 00 00 03 00 01 00 40 00 00 00 00 00 00
00 06 00 00 00 00 00 05 05 00 00 00 00 00 00 00
00 00 10 08 00 00 00 11 08 00 1e 00 00 00 00 00
05 05 00 00 00 00 00 00 00 00 00 14 00 00 00 00
00 05 05 00 00 00 00 00 00 00 00 00 10 00 00 00
00 03 00 01 00 50 00 00 00 00 00 00 00 0c 00 00
00 00 03 00 01 00 50 00 00 00 00 00 00 00 0a 00
00 00 00 00 05 05 00 00 00 00 00 00 00 00 00 09
00 00 00 00 03 00 01 00 40 00 00 00 00 00 00 00
08 00 00 00 00 03 00 01 00 40 00 00 00 00 00 00
00 06 00 00 00 00 00 05 05 00 00 00 00 00 00 00
00 00 ];
};
};
};
};

View File

@@ -1,334 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
#include <dt-bindings/clock/tegra234-clock.h>
#include <dt-bindings/gpio/tegra234-gpio.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/memory/tegra234-mc.h>
#include <dt-bindings/power/tegra234-powergate.h>
#include <dt-bindings/reset/tegra234-reset.h>
#include "tegra234-soc-display-overlay.dtsi"
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
overlay-name = "Tegra234 Jetson Overlay";
compatible = "nvidia,tegra234";
fragment@0 {
target-path = "/bus@0/host1x@13e00000";
__overlay__ {
#address-cells = <1>;
#size-cells = <1>;
interrupt-parent = <&gic>;
ranges = <0x14800000 0x14800000 0x02000000>,
<0x24700000 0x24700000 0x00080000>;
nvjpg@15380000 {
compatible = "nvidia,tegra234-nvjpg";
reg = <0x15380000 0x00040000>;
clocks = <&bpmp TEGRA234_CLK_NVJPG>;
clock-names = "nvjpg";
resets = <&bpmp TEGRA234_RESET_NVJPG>;
reset-names = "nvjpg";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVJPGA>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVJPGSRD &emc>,
<&mc TEGRA234_MEMORY_CLIENT_NVJPGSWR &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso1 TEGRA234_SID_NVJPG>;
dma-coherent;
nvidia,host1x-class = <0xc0>;
};
nvdec@15480000 {
compatible = "nvidia,tegra234-nvdec";
reg = <0x15480000 0x00040000>;
clocks = <&bpmp TEGRA234_CLK_NVDEC>,
<&bpmp TEGRA234_CLK_FUSE>,
<&bpmp TEGRA234_CLK_TSEC_PKA>;
clock-names = "nvdec", "fuse", "tsec_pka";
resets = <&bpmp TEGRA234_RESET_NVDEC>;
reset-names = "nvdec";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVDEC>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVDECSRD &emc>,
<&mc TEGRA234_MEMORY_CLIENT_NVDECSWR &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso1 TEGRA234_SID_NVDEC>;
dma-coherent;
nvidia,memory-controller = <&mc>;
status = "okay";
};
nvenc@154c0000 {
compatible = "nvidia,tegra234-nvenc";
reg = <0x154c0000 0x00040000>;
clocks = <&bpmp TEGRA234_CLK_NVENC>;
clock-names = "nvenc";
resets = <&bpmp TEGRA234_RESET_NVENC>;
reset-names = "nvenc";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVENC>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVENCSRD &emc>,
<&mc TEGRA234_MEMORY_CLIENT_NVENCSWR &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso0 TEGRA234_SID_NVENC>;
dma-coherent;
};
nvjpg@15540000 {
compatible = "nvidia,tegra234-nvjpg";
reg = <0x15540000 0x00040000>;
clocks = <&bpmp TEGRA234_CLK_NVJPG1>;
clock-names = "nvjpg";
resets = <&bpmp TEGRA234_RESET_NVJPG1>;
reset-names = "nvjpg";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_NVJPGB>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_NVJPG1SRD &emc>,
<&mc TEGRA234_MEMORY_CLIENT_NVJPG1SWR &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso0 TEGRA234_SID_NVJPG1>;
dma-coherent;
nvidia,host1x-class = <0x07>;
};
nvdla0: nvdla0@15880000 {
compatible = "nvidia,tegra234-nvdla";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_DLAA>;
reg = <0x15880000 0x00040000>;
interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_HIGH>;
resets = <&bpmp TEGRA234_RESET_DLA0>;
clocks = <&bpmp TEGRA234_CLK_DLA0_CORE>,
<&bpmp TEGRA234_CLK_DLA0_FALCON>;
clock-names = "nvdla0", "nvdla0_flcn";
interconnects = <&mc TEGRA234_MEMORY_CLIENT_DLA0RDA &emc>,
<&mc TEGRA234_MEMORY_CLIENT_DLA0FALRDB &emc>,
<&mc TEGRA234_MEMORY_CLIENT_DLA0WRA &emc>,
<&mc TEGRA234_MEMORY_CLIENT_DLA0FALWRB &emc>;
interconnect-names = "dma-mem", "read-1", "write", "write-1";
iommus = <&smmu_niso1 TEGRA234_SID_NVDLA0>;
dma-coherent;
status = "okay";
};
nvdla1: nvdla1@158c0000 {
compatible = "nvidia,tegra234-nvdla";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_DLAB>;
reg = <0x158c0000 0x00040000>;
interrupts = <GIC_SPI 237 IRQ_TYPE_LEVEL_HIGH>;
resets = <&bpmp TEGRA234_RESET_DLA1>;
clocks = <&bpmp TEGRA234_CLK_DLA1_CORE>,
<&bpmp TEGRA234_CLK_DLA1_FALCON>;
clock-names = "nvdla1", "nvdla1_flcn";
interconnects = <&mc TEGRA234_MEMORY_CLIENT_DLA1RDA &emc>,
<&mc TEGRA234_MEMORY_CLIENT_DLA1FALRDB &emc>,
<&mc TEGRA234_MEMORY_CLIENT_DLA1WRA &emc>,
<&mc TEGRA234_MEMORY_CLIENT_DLA1FALWRB &emc>;
interconnect-names = "dma-mem", "read-1", "write", "write-1";
iommus = <&smmu_niso0 TEGRA234_SID_NVDLA1>;
dma-coherent;
status = "okay";
};
ofa@15a50000 {
compatible = "nvidia,tegra234-ofa";
reg = <0x15a50000 0x00040000>;
clocks = <&bpmp TEGRA234_CLK_OFA>;
clock-names = "ofa";
resets = <&bpmp TEGRA234_RESET_OFA>;
reset-names = "ofa";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_OFA>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_OFAR &emc>,
<&mc TEGRA234_MEMORY_CLIENT_OFAW &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso0 TEGRA234_SID_OFA>;
dma-coherent;
};
pva0: pva0@16000000 {
compatible = "nvidia,tegra234-pva";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PVA>;
reg = <0x16000000 0x800000>,
<0x24700000 0x080000>;
interrupts = <0 234 0x04>,
<0 432 0x04>,
<0 433 0x04>,
<0 434 0x04>,
<0 435 0x04>,
<0 436 0x04>,
<0 437 0x04>,
<0 438 0x04>,
<0 439 0x04>;
resets = <&bpmp TEGRA234_RESET_PVA0_ALL>;
clocks = <&bpmp TEGRA234_CLK_PVA0_CPU_AXI>,
<&bpmp TEGRA234_CLK_NAFLL_PVA0_VPS>,
<&bpmp TEGRA234_CLK_PVA0_VPS>;
clock-names = "axi", "vps0", "vps1";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0>;
dma-coherent;
status = "okay";
pva0_ctx0n1: pva0_niso1_ctx0 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM0>;
dma-coherent;
status = "okay";
};
pva0_ctx1n1: pva0_niso1_ctx1 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM1>;
dma-coherent;
status = "okay";
};
pva0_ctx2n1: pva0_niso1_ctx2 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM2>;
dma-coherent;
status = "okay";
};
pva0_ctx3n1: pva0_niso1_ctx3 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM3>;
dma-coherent;
status = "okay";
};
pva0_ctx4n1: pva0_niso1_ctx4 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM4>;
dma-coherent;
status = "okay";
};
pva0_ctx5n1: pva0_niso1_ctx5 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM5>;
dma-coherent;
status = "okay";
};
pva0_ctx6n1: pva0_niso1_ctx6 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM6>;
dma-coherent;
status = "okay";
};
pva0_ctx7n1: pva0_niso1_ctx7 {
compatible = "nvidia,pva-tegra186-iommu-context";
iommus = <&smmu_niso1 TEGRA234_SID_PVA0_VM7>;
dma-coherent;
status = "okay";
};
};
};
};
fragment@1 {
target-path = "/bus@0";
__overlay__ {
#address-cells = <1>;
#size-cells = <1>;
gpu@17000000 {
compatible = "nvidia,ga10b";
reg = <0x17000000 0x01000000>,
<0x18000000 0x01000000>,
<0x03b41000 0x00001000>;
interrupt-parent = <&gic>;
interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "stall0", "stall1", "stall2", "nonstall";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_GPU>;
clocks = <&bpmp TEGRA234_CLK_GPUSYS>,
<&bpmp TEGRA234_CLK_GPC0CLK>,
<&bpmp TEGRA234_CLK_GPC1CLK>;
clock-names = "sysclk", "gpc0clk", "gpc1clk";
resets = <&bpmp TEGRA234_RESET_GPU>;
dma-coherent;
nvidia,bpmp = <&bpmp>;
status = "okay";
};
tachometer@39c0000 {
compatible = "nvidia,pwm-tegra234-tachometer";
reg = <0x039c0000 0x10>;
interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
#pwm-cells = <2>;
clocks = <&bpmp TEGRA234_CLK_TACH0>;
clock-names = "tach";
resets = <&bpmp TEGRA234_RESET_TACH0>;
reset-names = "tach";
pulse-per-rev = <2>;
capture-window-length = <2>;
upper-threshold = <0xfffff>;
lower-threshold = <0x0>;
};
};
};
fragment@2 {
target-path = "/";
__overlay__ {
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
ranges;
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
dce@d800000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
};
};
fragment@3 {
target-path = "/bus@0";
board_config {
ids = "3737-0000-TS1","3737-0000-TS2","3737-0000-TS3","3737-0000-EB1","3737-0000-EB2","3737-0000-EB3","3737-0000-000","3737-0000-100","3737-0000-200";
};
__overlay__ {
i2c@c240000 {
ucsi_ccg@8 {
interrupt-parent = <&gpio_aon>;
interrupts = <TEGRA234_AON_GPIO(BB, 2) IRQ_TYPE_LEVEL_LOW>;
};
};
};
};
};

View File

@@ -1,161 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-p3737-0000-camera-imx274-dual.dtsi"
/ {
fragment-t234-p3701-0000@0 {
target-path = "/";
__overlay__ {
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
summation-bypass;
};
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "NC";
};
channel@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "NC";
};
};
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
};
};
hdr40_vdd_3v3: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "vdd-3v3-sys";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
interrupt-controller;
#interrupt-cells = <3>;
status = "okay";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
};
};
thermal-zones {
tboard-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 0>;
status = "okay";
};
tdiode-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 1>;
status = "okay";
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
};
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
compatible = "shared-dma-pool";
reusable;
size = <0x0 0x10000000>; /* 256MB */
alignment = <0x0 0x10000>;
linux,cma-default;
status = "okay";
};
};
};
};
fragment-t234-p3701-0000@1 {
target-path = "/";
board_config {
ids = "3701-0005-*","3701-0008-*";
};
__overlay__ {
reserved-memory {
linux,cma { /* Needed for nvgpu comptags */
size = <0x0 0x20000000>; /* 512MB */
};
};
};
};
};

View File

@@ -1,160 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/ {
fragment-t234-p3701-0008@0 {
target-path = "/";
__overlay__ {
bus@0 {
i2c@c240000 {
ina3221@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "VDD_GPU_SOC";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "VDD_CPU_CV";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "VIN_SYS_5V0";
shunt-resistor-micro-ohms = <2000>;
summation-bypass;
};
};
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "NC";
};
channel@1 {
reg = <0x1>;
label = "VDDQ_VDD2_1V8AO";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "NC";
};
};
};
i2c@c250000 {
ina3221@41 {
compatible = "ti,ina3221";
reg = <0x41>;
#address-cells = <1>;
#size-cells = <0>;
#io-channel-cells = <1>;
channel@0 {
reg = <0x0>;
label = "CVB_ATX_12V";
shunt-resistor-micro-ohms = <2000>;
};
channel@1 {
reg = <0x1>;
label = "CVB_ATX_3V3";
shunt-resistor-micro-ohms = <2000>;
};
channel@2 {
reg = <0x2>;
label = "CVB_ATX_5V";
shunt-resistor-micro-ohms = <2000>;
};
};
ina219@44 {
compatible = "ti,ina219";
reg = <0x44>;
shunt-resistor = <2000>;
label = "CVB_ATX_12V_8P";
};
};
spi@3270000 {
flash@0 {
spi-max-frequency = <51000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <1>;
};
};
};
bpmp {
i2c {
vrs@3c {
compatible = "nvidia,vrs-pseq";
reg = <0x3c>;
interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
interrupt-controller;
#interrupt-cells = <3>;
status = "okay";
};
vrs11_1@20 {
compatible = "nvidia,vrs11";
reg = <0x20>;
rail-name-loopA = "GPU";
rail-name-loopB = "CPU";
};
vrs11_2@22 {
compatible = "nvidia,vrs11";
reg = <0x22>;
rail-name-loopA = "SOC";
rail-name-loopB = "CV";
};
tegra_tmp451: thermal-sensor@4c {
compatible = "ti,tmp451";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
#thermal-sensor-cells = <1>;
status = "okay";
};
};
};
eeprom-manager {
bus@0 {
i2c-bus = <&gen1_i2c>;
eeprom@0 {
slave-address = <0x50>;
label = "cvm";
};
};
};
thermal-zones {
tboard-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 0>;
status = "okay";
};
tdiode-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
thermal-sensors = <&tegra_tmp451 1>;
status = "okay";
};
};
};
};
};

View File

@@ -0,0 +1,20 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
overlay-name = "Tegra234 p3701-0000-as-p3701-0004 Emulation Overlay";
fragment-t234-p3701-0000-as-p3701-0004@0 {
target-path = "/";
board_config {
ids = "3701-0000-*", "3701-0005-*";
};
__overlay__ {
compatible = "nvidia,p3737-0000+p3701-0000-as-p3701-0004", "nvidia,tegra234";
model = "Jetson AGX Orin as JAO-40W";
};
};
};

View File

@@ -0,0 +1,38 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
overlay-name = "Tegra234 p3701-0000-as-p3767-0000 Emulation Overlay";
fragment-t234-p3701-0000-as-p3767-0000@0 {
target-path = "/";
board_config {
ids = "3701-0000-*", "3701-0005-*";
};
__overlay__ {
compatible = "nvidia,p3737-0000+p3701-0000-as-p3767-0000", "nvidia,tegra234";
model = "Jetson AGX Orin as NX-16GB";
opp-table-cluster0 {
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
};
};
};

View File

@@ -0,0 +1,45 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
overlay-name = "Tegra234 p3701-0000-as-p3767-0001 Emulation Overlay";
fragment-t234-p3701-0000-as-p3767-0001@0 {
target-path = "/";
board_config {
ids = "3701-0000-*", "3701-0005-*";
};
__overlay__ {
compatible = "nvidia,p3737-0000+p3701-0000-as-p3767-0001", "nvidia,tegra234";
model = "Jetson AGX Orin as NX-8GB";
bus@0 {
host1x@13e00000 {
nvdla1@158c0000 {
status = "disabled";
};
};
};
opp-table-cluster0 {
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1984000000 { /* Max CPU freq for ONX */
opp-hz = /bits/ 64 <1984000000>;
opp-peak-kBps = <3200000>;
};
};
};
};
};

View File

@@ -0,0 +1,78 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
overlay-name = "Tegra234 p3701-0000-as-p3767-0003 Emulation Overlay";
fragment-t234-p3701-0000-as-p3767-0003@0 {
target-path = "/";
board_config {
ids = "3701-0000-*", "3701-0005-*";
};
__overlay__ {
compatible = "nvidia,p3737-0000+p3701-0000-as-p3767-0003", "nvidia,tegra234";
model = "Jetson AGX Orin as Nano 8GB";
bus@0 {
host1x@13e00000 {
nvdla0@15880000 {
status = "disabled";
};
nvdla1@158c0000 {
status = "disabled";
};
pva0@16000000 {
status = "disabled";
};
nvenc@154c0000 {
status = "disabled";
};
};
/* C1 */
pcie@14100000 {
max-link-speed = <0x3>;
};
/* C4 */
pcie@14160000 {
max-link-speed = <0x3>;
};
/* C4 End Point */
pcie-ep@14160000 {
max-link-speed = <0x3>;
};
/* C7 */
pcie@141e0000 {
max-link-speed = <0x3>;
};
/* C8 */
pcie@140a0000 {
max-link-speed = <0x3>;
};
/* C9 */
pcie@140c0000 {
max-link-speed = <0x3>;
};
};
opp-table-cluster0 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
};
};
};
};

View File

@@ -0,0 +1,78 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
/ {
overlay-name = "Tegra234 p3701-0000-as-p3767-0004 Emulation Overlay";
fragment-t234-p3701-0000-as-p3767-0004@0 {
target-path = "/";
board_config {
ids = "3701-0000-*", "3701-0005-*";
};
__overlay__ {
compatible = "nvidia,p3737-0000+p3701-0000-as-p3767-0004", "nvidia,tegra234";
model = "Jetson AGX Orin as Nano 4GB";
bus@0 {
host1x@13e00000 {
nvdla0@15880000 {
status = "disabled";
};
nvdla1@158c0000 {
status = "disabled";
};
pva0@16000000 {
status = "disabled";
};
nvenc@154c0000 {
status = "disabled";
};
};
/* C1 */
pcie@14100000 {
max-link-speed = <0x3>;
};
/* C4 */
pcie@14160000 {
max-link-speed = <0x3>;
};
/* C4 End Point */
pcie-ep@14160000 {
max-link-speed = <0x3>;
};
/* C7 */
pcie@141e0000 {
max-link-speed = <0x3>;
};
/* C8 */
pcie@140a0000 {
max-link-speed = <0x3>;
};
/* C9 */
pcie@140c0000 {
max-link-speed = <0x3>;
};
};
opp-table-cluster0 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster1 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
};
opp-table-cluster2 {
opp-1510400000 { /* Max CPU freq for Orin Nano */
opp-hz = /bits/ 64 <1510400000>;
opp-peak-kBps = <3200000>;
};
};
};
};
};

View File

@@ -0,0 +1,13 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
*
* Device-tree overlay for Adafruit I2S MEMS Microphone Breakout
* (SPH0645LM4H) with board tegra234-p3737-0000-p3701-0000.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
#include <overlay/jetson-audio-adafruit-sph0645lm4h.dtsi>

View File

@@ -0,0 +1,13 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for Adafruit I2S Stereo Decoder Breakout with board
* tegra234-p3737-0000-p3701-0000.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
#include <overlay/jetson-audio-adafruit-uda1334a.dtsi>

View File

@@ -0,0 +1,12 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for FE-PI Audio V1 and Z V2 with board
* tegra234-p3737-0000-p3701-0000.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
#include <overlay/jetson-audio-fe-pi.dtsi>

View File

@@ -0,0 +1,12 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for ReSpeaker 4-Mic Array with board
* tegra234-p3737-0000-p3701-0000.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
#include <overlay/jetson-audio-respeaker-4-mic-array.dtsi>

View File

@@ -0,0 +1,12 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for ReSpeaker 4-Mic Array with board
* tegra234-p3737-0000-p3701-0000.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
#include <overlay/jetson-audio-respeaker-4-mic-lin-array.dtsi>

View File

@@ -0,0 +1,110 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for tegra234-p3737-0000-p3701-0000 CSI Camera Connector.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/pinctrl/pinctrl-tegra.h>
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
/ {
overlay-name = "Jetson AGX CSI Connector";
compatible = JETSON_COMPATIBLE;
p3737-0000_p3701-0000-csi@0 {
target = <&pinmux>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&jetson_io_pinmux>;
jetson_io_pinmux: exp-header-pinmux {
csi-pin75 {
nvidia,pins = "cam_i2c_scl_pp2";
};
csi-pin76a {
nvidia,pins = "spi5_cs0_pac3";
nvidia,function = "i2s3";
nvidia,pin-label = "i2s3_fs";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
csi-pin76b {
nvidia,pins = "spi5_cs0_pac3";
nvidia,function = "dmic2";
nvidia,pin-label = "dmic2_clk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
csi-pin77 {
nvidia,pins = "cam_i2c_sda_pp3";
};
csi-pin90a{
nvidia,pins = "spi5_sck_pac0";
nvidia,function = "i2s3";
nvidia,pin-label = "i2s3_sclk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
csi-pin90b {
nvidia,pins = "spi5_sck_pac0";
nvidia,function = "dspk0";
nvidia,pin-label = "dspk0_dat";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
csi-pin92a {
nvidia,pins = "spi5_miso_pac1";
nvidia,function = "i2s3";
nvidia,pin-label = "i2s3_dout";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
csi-pin92b {
nvidia,pins = "spi5_miso_pac1";
nvidia,function = "dspk0";
nvidia,pin-label = "dspk0_clk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
csi-pin96a {
nvidia,pins = "spi5_mosi_pac2";
nvidia,function = "i2s3";
nvidia,pin-label="i2s3_din";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
csi-pin96b {
nvidia,pins = "spi5_mosi_pac2";
nvidia,function = "dmic2";
nvidia,pin-label="dmic2_dat";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
csi-pin105 {
nvidia,pins = "dp_aux_ch3_p_pn7";
};
csi-pin107 {
nvidia,pins = "dp_aux_ch3_n_pn0";
};
};
};
};
fragment@1 {
target = <&pinmux_aon>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&jetson_io_pinmux_aon>;
jetson_io_pinmux_aon: exp-header-pinmux {
csi-pin87 {
nvidia,pins = "gen2_i2c_scl_pcc7";
};
csi-pin89 {
nvidia,pins = "gen2_i2c_sda_pdd0";
};
};
};
};
};

View File

@@ -0,0 +1,124 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2023-2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
#include <dt-bindings/gpio/tegra234-gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include "tegra234-p3737-camera-modules.dtsi"
/ {
overlay-name = "Tegra234 p3737-0000+p3701-xxxx Dynamic Overlay";
fragment-t234-p3737-0000-p3701-0000@0 {
target-path = "/";
board_config {
ids = ">=3737-0000-TS4", ">=3737-0000-RC1", ">=3737-0000-300";
};
__overlay__ {
bus@0 {
i2c@31e0000 {
rt5640: audio-codec@1c {
#sound-dai-cells = <1>;
status = "okay";
};
};
};
sound {
nvidia-audio-card,widgets =
"Headphone", "CVB-RT Headphone Jack",
"Microphone", "CVB-RT Mic Jack",
"Speaker", "CVB-RT Int Spk",
"Microphone", "CVB-RT Int Mic";
nvidia-audio-card,routing =
"CVB-RT Headphone Jack", "CVB-RT HPOL",
"CVB-RT Headphone Jack", "CVB-RT HPOR",
"CVB-RT IN1P", "CVB-RT Mic Jack",
"CVB-RT IN2P", "CVB-RT Mic Jack",
"CVB-RT Int Spk", "CVB-RT SPOLP",
"CVB-RT Int Spk", "CVB-RT SPORP",
"CVB-RT DMIC1", "CVB-RT Int Mic",
"CVB-RT DMIC2", "CVB-RT Int Mic";
nvidia-audio-card,dai-link@76 {
link-name = "rt5640-playback";
codec {
sound-dai = <&rt5640 0>;
prefix = "CVB-RT";
};
};
};
};
};
fragment-t234-p3737-0000-p3701-0000@1 {
target-path = "/";
board_config {
ids = "3737-0000-TS1","3737-0000-TS2","3737-0000-TS3","3737-0000-EB1","3737-0000-EB2","3737-0000-EB3","3737-0000-000","3737-0000-100","3737-0000-200";
};
__overlay__ {
bus@0{
i2c@c240000 {
typec@8 {
interrupt-parent = <&gpio_aon>;
interrupts = <TEGRA234_AON_GPIO(BB, 2) IRQ_TYPE_LEVEL_LOW>;
};
};
pcie-ep@141a0000 {
nvidia,refclk-select-gpios = <&gpio_aon
TEGRA234_AON_GPIO(AA, 4)
GPIO_ACTIVE_HIGH>;
};
};
regulator-vdd-3v3-pcie {
gpio = <&gpio TEGRA234_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
};
};
};
/* PCIe 12V supply through NCP for TS3 */
fragment-t234-p3737-0000-p3701-0000@2 {
target-path = "/";
board_config {
ids = "3737-0000-TS3","3737-0000-200","3737-0000-300","3737-0000-EB3";
};
__overlay__ {
bus@0{
i2c@c240000 {
ncp_12v_pcie_supply: ncp81599@74 {
compatible = "nvidia,ncp81599";
reg = <0x74>;
regulator-name = "ncp81599";
ncp81599-supply = <&vdd_5v0_sys>;
status = "okay";
};
};
pcie@141a0000 {
vpcie12v-supply = <&ncp_12v_pcie_supply>;
};
pcie-ep@141a0000 {
vpcie12v-supply = <&ncp_12v_pcie_supply>;
};
};
};
};
/* PCIe C5 endpoint */
fragment-t234-p3737-0000-p3701-0000-pcie-c5-ep@0 {
target-path = "/bus@0";
board_config {
odm-data = "nvhs-uphy-config-1";
};
__overlay__ {
pcie@141a0000 {
status = "disabled";
};
pcie-ep@141a0000 {
status = "okay";
};
};
};
};

View File

@@ -0,0 +1,218 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for tegra234-p3737-0000-p3701-0000 40-pin
* Expansion Header.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/pinctrl/pinctrl-tegra.h>
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
/ {
overlay-name = "Jetson 40pin Header";
compatible = JETSON_COMPATIBLE;
p3737-0000_p3701-0000-hdr40@0 {
target = <&pinmux>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&jetson_io_pinmux>;
jetson_io_pinmux: exp-header-pinmux {
hdr40-pin7 {
nvidia,pins = "soc_gpio33_pq6";
nvidia,function = "extperiph4";
nvidia,pin-group = "extperiph4_clk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin8 {
nvidia,pins = "uart1_tx_pr2";
};
hdr40-pin10 {
nvidia,pins = "uart1_rx_pr3";
};
hdr40-pin11 {
nvidia,pins = "uart1_rts_pr4";
nvidia,function = "uarta";
nvidia,pin-group = "uarta-cts/rts";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin12 {
nvidia,pins = "soc_gpio41_ph7";
nvidia,function = "i2s2";
nvidia,pin-label = "i2s2_sclk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin13 {
nvidia,pins = "soc_gpio37_pr0";
nvidia,function = "gp";
nvidia,pin-group = "pwm8";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin15 {
nvidia,pins = "soc_gpio39_pn1";
nvidia,function = "gp";
nvidia,pin-group = "pwm1";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin18 {
nvidia,pins = "soc_gpio21_ph0";
nvidia,function = "gp";
nvidia,pin-group = "pwm5";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin19 {
nvidia,pins = "spi1_mosi_pz5";
nvidia,function = "spi1";
nvidia,pin-label = "spi1_dout";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin21 {
nvidia,pins = "spi1_miso_pz4";
nvidia,function = "spi1";
nvidia,pin-label = "spi1_din";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin23 {
nvidia,pins = "spi1_sck_pz3";
nvidia,function = "spi1";
nvidia,pin-label = "spi1_sck";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin24 {
nvidia,pins = "spi1_cs0_pz6";
nvidia,function = "spi1";
nvidia,pin-label = "spi1_cs0";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin26 {
nvidia,pins = "spi1_cs1_pz7";
nvidia,function = "spi1";
nvidia,pin-label = "spi1_cs1";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin35 {
nvidia,pins = "soc_gpio44_pi2";
nvidia,function = "i2s2";
nvidia,pin-label = "i2s2_fs";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin36 {
nvidia,pins = "uart1_cts_pr5";
nvidia,function = "uarta";
nvidia,pin-group = "uarta-cts/rts";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin38 {
nvidia,pins = "soc_gpio43_pi1";
nvidia,function = "i2s2";
nvidia,pin-label = "i2s2_din";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin40 {
nvidia,pins = "soc_gpio42_pi0";
nvidia,function = "i2s2";
nvidia,pin-label = "i2s2_dout";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
};
};
};
fragment@1 {
target = <&pinmux_aon>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&jetson_io_pinmux_aon>;
jetson_io_pinmux_aon: exp-header-pinmux {
hdr40-pin3 {
nvidia,pins = "gen8_i2c_scl_pdd1";
nvidia,pin-label = "i2c8";
};
hdr40-pin5 {
nvidia,pins = "gen8_i2c_sda_pdd2";
nvidia,pin-label = "i2c8";
};
hdr40-pin16a {
nvidia,pins = "can1_en_pbb1";
nvidia,function = "dmic3";
nvidia,pin-label = "dmic3_dat";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin16b {
nvidia,pins = "can1_en_pbb1";
nvidia,function = "dmic5";
nvidia,pin-label = "dmic5_dat";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin27 {
nvidia,pins = "gen2_i2c_sda_pdd0";
};
hdr40-pin28 {
nvidia,pins = "gen2_i2c_scl_pcc7";
};
hdr40-pin29 {
nvidia,pins = "can0_din_paa1";
nvidia,function = "can0";
nvidia,pin-label = "can0_din";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
hdr40-pin31 {
nvidia,pins = "can0_dout_paa0";
nvidia,function = "can0";
nvidia,pin-label = "can0_dout";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin32a {
nvidia,pins = "can1_stb_pbb0";
nvidia,function = "dmic3";
nvidia,pin-label = "dmic3_clk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin32b {
nvidia,pins = "can1_stb_pbb0";
nvidia,function = "dmic5";
nvidia,pin-label = "dmic5_clk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin33 {
nvidia,pins = "can1_dout_paa2";
nvidia,function = "can1";
nvidia,pin-label = "can1_dout";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
hdr40-pin37 {
nvidia,pins = "can1_din_paa3";
nvidia,function = "can1";
nvidia,pin-label = "can1_din";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
};
};
};
};

View File

@@ -0,0 +1,72 @@
// SPDX-License-Identifier: GPL-2.0-only
// SPDX-FileCopyrightText: Copyright (c) 2021-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/*
* Device-tree overlay for tegra234-p3737-0000-p3701-0000 M.2 Key E Slot.
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/pinctrl/pinctrl-tegra.h>
#include <dt-bindings/tegra234-p3737-0000+p3701-0000.h>
/ {
overlay-name = "Jetson M.2 Key E Slot";
compatible = JETSON_COMPATIBLE;
p3737-0000_p3701-0000-m2ke@0 {
target = <&pinmux>;
__overlay__ {
pinctrl-names = "default";
pinctrl-0 = <&jetson_io_pinmux>;
jetson_io_pinmux: exp-header-pinmux {
m2ke-pin8 {
nvidia,pins = "dap4_sclk_pa4";
nvidia,function = "i2s4";
nvidia,pin-label = "i2s4_sclk";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
m2ke-pin10 {
nvidia,pins = "dap4_fs_pa7";
nvidia,function = "i2s4";
nvidia,pin-label = "i2s4_fs";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
m2ke-pin12 {
nvidia,pins = "dap4_din_pa6";
nvidia,function = "i2s4";
nvidia,pin-label = "i2s4_din";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
};
m2ke-pin14 {
nvidia,pins = "dap4_dout_pa5";
nvidia,function = "i2s4";
nvidia,pin-label = "i2s4_dout";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
};
m2ke-pin22 {
nvidia,pins = "uart2_rx_px5";
};
m2ke-pin32 {
nvidia,pins = "uart2_tx_px4";
};
m2ke-pin34 {
nvidia,pins = "uart2_cts_px7";
};
m2ke-pin36 {
nvidia,pins = "uart2_rts_px6";
};
m2ke-pin58 {
nvidia,pins = "dp_aux_ch3_n_pn0";
};
m2ke-pin60 {
nvidia,pins = "dp_aux_ch3_p_pn7";
};
};
};
};
};

View File

@@ -1,339 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
/dts-v1/;
/plugin/;
#include "tegra234-overlay.dtsi"
#include "tegra234-soc-thermal.dtsi"
#include "tegra234-soc-thermal-shutdown.dtsi"
#include "tegra234-soc-audio-dai-links.dtsi"
#include "tegra234-soc-camera.dtsi"
#include "tegra234-p3737-0000.dtsi"
#include "tegra234-p3701-0000.dtsi"
#include "tegra234-dcb-p3737-0000-p3701-0000.dtsi"
/ {
compatible = "nvidia,p3737-0000+p3701-0000";
fragment-t234-p3737-p3701@0 {
target-path = "/";
__overlay__ {
bpmp {
thermal {
status = "okay";
};
};
cpus {
idle-states {
c7 {
status = "okay";
};
};
};
nvpmodel {
status = "okay";
};
scf-pmu {
status = "okay";
};
soctherm-oc-event {
status = "okay";
};
thermal-zones {
cpu-thermal {
status = "okay";
};
cv0-thermal {
status = "okay";
};
cv1-thermal {
status = "okay";
};
cv2-thermal {
status = "okay";
};
gpu-thermal {
status = "okay";
};
soc0-thermal {
status = "okay";
};
soc1-thermal {
status = "okay";
};
soc2-thermal {
status = "okay";
};
tj-thermal {
status = "okay";
};
};
bus@0 {
smmu_test {
compatible = "nvidia,smmu_test";
iommus = <&smmu_niso0 TEGRA234_SID_SMMU_TEST>;
status = "okay";
};
watchdog@2190000 {
status = "okay";
};
pinmux@2430000 {
status = "okay";
};
ufshci@2500000 {
status = "okay";
};
aconnect@2900000 {
ahub@2900800 {
i2s@2901200 {
status = "okay";
};
i2s@2901400 {
status = "okay";
};
dmic@2904000 {
status = "okay";
};
dmic@2904100 {
status = "okay";
};
dmic@2904300 {
status = "okay";
};
dspk@2905000 {
status = "okay";
};
dspk@2905100 {
status = "okay";
};
afc@2907000 {
status = "okay";
};
afc@2907100 {
status = "okay";
};
afc@2907200 {
status = "okay";
};
afc@2907300 {
status = "okay";
};
afc@2907400 {
status = "okay";
};
afc@2907500 {
status = "okay";
};
arad@290e400 {
status = "okay";
};
};
};
serial@3110000 {
status = "okay";
};
i2c@3180000 {
status = "okay";
};
i2c@3190000 {
status = "okay";
};
i2c@31b0000 {
nvidia,hw-instance-id = <0x5>;
status = "okay";
};
i2c@31c0000 {
status = "okay";
};
serial@31d0000 {
status = "okay";
};
i2c@31e0000 {
status = "okay";
};
usb@3550000 {
status = "okay";
};
tachometer@39c0000 {
status = "okay";
};
hsp@3d00000 {
status = "okay";
};
ethernet@6800000 {
status = "okay";
};
aon@c000000 {
status = "okay";
};
i2c@c240000 {
status = "okay";
};
hdr40_i2c1: i2c@c250000 {
status = "okay";
};
rtc@c2a0000 {
status = "okay";
};
actmon@d230000 {
status = "okay";
};
hwpm@f100000 {
status = "okay";
};
host1x@13e00000 {
nvjpg@15380000 {
status = "okay";
};
nvdec@15480000 {
status = "okay";
};
nvenc@154c0000 {
status = "okay";
};
tsec@15500000 {
status = "okay";
};
nvjpg@15540000 {
status = "okay";
};
se@15810000 {
status = "okay";
};
se@15820000 {
status = "okay";
};
se@15840000 {
status = "okay";
};
nvdla0@15880000 {
status = "okay";
};
nvdla1@158c0000 {
status = "okay";
};
ofa@15a50000 {
status = "okay";
};
pva0@16000000 {
status = "okay";
pva0_niso1_ctx0 {
status = "okay";
};
pva0_niso1_ctx1 {
status = "okay";
};
pva0_niso1_ctx2 {
status = "okay";
};
pva0_niso1_ctx3 {
status = "okay";
};
pva0_niso1_ctx4 {
status = "okay";
};
pva0_niso1_ctx5 {
status = "okay";
};
pva0_niso1_ctx6 {
status = "okay";
};
pva0_niso1_ctx7 {
status = "okay";
};
};
};
gpu@17000000 {
status = "okay";
};
};
tegra-hsp@b950000 {
status = "okay";
};
dce@d800000 {
status = "okay";
};
tegra_mce@e100000 {
status = "okay";
};
display@13800000 {
status = "okay";
};
};
};
};

View File

@@ -1,106 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2018-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-camera-ar0234-a00.dtsi"
#include <dt-bindings/clock/tegra234-clock.h>
#define CAM0_RST_L TEGRA234_MAIN_GPIO(H, 3)
#define CAM0_PWDN TEGRA234_MAIN_GPIO(H, 6)
#define CAM1_RST_L TEGRA234_MAIN_GPIO(AC, 1)
#define CAM1_PWDN TEGRA234_MAIN_GPIO(AC, 0)
#define PWR_EN TEGRA234_MAIN_GPIO(AC, 7)
#define CAMERA_I2C_MUX_BUS(x) (0x1E + x)
/* camera control gpio definitions */
/ {
fragment-camera-ar0234@0 {
target-path = "/";
__overlay__ {
bus@0{
i2c@3180000 {
tca9546@70 {
compatible = "nxp,pca9546";
reg = <0x70>;
#address-cells = <1>;
#size-cells = <0>;
skip_mux_detect = "yes";
force_bus_start = <CAMERA_I2C_MUX_BUS(0)>;
i2c@0 {
reg = <0>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
max96712_a@62 {
compatible = "nvidia,max96712";
reg = <0x62>;
channel = "a";
};
ar0234_a@18 {
def-addr = <0x18>;
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_EXTPERIPH1>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
channel = "a";
has-eeprom;
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
pwr-gpios = <&gpio PWR_EN GPIO_ACTIVE_HIGH>;
};
ar0234_b@10 {
def-addr = <0x10>;
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_EXTPERIPH1>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
channel = "n";
has-eeprom;
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
pwr-gpios = <&gpio PWR_EN GPIO_ACTIVE_HIGH>;
};
};
i2c@1 {
reg = <1>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ar0234_c@18 {
def-addr = <0x18>;
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_EXTPERIPH1>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
channel = "n";
has-eeprom;
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
pwr-gpios = <&gpio PWR_EN GPIO_ACTIVE_HIGH>;
};
ar0234_d@10 {
ef-addr = <0x10>;
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_EXTPERIPH1>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
channel = "n";
has-eeprom;
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
pwr-gpios = <&gpio PWR_EN GPIO_ACTIVE_HIGH>;
};
};
};
};
};
};
};
};

View File

@@ -1,53 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-camera-e3331-a00.dtsi"
#include <dt-bindings/clock/tegra234-clock.h>
/* camera control gpio definitions */
#define CAM0_RST_L TEGRA234_MAIN_GPIO(H, 3)
#define CAMERA_I2C_MUX_BUS(x) (0x1E + x)
/* TODO: Re-enable cam1 and cam2*/
/ {
fragment-camera-imx318@0 {
target-path = "/";
__overlay__ {
bus@0 {
gpio@2200000 {
camera-control-output-low {
gpio-hog;
output-low;
gpios = <CAM0_RST_L 0>;
label = "cam0-rst";
};
};
i2c@3180000 {
tca9546_70: tca9546@70 {
compatible = "nxp,pca9546";
reg = <0x70>;
#address-cells = <1>;
#size-cells = <0>;
skip_mux_detect;
force_bus_start = <CAMERA_I2C_MUX_BUS(0)>;
i2c@0 {
reg = <0>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
imx318_a@10 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
clock-frequency = <24000000>;
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
};
};
};
};
};
};
};
};

View File

@@ -1,155 +0,0 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2015-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-camera-e3333-a00.dtsi"
#include <dt-bindings/gpio/tegra234-gpio.h>
#define CAM0_RST_L TEGRA234_MAIN_GPIO(H, 3)
#define CAM0_PWDN TEGRA234_MAIN_GPIO(H, 6)
#define CAM1_RST_L TEGRA234_MAIN_GPIO(AC, 1)
#define CAM1_PWDN TEGRA234_MAIN_GPIO(AC, 0)
#define CAMERA_I2C_MUX_BUS(x) (0x1E + x)
/ {
fragment-camera-e3333@0 {
target-path = "/";
__overlay__ {
bus@0 {
gpio@2200000 {
camera-control-output-low {
gpio-hog;
output-low;
gpios = <CAM0_RST_L 0 CAM0_PWDN 0
CAM1_RST_L 0 CAM1_PWDN 0>;
label = "cam0-rst", "cam0-pwdn",
"cam1-rst", "cam1-pwdn";
};
};
i2c@3180000 {
tca6408_21: tca6408@21 {
compatible = "ti,tca6408";
gpio-controller;
#gpio-cells = <2>;
reg = <0x21>;
tca6408_21_outlow {
gpio-hog;
gpios = <0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0>;
output-low;
label = "tca6408_21_outlow_0",
"tca6408_21_outlow_1",
"tca6408_21_outlow_2",
"tca6408_21_outlow_3",
"tca6408_21_outlow_4",
"tca6408_21_outlow_5",
"tca6408_21_outlow_6",
"tca6408_21_outlow_7";
status = "okay";
};
};
tca9548_77: tca9548@77 {
compatible = "nxp,pca9548";
reg = <0x77>;
#address-cells = <1>;
#size-cells = <0>;
/* vcc-supply = <&p3737_vdd_1v8_sys>; */
skip_mux_detect;
force_bus_start = <CAMERA_I2C_MUX_BUS(0)>;
i2c@0 {
reg = <0>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_a@36 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
clock-frequency = <24000000>;
reset-gpios = <&gpio CAM0_RST_L GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio CAM0_PWDN GPIO_ACTIVE_HIGH>;
};
};
i2c@1 {
reg = <1>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_b@36 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
clock-frequency = <24000000>;
reset-gpios = <&gpio CAM1_RST_L GPIO_ACTIVE_HIGH>;
pwdn-gpios = <&gpio CAM1_PWDN GPIO_ACTIVE_HIGH>;
};
};
i2c@2 {
reg = <2>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_c@36 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH1>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph1", "pllp_grtba";
mclk = "extperiph1";
clock-frequency = <24000000>;
pwdn-gpios = <&tca6408_21 0 GPIO_ACTIVE_HIGH>;
reset-gpios = <&tca6408_21 1 GPIO_ACTIVE_HIGH>;
};
};
i2c@3 {
reg = <3>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_d@36 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH2>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph2", "pllp_grtba";
mclk = "extperiph2";
clock-frequency = <24000000>;
pwdn-gpios = <&tca6408_21 2 GPIO_ACTIVE_HIGH>;
reset-gpios = <&tca6408_21 3 GPIO_ACTIVE_HIGH>;
};
};
i2c@4 {
reg = <4>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_e@36 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH2>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph2", "pllp_grtba";
mclk = "extperiph2";
clock-frequency = <24000000>;
pwdn-gpios = <&tca6408_21 4 GPIO_ACTIVE_HIGH>;
reset-gpios = <&tca6408_21 5 GPIO_ACTIVE_HIGH>;
};
};
i2c@5 {
reg = <5>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_g@36 {
clocks = <&bpmp TEGRA234_CLK_EXTPERIPH2>,
<&bpmp TEGRA234_CLK_PLLP_OUT0>;
clock-names = "extperiph2", "pllp_grtba";
mclk = "extperiph2";
clock-frequency = <24000000>;
pwdn-gpios = <&tca6408_21 6 GPIO_ACTIVE_HIGH>;
reset-gpios = <&tca6408_21 7 GPIO_ACTIVE_HIGH>;
};
};
};
};
};
};
};
};

View File

@@ -1,12 +1,11 @@
// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2017-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
#include "tegra234-camera-imx185-a00.dtsi"
#include <dt-bindings/clock/tegra234-clock.h>
#include <dt-bindings/gpio/tegra234-gpio.h>
#define CAM0_RST_L TEGRA234_MAIN_GPIO(H, 3)
#define CAMERA_I2C_MUX_BUS(x) (0x1E + x)
/* camera control gpio definitions */
@@ -30,7 +29,6 @@
#address-cells = <1>;
#size-cells = <0>;
skip_mux_detect = "yes";
force_bus_start = <CAMERA_I2C_MUX_BUS(0)>;
i2c@0 {
reg = <0>;
@@ -58,27 +56,4 @@
};
};
};
fragment-camera-imx185@0 {
target-path = "/";
__overlay__ {
eeprom-manager {
bus@1 {
i2c-bus = <&cam_i2c>;
eeprom@0 {
slave-address = <0x54>;
label = "sensor0";
};
eeprom@1 {
slave-address = <0x57>;
label = "sensor1";
};
eeprom@2 {
slave-address = <0x52>;
label = "sensor2";
};
};
};
};
};
};

Some files were not shown because too many files have changed in this diff Show More