4294967288 Tx FIFO : 4294967288 Rx FIFO
This just seems like an absurdly high/impossible value for the size of a FIFO.
4294967288 bytes would be ~4096 MiB
Maybe there is no FIFO or it’s being detected/setup incorrectly?
ASPM L0s/L1 enabled
Is it possible the ethernet interface hardware is dropping into a low-power state and Haiku is failing to wake it up again and re-initialize it as needed?
Perhaps forcing it to stay in L0 or at least not enabling ASPM for it would “fix” the problem.
ASPM (Wikipedia)
Question
Inquire about X10SAE BIOS options - What is ASPM mode L0/L0s/L1/L0sL1
Answer
L0 – All PCI Express transactions and other operations are enabled.
L0s – A low resume latency, energy saving “standby” state.
L1 – Higher latency, lower power “standby” state (optional).
L0sL1 - Activate both L0s and L1 support.
^ link
P.S.
Does FreeBSD correctly identify your hardware as an Atheros 8152 V2.0? Is there any way to tell if it ever enters a lower power state?
It looks like “phy write timeout” messages could originate from these three function calls (if_alc.c):
https://cgit.freebsd.org/src/tree/sys/dev/alc/if_alc.c?h=releng/14.1
static uint32_t
alc_mii_writereg_813x(struct alc_softc *sc, int phy, int reg, int val)
static uint32_t
alc_mii_writereg_816x(struct alc_softc *sc, int phy, int reg, int val)
{
static uint32_t
alc_miiext_writereg(struct alc_softc *sc, int devaddr, int reg, int val)
And “phy read timeout” from these two:
static uint32_t
alc_mii_readreg_813x(struct alc_softc *sc, int phy, int reg)
static uint32_t
alc_mii_readreg_816x(struct alc_softc *sc, int phy, int reg)