Updating PHY Firmware#
MVQ3244 PHY Firmware Update (Thor)#
Starting in 7.0.3.0, you can manually upgrade or downgrade PHY firmware directly from Tegra.
Note
Acacia chip revision A3 has firmware baked into internal ROM and boot from external ROM is disabled on Thor platforms. Hence, PHY firmware update is not supported for this chip revision.
Understanding MDIO Switching#
On the P3960 platform, all MVQ3244 PHYs are updated using the MDIO interface of the MGBE0 Ethernet controller.
Normally, downstream PHYs are controlled by the sMCU’s MDIO. For OTA updates, control must switch to MGBE0 MDIO.
Before running OTA commands on downstream PHYs, execute:
setphymdiomuxsel 1
To check current MUX selection:
getphymdiomuxsel
0 means controlled by sMCU.
1 means controlled by Tegra.
Note
MDIO of the PHY directly connected to MGBE0 cannot be switched to sMCU control.
Current PHY Firmware Version#
Platform |
PHY Firmware Binary |
|---|---|
P3960-TS2 onwards |
|
P3960-TS4 onwards |
Firmware baked into internal ROM. Binary not packaged. One should be able to read version as |
Updating PHYs Directly Connected to Tegra#
Firmware binaries and OTA scripts are located in:
/lib/firmware/marvell_ethernet/mvq3244/tools/fw
Example update command for Condor 1, Port 10 on TS2:
// Updating MVQ3244 connected to P3960 - Condor-1 P10 on TS2. In the script used below _0x06 represent SMI address of the PHY
sudo /bin/bash /lib/firmware/marvell_ethernet/driveota/P3960_MVQ3244_TS2_0x06.sh --Install <FW>
Note
If installed firmware version is 8.2.6.0, then firmware update is not supported. The following lines are observed when attempting to update:
========================================================================
PHY is already upgraded to the latest version 8.2.6.0.
No further installation can be done.
========================================================================
Check current flashed firmware:
// Printing current firmware version of MVQ3244 connected to P3960 - Condor-1 P10 on TS2. In the script used below _0x06 represent SMI address of the PHY
sudo /bin/bash /lib/firmware/marvell_ethernet/driveota/P3960_MVQ3244_TS2_0x06.sh --GetCurrentVersion
Firmware and Scripts (Direct Connections)#
Platform |
MGBE Interface |
OTA Script |
|---|---|---|
P3960-TS2 |
MGBE-0 |
P3960_MVQ3244_TS2_0x01.sh |
P3960-TS2 |
MGBE-2 |
P3960_MVQ3244_TS2_0x0D.sh |
P3960-TS3 and onwards |
MGBE-0 |
P3960_MVQ3244_TS3_0x00.sh |
Updating PHYs Through Switches#
Platform |
Switch and Port |
OTA Script |
|---|---|---|
P3960-TS2 |
Realtek Condor 1, Port 10 |
P3960_MVQ3244_TS2_0x06.sh |
P3960-TS2 |
Realtek Condor 2, Port 10 |
P3960_MVQ3244_TS2_0x07.sh |
P3960-TS2 |
Realtek Condor 2, Port 12 |
P3960_MVQ3244_TS2_0x08.sh |
P3960-TS2 |
Marvell Fir, Port 8 |
P3960_MVQ3244_TS2_0x0F.sh |
P3960-TS3 and onwards |
Realtek Condor 1, Port 10 |
P3960_MVQ3244_TS3_0x09.sh |
P3960-TS3 and onwards |
Realtek Condor 1, Port 9 |
P3960_MVQ3244_TS3_0x06.sh |
P3960-TS3 and onwards |
Realtek Condor 2, Port 10 |
P3960_MVQ3244_TS3_0x07.sh |
P3960-TS3 and onwards |
Realtek Condor 2, Port 9 |
P3960_MVQ3244_TS3_0x08.sh |
P3960-TS3 and onwards |
Marvell Fir, Port 8 |
P3960_MVQ3244_TS3_0x0F.sh |
Important Notes#
Note
Newly installed firmware takes effect only after sMCU power cycle.
NVIDIA recommends against manual PHY firmware updates unless necessary or instructed by NVIDIA.
Always use the script intended for the specific board and platform.