This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DRA821U:如何在 U-boot 中启用 USB2 功能

Guru**** 2480515 points
Other Parts Discussed in Thread: DRA821U

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1510463/dra821u-how-to-enable-usb2-function-in-u-boot

器件型号:DRA821U
主题中讨论的其他器件: DRA821TDA4VH

工具/软件:

您好 TI  

我使用 DRA821U EVM (J7200)、SDK 版本为 10_01_08_01  

我可以在内核空间中启用 USB3 功能、我就可以了。 但 uboot 中的相同设置不起作用。  

U-boot 日志:

U-Boot SPL 2024.04-gb40fba1b-dirty (2025年5月05日- 11:31:08 +0800)
SYSFW ABI:4.0(固件版本 0x000a '10.0.8--v10.00.08 (Fiery Fox)')
尝试从 MMC2 引导
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败
从无处加载环境... 好的
在 ARM64 内核上启动 ATF……

注意:BL31:v2.10.0(发行版):b40fba1b-dirty
注意:BL31: Building:15:53:26, 2025年5月7日
I/O TC:
I/O:主 TC 初始化
I/SYSFW ABI:4.0(固件版本 0x000a '10.0.8--v10.00.08 (Fiery TC))
I/HUK:TC 已初始化
I/UL:已激活 TC 设备
I/UL:修复 GP 设备的 TC 防火墙所有者
I/TRNG:已为 SA2UL TC 器件启用防火墙
I/TRNG:SA2UL TC 已初始化
I/UL:已初始化 TC 驱动程序
I/O:主 TC 切换到正常世界引导

U-Boot SPL 2024.04-gb40fba1b-dirty (2025年5月07日- 15:54:37 +0800)
SYSFW ABI:4.0(固件版本 0x000a '10.0.8--v10.00.08 (Fiery Fox)')
检测到:J7X-BASE-CPB 版本 A
检测到:J7X-GESI - EXP 版本 E3
尝试从 MMC2 引导
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败
警告:在 GP 设备上检测到映像签名证书。 跳过证书以防止启动失败。 如果映像也经过加密、此操作将失败


U-Boot 2024.04-gb40fba1b-dirty (2025年5月07日- 15:54:37 +0800)

SoC:J7200 SR1.0 GP
型号:Texas Instruments J7200 EVM
板:J7200X-PM2-E6 版 SOM
DRAM:2 GiB(有效 4 GiB)
内核:114 个器件、32 个类、器件树:单独
闪存:0 字节
MMC:MMC@4f80000:0、MMC@4fb0000:1.
正在从 SPIFlash... k3-navss-ringacc ringacc@2b800000:环加速器探测环:286, gp-rings[96,32] sci-dev-id:235
k3-navss-ringacc ringacc@2b800000:dma-ring-reset-quirk:禁用
JEDEC_SPI_NOR 闪存@0:尚不支持不均匀的擦除扇区映射。
sf:检测到 s28hs512t、页面大小为 256 字节、擦除大小为 4 KiB、总共为 64 MiB
***警告 — 错误的 CRC、使用默认环境

IN:serial@2800000
输出:串行@2800000
错误:serial@2800000
am65_cpsw_Nuss 以太网@46000000:K3 CPSW:nuss_ver:0x6BA02102 cpsw_ver:0x6BA82102 ale_ver:0x00293904 Ports:1
检测到:J7X-BASE-CPB 版本 A
检测到:J7X-GESI - EXP 版本 E3
网络:eth0:以太网@46000000port@1.
按任意键停止自动引导:0
=> USB 启动
正在启动 USB...
找不到工作的控制器

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    您能否提及您为尝试在 uboot 中启用 USB 3.0 所做的更改?

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    您能否提供与默认 SDK 代码相关的“git diff“、因为很难分析由此产生的更改。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    您能否提及在 Linux 中以及在默认 SDK 中使用 git diff 所做的更改?

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    diff --git a/arch/arm64/boot/dts/ti/k3-j7200-common-proc-board.dts b/arch/arm64/boot/dts/ti/k3-j7200-common-proc-board.dts
    index 8ee99737e..7a3a9188c 100644
    --- a/arch/arm64/boot/dts/ti/k3-j7200-common-proc-board.dts
    +++ b/arch/arm64/boot/dts/ti/k3-j7200-common-proc-board.dts
    @@ -118,9 +118,6 @@
     	};
     };
     
    -&wkup_pmx0 {
    -};
    -
     &wkup_pmx2 {
     	mcu_uart0_pins_default: mcu-uart0-default-pins {
     		pinctrl-single,pins = <
    @@ -252,9 +249,87 @@
     			J721E_IOPAD(0x38, PIN_OUTPUT, 0) /* (Y21) MCAN3_TX */
     		>;
     	};
    +
    +	mdio0_pins_default: mdio0-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x00a8, PIN_OUTPUT, 5) /* (W19) UART8_TXD.MDIO0_MDC */
    +			J721E_IOPAD(0x00a4, PIN_INPUT, 5) /* (W14) UART8_RXD.MDIO0_MDIO */
    +		>;
    +	};
    +
    +	rgmii1_default_pins: rgmii1-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x4, PIN_INPUT, 4) /* (AC23) RGMII1_RD0 */
    +			J721E_IOPAD(0x8, PIN_INPUT, 4) /* (AG22) RGMII1_RD1 */
    +			J721E_IOPAD(0xc, PIN_INPUT, 4) /* (AF22) RGMII1_RD2 */
    +			J721E_IOPAD(0x10, PIN_INPUT, 4) /* (AJ23) RGMII1_RD3 */
    +			J721E_IOPAD(0x1c, PIN_INPUT, 4) /* (AD22) RGMII1_RXC */
    +			J721E_IOPAD(0x14, PIN_INPUT, 4) /* (AH23) RGMII1_RX_CTL */
    +			J721E_IOPAD(0x30, PIN_OUTPUT, 4) /* (AF24) RGMII1_TD0 */
    +			J721E_IOPAD(0x34, PIN_OUTPUT, 4) /* (AJ24) RGMII1_TD1 */
    +			J721E_IOPAD(0x38, PIN_OUTPUT, 4) /* (AG24) RGMII1_TD2 */
    +			J721E_IOPAD(0x3c, PIN_OUTPUT, 4) /* (AD24) RGMII1_TD3 */
    +			J721E_IOPAD(0x44, PIN_OUTPUT, 4) /* (AE24) RGMII1_TXC */
    +			J721E_IOPAD(0x40, PIN_OUTPUT, 4) /* (AC24) RGMII1_TX_CTL */
    +		>;
    +	};
    +
    +	rgmii2_default_pins: rgmii2-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x7C, PIN_INPUT, 4) /* (AE22) RGMII2_RD0 */
    +			J721E_IOPAD(0x80, PIN_INPUT, 4) /* (AG23) RGMII2_RD1 */
    +			J721E_IOPAD(0x84, PIN_INPUT, 4) /* (AF23) RGMII2_RD2 */
    +			J721E_IOPAD(0x88, PIN_INPUT, 4) /* (AD23) RGMII2_RD3 */
    +			J721E_IOPAD(0x78, PIN_INPUT, 4) /* (AE23) RGMII2_RXC */
    +			J721E_IOPAD(0x8C, PIN_INPUT, 4) /* (AH24) RGMII2_RX_CTL */
    +			J721E_IOPAD(0x90, PIN_OUTPUT, 4) /* (AJ25) RGMII2_TD0 */
    +			J721E_IOPAD(0x94, PIN_OUTPUT, 4) /* (AH25) RGMII2_TD1 */
    +			J721E_IOPAD(0x98, PIN_OUTPUT, 4) /* (AG25) RGMII2_TD2 */
    +			J721E_IOPAD(0x9C, PIN_OUTPUT, 4) /* (AH26) RGMII2_TD3 */
    +			J721E_IOPAD(0x28, PIN_OUTPUT, 4) /* (AJ26) RGMII2_TXC */
    +			J721E_IOPAD(0xA0, PIN_OUTPUT, 4) /* (AJ27) RGMII2_TX_CTL */
    +		>;
    +	};
    +
    +	rgmii3_default_pins: rgmii3-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x4C, PIN_INPUT, 4) /* (AF28) RGMII3_RD0 */
    +			J721E_IOPAD(0x50, PIN_INPUT, 4) /* (AE28) RGMII3_RD1 */
    +			J721E_IOPAD(0x54, PIN_INPUT, 4) /* (AE27) RGMII3_RD2 */
    +			J721E_IOPAD(0x58, PIN_INPUT, 4) /* (AD26) RGMII3_RD3 */
    +			J721E_IOPAD(0x48, PIN_INPUT, 4) /* (AE26) RGMII3_RXC */
    +			J721E_IOPAD(0x5C, PIN_INPUT, 4) /* (AD25) RGMII3_RX_CTL */
    +			J721E_IOPAD(0x60, PIN_OUTPUT, 4) /* (AJ28) RGMII3_TD0 */
    +			J721E_IOPAD(0x64, PIN_OUTPUT, 4) /* (AH27) RGMII3_TD1 */
    +			J721E_IOPAD(0x68, PIN_OUTPUT, 4) /* (AH29) RGMII3_TD2 */
    +			J721E_IOPAD(0x6C, PIN_OUTPUT, 4) /* (AG28) RGMII3_TD3 */
    +			J721E_IOPAD(0x74, PIN_OUTPUT, 4) /* (AH28) RGMII3_TXC */
    +			J721E_IOPAD(0x70, PIN_OUTPUT, 4) /* (AG27) RGMII3_TX_CTL */
    +		>;
    +	};
    +
    +	rgmii4_1_default_pins: rgmii4_1-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x20, PIN_INPUT, 4) /* (AE29) RGMII4_RD0 */
    +			J721E_IOPAD(0x24, PIN_INPUT, 4) /* (AD28) RGMII4_RD1 */
    +			J721E_IOPAD(0x2C, PIN_INPUT, 4) /* (AD27) RGMII4_RD2 */
    +			J721E_IOPAD(0xAC, PIN_INPUT, 4) /* (AC25) RGMII4_RD3 */
    +			J721E_IOPAD(0x18, PIN_INPUT, 4) /* (AC26) RGMII4_RXC */
    +			J721E_IOPAD(0xB4, PIN_OUTPUT, 4) /* (AF26) RGMII4_TD2 */
    +			J721E_IOPAD(0xB8, PIN_OUTPUT, 4) /* (AE25) RGMII4_TD3 */
    +			J721E_IOPAD(0xB0, PIN_OUTPUT, 4) /* (AG29) RGMII4_TXC */
    +			J721E_IOPAD(0xBC, PIN_OUTPUT, 4) /* (AF29) RGMII4_TX_CTL */
    +		>;
    +	};
     };
     
     &main_pmx2 {
    +	rgmii4_2_default_pins: rgmii4_2-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x8, PIN_OUTPUT, 4) /* (AF27) RGMII4_TD1 */
    +		>;
    +	};
    +
     	main_usbss0_pins_default: main-usbss0-default-pins {
     		pinctrl-single,pins = <
     			J721E_IOPAD(0x04, PIN_OUTPUT, 0) /* (T4) USB0_DRVVBUS */
    @@ -262,6 +337,16 @@
     	};
     };
     
    +&main_pmx3 {
    +	rgmii4_3_default_pins: rgmii4_3-default-pins {
    +		pinctrl-single,pins = <
    +			J721E_IOPAD(0x0, PIN_INPUT, 4) /* (AD29) RGMII4_RX_CTL */
    +			J721E_IOPAD(0x4, PIN_OUTPUT, 4) /* (AG26) RGMII4_TD0 */
    +			
    +		>;
    +	};
    +};
    +
     &wkup_uart0 {
     	/* Wakeup UART is used by System firmware */
     	status = "reserved";
    @@ -326,15 +411,81 @@
     	phy0: ethernet-phy@0 {
     		reg = <0>;
     		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    +		ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
     		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
     	};
     };
     
     &cpsw_port1 {
    -	phy-mode = "rgmii-rxid";
    +	phy-mode = "rgmii-id";
     	phy-handle = <&phy0>;
     };
     
    +&cpsw5g_mdio {
    +	status = "okay";
    +	pinctrl-names = "default";
    +	pinctrl-0 = <&mdio0_pins_default>;
    +	reset-gpios = <&exp2 17 GPIO_ACTIVE_LOW>;
    +	reset-post-delay-us = <120000>;
    +	#address-cells = <1>;
    +	#size-cells = <0>;
    +
    +	cpsw5g_phy0: ethernet-phy@0 {
    +		reg = <0>;
    +		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    +		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
    +		ti,min-output-impedance;
    +
    +	};
    +	cpsw5g_phy1: ethernet-phy@17 {
    +		reg = <17>;
    +	};
    +	cpsw5g_phy2: ethernet-phy@18 {
    +		reg = <18>;
    +	};
    +	cpsw5g_phy3: ethernet-phy@19 {
    +		reg = <19>;
    +	};
    +};
    +
    +&cpsw0 {
    +	status = "okay";
    +	pinctrl-names = "default";
    +	pinctrl-0 = <&rgmii2_default_pins>;
    +};
    +
    +&cpsw0_port1 {
    +	status = "disabled";
    +	phy-handle = <&cpsw5g_phy1>;
    +	phy-mode = "rgmii-rxid";
    +	mac-address = [00 00 00 00 00 00];
    +	phys = <&cpsw0_phy_gmii_sel 1>;
    +};
    +
    +&cpsw0_port2 {
    +	status = "okay";
    +	phy-handle = <&cpsw5g_phy0>;
    +	phy-mode = "rgmii-rxid";
    +	mac-address = [00 00 00 00 00 00];
    +	phys = <&cpsw0_phy_gmii_sel 2>;
    +};
    +
    +&cpsw0_port3 {
    +	status = "disabled";
    +	phy-handle = <&cpsw5g_phy2>;
    +	phy-mode = "rgmii-rxid";
    +	mac-address = [00 00 00 00 00 00];
    +	phys = <&cpsw0_phy_gmii_sel 3>;
    +};
    +
    +&cpsw0_port4 {
    +	status = "disabled";
    +	phy-handle = <&cpsw5g_phy3>;
    +	phy-mode = "rgmii-rxid";
    +	mac-address = [00 00 00 00 00 00];
    +	phys = <&cpsw0_phy_gmii_sel 4>;
    +};
    +
     &main_i2c0 {
     	status = "okay";
     	pinctrl-names = "default";
    @@ -356,6 +507,24 @@
     	};
     };
     
    +&exp1 {
    +	p15-hog {
    +		/* P15 - EXP_MUX2 */
    +		gpio-hog;
    +		gpios = <13 GPIO_ACTIVE_HIGH>;
    +		output-high;
    +		line-name = "EXP_MUX2";
    +	};
    +
    +	p16-hog {
    +		/* P16 - EXP_MUX3 */
    +		gpio-hog;
    +		gpios = <14 GPIO_ACTIVE_HIGH>;
    +		output-high;
    +		line-name = "EXP_MUX3";
    +	};
    +};
    +
     /*
      * The j7200 CPB board is identical to the CPB used for J721E, the SOMs can be
      * swapped on the CPB.
    @@ -399,16 +568,20 @@
     	disable-wp;
     };
     
    +&usb_serdes_mux {
    +	idle-states = <1>; /* USB0 to SERDES setting  0:lane 1 , 1:lane 3 */
    +};
    +
     &serdes_ln_ctrl {
     	idle-states = <J7200_SERDES0_LANE0_PCIE1_LANE0>, <J7200_SERDES0_LANE1_PCIE1_LANE1>,
    -		      <J7200_SERDES0_LANE2_QSGMII_LANE1>, <J7200_SERDES0_LANE3_IP4_UNUSED>;
    +	<J7200_SERDES0_LANE2_IP3_UNUSED>, <J7200_SERDES0_LANE3_USB>;
     };
     
     &usbss0 {
     	pinctrl-names = "default";
     	pinctrl-0 = <&main_usbss0_pins_default>;
     	ti,vbus-divider;
    -	ti,usb2-only;
    +	/* ti,usb2-only; */
     };
     
     &tscadc0 {
    @@ -429,6 +602,35 @@
     		cdns,phy-type = <PHY_TYPE_PCIE>;
     		resets = <&serdes_wiz0 1>, <&serdes_wiz0 2>;
     	};
    +/*
    +	serdes0_qsgmii_link: phy@1 {
    +		reg = <1>;
    +		cdns,num-lanes = <1>;
    +		#phy-cells = <0>;
    +		cdns,phy-type = <PHY_TYPE_QSGMII>;
    +		resets = <&serdes_wiz0 3>;
    +	};
    +*/
    +	serdes0_usb_link: phy@2 {
    +		reg = <3>;
    +		cdns,num-lanes = <1>;
    +		#phy-cells = <0>;
    +		cdns,phy-type = <PHY_TYPE_USB3>;
    +		resets = <&serdes_wiz0 4>;
    +	};
    +};
    +
    +/*
    +&serdes0_qsgmii_link {
    +	status = "disabled";
    +};
    +*/
    +
    +&usb0 {
    +	dr_mode = "host";
    +	maximum-speed = "super-speed";
    +	phys = <&serdes0_usb_link>;
    +	phy-names = "cdns3,usb3-phy";
     };
     
     &pcie1_rc {
    @@ -437,6 +639,7 @@
     	phys = <&serdes0_pcie_link>;
     	phy-names = "pcie-phy";
     	num-lanes = <2>;
    +	max-link-speed = <1>;
     };
     
     &mcu_mcan0 {

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    U-boot 更改:

    • 是否可以删除的以下更改 U-boot dts 而是在下面的文件中为 u-boot dts 添加下面的更改,并在 uboot 上提供 USB 启动的日志。

    要删除的更改:

    要添加的更改:

    e2e.ti.com/.../usb3_5F00_0.patch

    • 请确保您的 DP 开关遵循所示的配置  
      • 开关 3.3=0 、开关 3.4=0。

    DP 交换机参考图像。

    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/latest/exports/docs/psdk_rtos/docs/user_guide/evm_setup_j721e.html#ospi-boot-mode-j721e-es1-x-versions-only

    完成这些操作后、引导至 Uboot 并尝试 USB 启动命令。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 TI  

    能否提供您的工作 DTS 和测试 结果?
    我按照补丁修改器件树。 但仍然不起作用。



  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    是否可以在应用上述更改后为 uboot 提供“git diff“、以便我们可以对其进行分析?

    提前感谢。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 TI  

    --- a/arch/arm/dts/k3-j7200-common-proc-board.dts
    +++ b/arch/arm/dts/k3-j7200-common-proc-board.dts
    @@ -118,9 +118,6 @@
     	};
     };
     
    -&wkup_pmx0 {
    -};
    -
     &wkup_pmx2 {
     	mcu_uart0_pins_default: mcu-uart0-default-pins {
     		pinctrl-single,pins = <
    @@ -326,12 +323,13 @@
     	phy0: ethernet-phy@0 {
     		reg = <0>;
     		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    +		ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
     		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
     	};
     };
     
     &cpsw_port1 {
    -	phy-mode = "rgmii-rxid";
    +	phy-mode = "rgmii-id";
     	phy-handle = <&phy0>;
     };
     
    @@ -399,25 +397,20 @@
     	disable-wp;
     };
     
    -&serdes_ln_ctrl {
    -	idle-states = <J7200_SERDES0_LANE0_PCIE1_LANE0>, <J7200_SERDES0_LANE1_PCIE1_LANE1>,
    -		      <J7200_SERDES0_LANE2_QSGMII_LANE1>, <J7200_SERDES0_LANE3_IP4_UNUSED>;
    +&usb_serdes_mux {
    +	idle-states = <1>; /* USB0 to SERDES setting  0:lane 1 , 1:lane 3 */
     };
     
    -&usb_serdes_mux {
    -	idle-states = <1>; /* USB0 to SERDES lane 3 */
    +&serdes_ln_ctrl {
    +	idle-states = <J7200_SERDES0_LANE0_PCIE1_LANE0>, <J7200_SERDES0_LANE1_PCIE1_LANE1>,
    +	<J7200_SERDES0_LANE2_IP3_UNUSED>, <J7200_SERDES0_LANE3_USB>;
     };
     
     &usbss0 {
     	pinctrl-names = "default";
     	pinctrl-0 = <&main_usbss0_pins_default>;
     	ti,vbus-divider;
    -	ti,usb2-only;
    -};
    -
    -&usb0 {
    -	dr_mode = "otg";
    -	maximum-speed = "high-speed";
    +	/* ti,usb2-only; */
     };
     
     &tscadc0 {
    @@ -438,22 +431,40 @@
     		cdns,phy-type = <PHY_TYPE_PCIE>;
     		resets = <&serdes_wiz0 1>, <&serdes_wiz0 2>;
     	};
    -
    +/*
     	serdes0_qsgmii_link: phy@1 {
    -		reg = <2>;
    +		reg = <1>;
     		cdns,num-lanes = <1>;
     		#phy-cells = <0>;
     		cdns,phy-type = <PHY_TYPE_QSGMII>;
     		resets = <&serdes_wiz0 3>;
     	};
    +*/
    +	serdes0_usb_link: phy@2 {
    +		reg = <3>;
    +		cdns,num-lanes = <1>;
    +		#phy-cells = <0>;
    +		cdns,phy-type = <PHY_TYPE_USB3>;
    +		resets = <&serdes_wiz0 4>;
    +	};
    +};
    +
    +/*
    +&serdes0_qsgmii_link {
    +	status = "disabled";
    +};
    +*/
    +
    +&usb0 {
    +	dr_mode = "host";
    +	maximum-speed = "super-speed";
    +	phys = <&serdes0_usb_link>;
    +	phy-names = "cdns3,usb3-phy";
     };
     
     &pcie1_rc {
    -	status = "okay";
    -	reset-gpios = <&exp1 2 GPIO_ACTIVE_HIGH>;
    -	phys = <&serdes0_pcie_link>;
    -	phy-names = "pcie-phy";
    -	num-lanes = <2>;
    +	status = "disabled";
    +
     };
     
     &mcu_mcan0 {

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    很抱歉、延迟的回复。

    您是否可以删除所做的上述更改、而是添加以下更改。

    您还可以在中进行以下更改 k3-j7200-common-proc-board-u-boot.dtsi

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 TI  

    它仍然不起作用。 您能为我提供您的 DTS、dtsi 和测试日志吗?

    diff --git a/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi b/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi
    index 37ba7de5..9799c7a0 100644
    --- a/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi
    +++ b/arch/arm/dts/k3-j7200-common-proc-board-u-boot.dtsi
    @@ -183,7 +183,7 @@
     
     &usbss0 {
     	bootph-all;
    -	ti,usb2-only;
    +	/delete-property/ ti,usb2-only;
     };
     
     &usb0 {
    diff --git a/arch/arm/dts/k3-j7200-common-proc-board.dts b/arch/arm/dts/k3-j7200-common-proc-board.dts
    index 068faaaf..bca1e27f 100644
    --- a/arch/arm/dts/k3-j7200-common-proc-board.dts
    +++ b/arch/arm/dts/k3-j7200-common-proc-board.dts
    @@ -325,13 +325,14 @@
     &davinci_mdio {
     	phy0: ethernet-phy@0 {
     		reg = <0>;
    -		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
    +		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
    +		ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
     		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
     	};
     };
     
     &cpsw_port1 {
    -	phy-mode = "rgmii-rxid";
    +	phy-mode = "rgmii-id";
     	phy-handle = <&phy0>;
     };
     
    @@ -356,6 +357,24 @@
     	};
     };
     
    +&exp1 {
    +	p15-hog {
    +		/* P15 - EXP_MUX2 */
    +		gpio-hog;
    +		gpios = <13 GPIO_ACTIVE_HIGH>;
    +		output-high;
    +		line-name = "EXP_MUX2";
    +	};
    +
    +	p16-hog {
    +		/* P16 - EXP_MUX3 */
    +		gpio-hog;
    +		gpios = <14 GPIO_ACTIVE_HIGH>;
    +		output-high;
    +		line-name = "EXP_MUX3";
    +	};
    +};
    +
     /*
      * The j7200 CPB board is identical to the CPB used for J721E, the SOMs can be
      * swapped on the CPB.
    @@ -401,7 +420,7 @@
     
     &serdes_ln_ctrl {
     	idle-states = <J7200_SERDES0_LANE0_PCIE1_LANE0>, <J7200_SERDES0_LANE1_PCIE1_LANE1>,
    -		      <J7200_SERDES0_LANE2_QSGMII_LANE1>, <J7200_SERDES0_LANE3_IP4_UNUSED>;
    +	<J7200_SERDES0_LANE2_IP3_UNUSED>, <J7200_SERDES0_LANE3_USB>;
     };
     
     &usb_serdes_mux {
    @@ -412,12 +431,14 @@
     	pinctrl-names = "default";
     	pinctrl-0 = <&main_usbss0_pins_default>;
     	ti,vbus-divider;
    -	ti,usb2-only;
    +	/delete-property/ ti,usb2-only;
     };
     
     &usb0 {
    -	dr_mode = "otg";
    -	maximum-speed = "high-speed";
    +	dr_mode = "host";
    +	maximum-speed = "super-speed";
    +	phys = <&serdes0_usb_link>;
    +	phy-names = "cdns3,usb3-phy";
     };
     
     &tscadc0 {
    @@ -431,29 +452,18 @@
     };
     
     &serdes0 {
    -	serdes0_pcie_link: phy@0 {
    -		reg = <0>;
    -		cdns,num-lanes = <2>;
    -		#phy-cells = <0>;
    -		cdns,phy-type = <PHY_TYPE_PCIE>;
    -		resets = <&serdes_wiz0 1>, <&serdes_wiz0 2>;
    -	};
    -
    -	serdes0_qsgmii_link: phy@1 {
    -		reg = <2>;
    +	status = "okay";
    +	serdes0_usb_link: phy@2 {
    +		reg = <3>;
     		cdns,num-lanes = <1>;
     		#phy-cells = <0>;
    -		cdns,phy-type = <PHY_TYPE_QSGMII>;
    -		resets = <&serdes_wiz0 3>;
    +		cdns,phy-type = <PHY_TYPE_USB3>;
    +		resets = <&serdes_wiz0 4>;
     	};
     };
     
     &pcie1_rc {
    -	status = "okay";
    -	reset-gpios = <&exp1 2 GPIO_ACTIVE_HIGH>;
    -	phys = <&serdes0_pcie_link>;
    -	phy-names = "pcie-phy";
    -	num-lanes = <2>;
    +	status = "disabled";
     };
     
     &mcu_mcan0 {
    

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    很抱歉、由于重负载导致响应延迟。

    您是否可以尝试应用以下补丁、理想情况下应在 UBoot 中启用 USB3.0 功能、该补丁已经过测试并可以正常工作。

    e2e.ti.com/.../0001_2D00_Enable_2D00_USB3.0_2D00_functionality_2D00_on_2D00_J7200_2D00_board.patch

    测试结果日志:成功

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 TI  

    我应用修补程序。 我插入了一个 USB 3.0 存储. 然后运行“USB start“(USB 启动)。 它只是种子 UBS 根 hut , USB 设备仍然不工作。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    并且我插入了 USB 3.0 存储

    您能帮助我们在哪里插入 USB 3.0 存储,Alvin。 如果它连接到 Type-A 端口、则不会被检测到。您必须连接到 Type C 端口。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 TI  

    我 连接 到 Type-C 端口...

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Gokul,  

    我使用了由 AE 创建的图像、该图像可根据您的贴片支持 USB 3.0、并且适用于 EVM Type C 连接器、我曾在 EVM 上进行 USB 3.0 合规性测试。  

    USB3 在 Linux 中的 Type C 连接器上工作、但在 U-Boot 阶段不工作、这与客户在此处观察到的情况相同。  

    USB3 或至少 USB2 是否会确认可在 u-boot 中工作?  

    下面是我在 u-boot 下尝试的建议。  

    => USB 启动

    正在启动 USB...

    找不到工作的控制器

    => USB 复位

    正在重置 USB...

    找不到工作的控制器

    => USB 信息

    USB 已停止。 请先发出“USB start“(USB 启动)。

    => USB 启动

    正在启动 USB...

    找不到工作的控制器

    => USB 扫描

    USB 已停止。 请先发出“USB start“(USB 启动)。

     

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    0001-Enable-USB3.0 功能-on-J7200-board.patch

    我上面发布的补丁可在 uboot 中启用 USB 3.0 功能、对于客户、该补丁已启用、但根据他提供的日志未检测到 USB 器件。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    我们正在深入探讨为什么这是发生。感谢您的耐心。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、 Gokul

    你那有新消息吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 TI  

    你那有新消息吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    很抱歉、延迟的回复。

    我们已经尝试在 Uboot 中启用 USB2.0、但它可以正常工作。

    但是在 USB3.0 中,检测设备时似乎出现问题,但在 Linux 内核中启用和检测到了同样的问题。我们怀疑 uboot 驱动程序有这个问题。

    我们通过 JIRA ID:LCPD-44077 提交了相同的 JIRA

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Gokul,  

    插入 USB 设备时、u-boot 如何指定支持 USB2 或 USB3?  

    在 u-boot 中启用 USB2.0 或 USB3 是否会采用不同的补丁/设置?   

    USB3 闪存磁盘可以向后支持 USB 2.0。  

    在第二种情况下、u-boot 是否将其视为 USB3.0 器件并且无法在 USB 2.0 模式下工作?  

    Br、Rich  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    很抱歉、延迟的回复。

    [报价 userid=“9853" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1510463/dra821u-how-to-enable-usb2-function-in-u-boot/5842953 #5842953“]

    插入 USB 设备时、u-boot 如何指定支持 USB2 或 USB3?  

    在 u-boot 中启用 USB2.0 或 USB3 是否会采用不同的补丁/设置?  

    [/报价]

    是的,你是对的,富有。 启用 USB3 ( 例如:在 3.0 模式下配置 USB 主机控制器 ) 在 U-Boot 中需要在器件树中添加 SerDes 功能、而启用 USB2.0_( 例如:在 2.0 模式下配置 USB 主机控制器) 引导加载程序不需要这一点。

    [报价 userid=“9853" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1510463/dra821u-how-to-enable-usb2-function-in-u-boot/5842953 #5842953“]

    USB3 闪存磁盘可以向后支持 USB 2.0。  

    在第二种情况下、u-boot 是否将其视为 USB3.0 器件并且无法在 USB 2.0 模式下工作?  

    [/报价]
    • 当前、在 USB 3.0 模式下配置 USB 主机控制器 例如:在 U-boot 中进行相应的更改) 无法按照以下所示检测 USB3.0 器件和 USB 2.0 器件。
    • 但是、将 USB 主机控制器配置为 USB 2.0 模式 (即:在 U-boot 中进行相应的更改) 能够检测 USB 2.0 设备、如下所示。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、 Gokul

    您能否提供支持 USB 2.0 的补丁?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alvin:

    您是否可以像应用我们能够检测到 USB 2.0 设备的补丁一样尝试应用以下补丁?

    e2e.ti.com/.../0001_2D00_Enable_2D00_USB2.0_2D00_in_2D00_U_2D00_BOOT.patch

    日志

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Gokul,  

    客户希望在 u-boot 中启用 USB3 支持、这是否可行?

    u-boot 中是否有任何 J7 平台具有 USB3 使能?  

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    目前没有支持。但我们已经向开发团队提出了实施相同的要求。

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Gokul,  

    我们是否可以制定此计划的预计时间表? 客户想知道何时可以支持此功能?  

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    对于 j784s4、上游 U-boot 似乎在 u-boot 中启用了 USB3.0。

    您是否可以要求客户在上测试以下二进制文件 J784S4 EVM 板:

    e2e.ti.com/.../1680.tiboot3.bin

    e2e.ti.com/.../8510.tispl.bin

    e2e.ti.com/.../5857.u_2D00_boot.img

    此致

    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Gokul,  

    客户正在执行 DRA821、他们根本没有 J784S4 (TDA4VH)。  

    此外、DRA821 是否可以使用 u-boot(如果它支持 u-boot)?

    Br、Rich

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    客户正在执行 DRA821、他们根本没有 J784S4 (TDA4VH)。  [/报价]

    目前我们没有这方面的支持,但我们已经提交了一个 JIRA 来处理这个问题。

    此外、如果 u-boot 确实支持、那么 DRA821 是否可以使用它?

    否、J784S4 u-boot 不能用于 DRA821

    正在跟踪 MR JACINTOREQ-8885。

    此致

    Gokul

    [/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Gokul,  

    感谢更新和倾斜它正在开发.  

    客户是否有一个时间表计划、了解何时可以提供/预期修补程序?

    Br、Rich  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Rich、

    一旦开发团队挑选了此 MR 并确定了修复版本、我们一定会更新您。

    此致

    Gokul