> > > + /* This PCS seems to require a soft reset to re-sync the > > > AN logic */ > > > + tse_pcs_reset(tse_pcs); > > > > This is kinda strange since c22 phys are supposed to reset the other > > registers to default values when BMCR_RESET is written. Good thing > > this is a PCS... > > Indeed. This soft reset will not affect the register configuration, it > will only reset all internal state machines. > > The datasheet actually recommends performing a reset after any > configuration change... The Marvell PHYs work like this. Many of its registers won't take effect until you do a soft reset. I think the thinking behind this is that changing many registers is disruptive to the link and slow. It takes over a second to perform auto-neg etc. So ideally you want to make all your register changes, and then trigger them into operation. And a soft reset is this trigger. Andrew