p3737: Move enabling & configuration of XUSB padcontrol to overlay

The platform specific configuration of XUSB padcontroller and
controller are not upstreamed yet hence doing the configuration
via overlay file.

Move the configuration and enabling of these controller to the
overlay file.

Bug 4032485

Change-Id: Ib9db6fd2c91b2056604226458db1da0bea2c32af
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/platform/t23x/concord-generic-dts/+/2872291
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
Laxman Dewangan
2023-03-25 14:36:03 +00:00
parent 258536b3de
commit 5389aa10e4
4 changed files with 208 additions and 177 deletions

View File

@@ -3,4 +3,133 @@
/ {
fragment-t234-p3737-0000@0 {
target-path = "/";
__overlay__ {
bus@0 {
padctl@3520000 {
ports {
usb2-0 {
mode = "otg";
usb-role-switch;
port {
hs_typec_p1: endpoint {
remote-endpoint = <&hs_ucsi_ccg_p1>;
};
};
};
usb2-1 {
mode = "host";
port {
hs_typec_p0: endpoint {
remote-endpoint = <&hs_ucsi_ccg_p0>;
};
};
};
usb2-2 {
mode = "host";
};
usb2-3 {
mode = "host";
};
usb3-0 {
nvidia,usb2-companion = <1>;
port {
ss_typec_p0: endpoint {
remote-endpoint = <&ss_ucsi_ccg_p0>;
};
};
};
usb3-1 {
nvidia,usb2-companion = <0>;
port {
ss_typec_p1: endpoint {
remote-endpoint = <&ss_ucsi_ccg_p1>;
};
};
};
usb3-2 {
nvidia,usb2-companion = <3>;
};
};
};
usb@3550000 {
phys = <&xpads_usb2_lanes_usb2_0>,
<&xpads_usb3_lanes_usb3_1>;
phy-names = "usb2-0", "usb3-1";
};
usb@3610000 {
phys = <&xpads_usb2_lanes_usb2_0>,
<&xpads_usb2_lanes_usb2_1>,
<&xpads_usb2_lanes_usb2_2>,
<&xpads_usb2_lanes_usb2_3>,
<&xpads_usb3_lanes_usb3_0>,
<&xpads_usb3_lanes_usb3_1>,
<&xpads_usb3_lanes_usb3_2>;
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3",
"usb3-0", "usb3-1", "usb3-2";
};
i2c@c240000 {
ucsi-ccg@8 {
compatible = "cypress,cypd4226";
cypress,firmware-build = "nvidia,jetson-agx-xavier";
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>;
reg = <0x08>;
#address-cells = <1>;
#size-cells = <0>;
ccg_typec_con0: connector@0 {
compatible = "usb-c-connector";
reg = <0>;
label = "USB-C";
data-role = "host";
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
hs_ucsi_ccg_p0: endpoint {
remote-endpoint = <&hs_typec_p0>;
};
};
port@1 {
reg = <1>;
ss_ucsi_ccg_p0: endpoint {
remote-endpoint = <&ss_typec_p0>;
};
};
};
ccg_typec_con1: connector@1 {
compatible = "usb-c-connector";
reg = <1>;
label = "USB-C";
data-role = "dual";
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
hs_ucsi_ccg_p1: endpoint {
remote-endpoint = <&hs_typec_p1>;
};
};
port@1 {
reg = <1>;
ss_ucsi_ccg_p1: endpoint {
remote-endpoint = <&ss_typec_p1>;
};
};
};
};
};
};
};
};
};

View File

@@ -176,6 +176,85 @@
};
};
};
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 {
status = "okay";
};
usb2-1 {
status = "okay";
};
usb2-2 {
status = "okay";
};
usb2-3 {
status = "okay";
};
usb3-0 {
status = "okay";
};
usb3-1 {
status = "okay";
};
usb3-2 {
status = "okay";
};
};
};
usb@3550000 {
status = "okay";
};
usb@3610000 {
status = "okay";
};
};
tegra_mce@e100000 {

View File

@@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
#include "tegra234-xusb.dtsi"
/ {
model = "NVIDIA Jetson AGX Orin";
@@ -69,6 +68,5 @@
pmc@c360000 {
nvidia,invert-interrupt;
};
};
};

View File

@@ -1751,181 +1751,6 @@
hda@3510000 {
nvidia,model = "NVIDIA Jetson AGX Orin HDA";
};
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";
usb-role-switch;
status = "okay";
port {
hs_typec_p1: endpoint {
remote-endpoint = <&hs_ucsi_ccg_p1>;
};
};
};
usb2-1 {
mode = "host";
status = "okay";
port {
hs_typec_p0: endpoint {
remote-endpoint = <&hs_ucsi_ccg_p0>;
};
};
};
usb2-2 {
mode = "host";
status = "okay";
};
usb2-3 {
mode = "host";
status = "okay";
};
usb3-0 {
nvidia,usb2-companion = <1>;
status = "okay";
port {
ss_typec_p0: endpoint {
remote-endpoint = <&ss_ucsi_ccg_p0>;
};
};
};
usb3-1 {
nvidia,usb2-companion = <0>;
status = "okay";
port {
ss_typec_p1: endpoint {
remote-endpoint = <&ss_ucsi_ccg_p1>;
};
};
};
usb3-2 {
nvidia,usb2-companion = <3>;
status = "okay";
};
};
};
usb@3550000 {
status = "okay";
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
phy-names = "usb2-0", "usb3-1";
};
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";
};
i2c@c240000 {
status = "okay";
ucsi-ccg@8 {
compatible = "cypress,cypd4226";
cypress,firmware-build = "nvidia,jetson-agx-xavier";
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>;
reg = <0x08>;
#address-cells = <1>;
#size-cells = <0>;
ccg_typec_con0: connector@0 {
compatible = "usb-c-connector";
reg = <0>;
label = "USB-C";
data-role = "host";
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
hs_ucsi_ccg_p0: endpoint {
remote-endpoint = <&hs_typec_p0>;
};
};
port@1 {
reg = <1>;
ss_ucsi_ccg_p0: endpoint {
remote-endpoint = <&ss_typec_p0>;
};
};
};
ccg_typec_con1: connector@1 {
compatible = "usb-c-connector";
reg = <1>;
label = "USB-C";
data-role = "dual";
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
hs_ucsi_ccg_p1: endpoint {
remote-endpoint = <&hs_typec_p1>;
};
};
port@1 {
reg = <1>;
ss_ucsi_ccg_p1: endpoint {
remote-endpoint = <&ss_typec_p1>;
};
};
};
};
};
};
chosen {