mge, mii/e1000phy
Kristof Provost
kristof at sigsegv.be
Tue Sep 22 21:21:07 UTC 2009
Hi,
I've been trying to get CURRENT running on a TS-7800 [1].
It's based around a Marvell Orion SoC, with a Marvell 88E1118 PHY.
It boots and tries to do bootpc_init. This fails because there are no
packets coming in or going out.
A few thing's I've noticed:
- The PHY is misdetected as an 88E1116. Changing sys/dev/mii/miidevs so
it's detected as the 88E1118 it really is doesn't help.
- sys/dev/mii/e1000phy.c appears to contain a bug:
e1000phy_reset performs a switch on MII_MODEL(esc->mii_model) while
the rest of the code just uses esc->mii_model. This seems to be wrong
as the cases for 1118 (or 1116) are not triggered. Changing this also
doesn't appear to help.
- Forcing the mge driver to IFM_100_TX (in mge_set_port_serial_control)
does work. The system manages to acquire a DHCP address.
- CURRENT does work correctly on my Sheevaplug, which has a Marvell
88E1116R PHY (at least, it's identified as one, I've not checked any
further).
Does anyone have any ideas on what might be causing this or what to try next?
Kristof
[1] http://www.embeddedarm.com/products/board-detail.php?product=TS-7800
More information about the freebsd-current
mailing list