mge, mii/e1000phy

Pyun YongHyeon pyunyh at gmail.com
Wed Sep 23 17:09:42 UTC 2009


On Wed, Sep 23, 2009 at 04:09:12PM +0200, Grzegorz Bernacki wrote:
> >>From: Pyun YongHyeon <pyunyh at gmail.com>
> >>Date: 23 wrze?nia 2009 01:53:50 CEST
> >>To: Kristof Provost <kristof at sigsegv.be>
> >>Cc: current at freebsd.org
> >>Subject: Re: mge, mii/e1000phy
> >>Reply-To: pyunyh at gmail.com
> >>
> >>>- Forcing the mge driver to IFM_100_TX (in mge_set_port_serial_control)
> >>>  does work. The system manages to acquire a DHCP address.
> >>
> >>Would you also show me the output of "ifconfig -m mge0"?
> >>
> >>I'm not author of mge(4) so I'm not familiar with mge(4). But it
> >>seems that mge(4) lacks link state change handler. Normally NICs
> >>are required to reprogram MAC to match resolved speed/duplex/
> >>flow-control of link when it know it established a valid link which
> >>is notified from mii(4).
> >
> 
> Hi,
> 
> You are right. Link state change handler is missing in mge(4) driver. It 
> is on our TODO list for this driver and will be implemented soon.
> 

I've briefly looked over MV88F5182 opensource community
programmer's user guide and found that ENQ bit of TQC register
should be set again whenever link DOWN/UP event is detected which
in turn may complicate the driver as it may have to reset its
descriptor indexes. And I guess it's wrong to spin wait until link
is established in mge_init_locked(). The datasheet says Rx checksum
offloading capability but can't find more information for that.
Another nice looking feature that lacks in mge(4) would be
interrupt coalescing. And I guess interrupt coalescing feature
would give better performance than polling(4).

> grzesiek
> 


More information about the freebsd-current mailing list