This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: link loss/detection at runtime





We had a similar issue at my company.  We ended up hooking FEC_ETH_PHY_INT, writing an ISR/DSR
combination, and running a thread to allow calls to phy_read().  In the thread, we read the contents
of the link status register when notified by the DSR that the status has changed.  This also allowed
us to have multiple notifiers execute upon link status change.

Something like:

phy_ok = phy_read(PHY_BMSR2, FEC_ETH_PHY, &mii_reg17);

if (mii_reg17 & PHY_BMSR2_LINK)
      link_up_status=true;
else
      link_up_status=false;

(pfn_proc_link_status)(link_up_status) ;

There may be (probably is) an easier solution, but this one worked for us.

HTH,

Steve

--------

"A chicken doesn't stop scratching just because the worms are scarce." - Grandma Soderquist's
Conclusion



                                                                                                    
             will_wagner@carallon.com                                                               
             Sent by:                                                                               
             ecos-discuss-owner@ecos.sou                                                         To 
             rceware.org                         ecos-discuss@ecos.sourceware.org                   
                                                                                                 cc 
                                                                                                    
             07/26/2005 05:07 AM                                                            Subject 
                                                 [ECOS] link loss/detection at runtime              
                                                                                                    
                                                                                                    
                                                                                                    
                                                                                                    
                                                                                                    
                                                                                                    




Hi All,

Are there any examples of ethernet drivers that cope with link
loss/detection after the drivers have been initialised? I am using an
MPC860 with AMD PHY. I have hunted through the source but can't find any
examples of this.

If not can anyone point me to what needs to be done in the bsd stack to
bring an interface up/down following a change in link status.

Thanks,

Will


--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss




-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]