Greg A. Woods
2010-06-22 19:00:41 UTC
I've run into a situation where I've been trying to use Marvell Yukon-2
ethernet ports on an embedded PC board along with Marvell 88E1112 PHYs
that have been mis-configured/mis-wired to think they have 1000base-SX
optical connections when in fact they're using copper over a backplane
connector. Unfortunately there are no public docs available for the
88E1112 (and apparently even those available under NDA are nothing to
marvel at :-)).
I found that OpenBSD's eephy(4) driver would at least get them into the
right mode (still can't test a link due to other problems(*)) and I also
found that it was infinitely easier to port the whole driver over than
it was to try to port the fixes and upgrades to NetBSD's makphy(4)
driver. The eephy(4) driver seems to completely replace all the
functionality in makphy(4), and it seems to support a bunch more chips.
The port was relatively easy (at least to NetBSD-4, which I'm still
stuck using for a wee bit longer). The harder part was that there were
some fixes also necessary in the msk(4) driver as well, and I'm not 100%
certain I've found the best way to make them work. Similar changes
might be necessary for the sk(4) driver as well, at least if it also
wants to use eephy(4) on any fibre cards.
Anyway, I'm wondering if anyone would be interested in getting this
driver into NetBSD to replace makphy(4) or not. I'll probably be moving
it to my netbsd-5 branch soon, and if necessary I could probably provide
patches for -current, though testing them would be next to impossible.
Diff's available on request -- or I can file something with send-pr.
(*) I can't actually get a link established on this board as apparently
the vendor is having problems with the chipset on the switch/service
module that this board is connected to over the backplane -- and there's
a very good chance they're having the exact same problem I tried to fix
on the embedded PC side too. :-)
ethernet ports on an embedded PC board along with Marvell 88E1112 PHYs
that have been mis-configured/mis-wired to think they have 1000base-SX
optical connections when in fact they're using copper over a backplane
connector. Unfortunately there are no public docs available for the
88E1112 (and apparently even those available under NDA are nothing to
marvel at :-)).
I found that OpenBSD's eephy(4) driver would at least get them into the
right mode (still can't test a link due to other problems(*)) and I also
found that it was infinitely easier to port the whole driver over than
it was to try to port the fixes and upgrades to NetBSD's makphy(4)
driver. The eephy(4) driver seems to completely replace all the
functionality in makphy(4), and it seems to support a bunch more chips.
The port was relatively easy (at least to NetBSD-4, which I'm still
stuck using for a wee bit longer). The harder part was that there were
some fixes also necessary in the msk(4) driver as well, and I'm not 100%
certain I've found the best way to make them work. Similar changes
might be necessary for the sk(4) driver as well, at least if it also
wants to use eephy(4) on any fibre cards.
Anyway, I'm wondering if anyone would be interested in getting this
driver into NetBSD to replace makphy(4) or not. I'll probably be moving
it to my netbsd-5 branch soon, and if necessary I could probably provide
patches for -current, though testing them would be next to impossible.
Diff's available on request -- or I can file something with send-pr.
(*) I can't actually get a link established on this board as apparently
the vendor is having problems with the chipset on the switch/service
module that this board is connected to over the backplane -- and there's
a very good chance they're having the exact same problem I tried to fix
on the embedded PC side too. :-)
--
Greg A. Woods
Planix, Inc.
<***@planix.com> +1 416 218 0099 http://www.planix.com/
Greg A. Woods
Planix, Inc.
<***@planix.com> +1 416 218 0099 http://www.planix.com/