Embedded switch instead of stadard PHY

Adrian Chadd adrian at freebsd.org
Wed May 11 05:18:29 UTC 2011


On 11 May 2011 01:01, Warner Losh <imp at bsdimp.com> wrote:

> Most switches are on the PHY bus, so you can program their registers.  Many are on the PHY bus multiple times.  Once for the real(ish) PHY they provide and once for the switch registers they expose (for some, "twice" means up to 4 times).  Some are just nuts.

This is unfortunately why we need to have real drivers for the switch
PHY chips, rather than treating them as generic PHYs. :/

> It would be nice if there was a way for a device's MII routine to control enumeration of the PHY bus.  This would allow us to convert the rlswitch device in the tree to one of these.  That way, it could 'filter' out the PHYs addresses that are intended to be like traditional PHYs from the addresses that are intended to be used for switch management.
>
> We likely should also have a switch interface that one can tweak via ifconfig.  I'd like that to be an explicit goal of this work, even if others do it.
>
> However, that's a big ticket item.   I kinda like the 'let us put a few of these in the tree with kludges then refactor' model, but worry we end up without the refactoring...

If others commit to shoehorning in the PHY driver work and expose the
basic guts via sysctl, I'll commit to doing a review and tidyup in a
few months. This includes looking at how to take the set of switch
PHYs and L3 routing/filtering that we support and figure out how to
expose it in a sensible manner.

So who's willing to step up and do that? Luiz? Would you be willing to
take your existing switch PHY code and just expose the state via
sysctl? Let's get something into -HEAD.


Adrian


More information about the freebsd-hackers mailing list