Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[Regression][AST2700][ftgmac100] SGMII hard reset leaves Goldfinch RX path nonfunctional

Abierto
#636 7 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@Yakiv-Huryk ya está trabajando en esto.

Desde el 21/10/2026.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
linux

Línea de trabajo

Start with patches-sonic/0010-net-ftgmac100-hard-reset-mac-for-sgmii.patch and the ftgmac100 AST2700 reset path it changes. Compare the Goldfinch device-tree fixed-link configuration and BCM54210S topology with the patch's stated hardware case. Reproduce with the patch enabled and disabled, then verify that eth0 receives packets and DHCP completes without regressing the supported SGMII case.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

BMC P0 regression

The generic ftgmac100 SGMII hard-reset patch causes the Ethernet receive path to stop working on the Arista Goldfinch AST2700 BMC.

After boot, eth0 reports carrier and link up. TX counters increase, but RX remains at zero. DHCP sends repeated requests without receiving any offers, so no IPv4 address is assigned.

PR: #75
Commit: https://github.com/sonic-net/sonic-linux-kernel/commit/22c7b0060dffd23ec0f71390690112e7148ae611

Platform
Platform: Arista Goldfinch BMC
SoC: Aspeed AST2700
Architecture: arm64
Kernel: 6.12.41+deb13-sonic-arm64
Goldfinch Ethernet configuration

Goldfinch configures MAC2 as fixed-link SGMII:

&mac2 {
    status = "okay";
    phy-mode = "sgmii";
    fixed-link {
        speed = <1000>;
        full-duplex;
    };
};

link

Affected image used for log collection:

SONiC.branch.msft-202608-ars.046172c0
Build date: 2026-09-25
Observed behavior

The interface reports both administrative and carrier state as up:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> state UP
    link/ether b8:a1:b8:a8:71:06

The kernel reports:
ftgmac100 14070000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off

However, RX remains at zero:

RX:  bytes packets errors dropped missed mcast
          0       0      0       0      0     0

TX:  bytes packets errors dropped carrier collsns
       7980      48      0       2       0       0

DHCP repeatedly transmits requests:

DHCPDISCOVER on eth0 to 255.255.255.255 port 67
DHCPDISCOVER on eth0 to 255.255.255.255 port 67
No DHCPOFFERS received.
No working leases in persistent database - sleeping.

IPv6 DHCP solicitation also transmits without receiving a response:
XMT: Solicit on eth0

As a result, eth0 only has its automatically generated IPv6 link-local address and no IPv4 address.

Responsible Change

The kernel update enabled:
0010-net-ftgmac100-hard-reset-mac-for-sgmii.patch

The AST2700 driver already performed a hard reset for RMII:

reset_control_assert(priv->rst);
usleep_range(10000, 20000);
reset_control_deassert(priv->rst);

The new patch broadens that condition to every SGMII interface:


if (priv->netdev->phydev->interface == PHY_INTERFACE_MODE_RMII ||
    priv->netdev->phydev->interface == PHY_INTERFACE_MODE_SGMII)
Hardware Difference

The patch description specifically identifies an AST2700 platform using a Marvell 88E151x PHY over SGMII. It states that this hardware can enter an RX-stalled state after a link flap and that performing a full MAC hard reset recovers it.

The Marconi CPU card used with Goldfinch has a different SGMII topology and uses a Broadcom BCM54210S PHY. The connection is represented to Linux as fixed-link SGMII.

Therefore, the reset may be a valid workaround for the NVIDIA hardware and Marvell 88E151x combination, but applying it unconditionally to every SGMII interface negatively affects the Goldfinch/BCM54210S hardware.

Confirmation

Disabled only this patch and the eth0 connectivity was restored successfully, confirming that enabling the generic SGMII hard-reset path triggers the Goldfinch regression.

Potential Fixes

Limit SGMII reset to Marvell 88E151x PHY or, do an initialisation after doing a hard reset of the SGMII interface.

Lenguaje dominante
Shell
Estrellas
71
Forks
245
Merge medio
7 d 54 min
PR fusionados (30 d)
4

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de sonic-net/sonic-linux-kernel

Todos los issues de sonic-net/sonic-linux-kernel

Issues similares

Más issues de Shell/Bash

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.