In mvneta_fdt_phy_acquire() if we find a phy_addr add an extra
check if the device the phy node is attached to is different from
If so remember the other device in the newly introduced "phy_dev"
variable in the softc (which otherwise defaults to ourselves) and
advertise the switch under bootverbose.
Use the phy_dev rather than self when attaching to mii to have the
Add Marvell 88E151 Gigabit PHY to mii framework so e1000phy
detects it and add the gpiomdio and mii_bitbang to the std.marvell
config. The latter is needed to fullfill the explicit requirement
of gpiomdio in conf/files.
With this mvneta no longer panics on boot (during detach, which is a
different problem) if it cannot probe/attach the PHY on this specific hw.
Previously I used the following line in loader as a workaround:
exec="fdt prop /soc/internal-regs@d0000000/ethernet@30000/status disabled"
but that cannot be shared with the Espressobin as there @30000 is
the switch (given no extra port(s)).
It seems the copper port is working nicely with this. The SPF port
remains untested and probably needs more logic in e1000phy to detect
media and switch and handle cables plugged into both ports.
Tested on: SG-2100