erator' content='cgit v1.2.2'/>
aboutsummaryrefslogblamecommitdiffstats
path: root/drivers/net/cs89x0.c
blob: d325e01a53e0a79bf8af90f6103df11513604cc5 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
















                                                                            
                                                          




                                                                          
                                                                      








                                                                           
                                                                          



                                                                    
                                   










                                                                              
                                        






                                                                              
                                          


                                                                                          
                                             
























                                                                                    


                                              


                                                     


                                              



                                                                    







                                                                                
                          





























                                                          




                           
                      


                       
                    






                                  
                                                                            





                                                                             

                                                


                                                                          
                                                                      

                                                                          
                                 
                                                                                          
                                                                      
                                   
                                                                                          
                                                                      





                                                                 
     
                                                          























                                                                                            


























                                                                                                    
                                                                                
                                                        








                                                                                  
                                                                


                                                        



































                                                                        
 









































                                                                           
                   






                                                                                                          












                                                         
          

                                             
                                                      


           
                                                         
 
                                                       
 
     
          
                                             
 
                                       


           
                                                         
 
                                        
 
      
 





                                                                     
                          
 


                                                    








                                                                      
                          
 


                                                    


                           

                                          
 

                                                   


           
                                                      
 

                                                    














































                                                                                  







                                                                  
                                     



                             














                                                      











                                                                          
                



                                    
























                                                                                  







                                                                                     
                                                                                      
                                                                           
                                                                                    



                                                 

                     

                                                                      
                                               
 
                                          
                                      
                                                                             
                                                  
                                                           






























                                                                                    
 






                                                                          
 
                                                                       







                                                         








                                                                               
                              
 















                                                                                    
                                                                     
                                                                               
 




                                                                                   
                                            
                                                                                      
 



                                            
 
                                                          
 







                                                                                                
                                               
                                                                                                                                    
 


                                                                       
 


























































                                                                                                             
                               


                                                                            
                                                            


                                                                                         
 





























                                                                                                    
                                           
 

                                   



                                                       



                                      
                 
     
                                                       





                                                       
 


























                                                                      
















































































                                                                                           
                                             







                                                                                           
                                        








                                                                   



















                                                                                              

                                      



                       
                                                     
 
                                 
                                                                    









                                                                             
                                                                    

                                                                                              
                                                              


                                                     
                                                               








                                                                                            
                                 

 
 





                                                     
                                                                      













































































































                                                                                                                     

                                                             








                                                                         
                                                                               













































                                                                                
 






                                                                             
                                                                 


                                                     
                                                    
























                                                                     



























                                                                                              
         
                                













                                                                                                        
                                                                              
                          
                                                                                      




































                                                                                                               
                                                                                    





























                                                                                               


                                   
            













































                                                                                                      
                                 



                                                                                                  
                                 































































                                                                                          
                                                                              

                                                
                            










                                                                                              
                                            


                                          

                                                             






                                                                               
 
                                                         
                                                                       
                                      

                                              
                                                                             
                                                 
                                        












                                                                                  
                            
 
 

                                              
 
                                                       















                                                                            
                                                               







                                                                                
                                                





                                                                          









                                                                         








































                                                                                                                
                                                                     

                                      
                                                               






                                   
                                                   
 





                                                                           
                                 


                                             





                                                               



                                    

                                                 

                                    
                                             








                                                                                         
                                        


                                                              
 
                                                                            
                       
                                                                      








                                                                                              

                                      




















                                                                                         
 



























                                                                        

                                                                      

                                                 
                           











                                                      
                                                                      



                                                                                 
         
















                                                                                                          




                                                            



                                                           











                                                                                           

                                                                          







































                                                                                                 
                                                                               




























                                                                      
                            




























































                                                                                                    






                         
           


                                      
                                                              



                                                                 
 








                        
/* cs89x0.c: A Crystal Semiconductor (Now Cirrus Logic) CS89[02]0
 *  driver for linux.
 */

/*
	Written 1996 by Russell Nelson, with reference to skeleton.c
	written 1993-1994 by Donald Becker.

	This software may be used and distributed according to the terms
	of the GNU General Public License, incorporated herein by reference.

        The author may be reached at nelson@crynwr.com, Crynwr
        Software, 521 Pleasant Valley Rd., Potsdam, NY 13676

  Changelog:

  Mike Cruse        : mcruse@cti-ltd.com
                    : Changes for Linux 2.0 compatibility.
                    : Added dev_id parameter in net_interrupt(),
                    : request_irq() and free_irq(). Just NULL for now.

  Mike Cruse        : Added MOD_INC_USE_COUNT and MOD_DEC_USE_COUNT macros
                    : in net_open() and net_close() so kerneld would know
                    : that the module is in use and wouldn't eject the
                    : driver prematurely.

  Mike Cruse        : Rewrote init_module() and cleanup_module using 8390.c
                    : as an example. Disabled autoprobing in init_module(),
                    : not a good thing to do to other devices while Linux
                    : is running from all accounts.

  Russ Nelson       : Jul 13 1998.  Added RxOnly DMA support.

  Melody Lee        : Aug 10 1999.  Changes for Linux 2.2.5 compatibility.
                    : email: ethernet@crystal.cirrus.com

  Alan Cox          : Removed 1.2 support, added 2.1 extra counters.

  Andrew Morton     : Kernel 2.3.48
                    : Handle kmalloc() failures
                    : Other resource allocation fixes
                    : Add SMP locks
                    : Integrate Russ Nelson's ALLOW_DMA functionality back in.
                    : If ALLOW_DMA is true, make DMA runtime selectable
                    : Folded in changes from Cirrus (Melody Lee
                    : <klee@crystal.cirrus.com>)
                    : Don't call netif_wake_queue() in net_send_packet()
                    : Fixed an out-of-mem bug in dma_rx()
                    : Updated Documentation/networking/cs89x0.txt

  Andrew Morton     : Kernel 2.3.99-pre1
                    : Use skb_reserve to longword align IP header (two places)
                    : Remove a delay loop from dma_rx()
                    : Replace '100' with HZ
                    : Clean up a couple of skb API abuses
                    : Added 'cs89x0_dma=N' kernel boot option
                    : Correctly initialise lp->lock in non-module compile

  Andrew Morton     : Kernel 2.3.99-pre4-1
                    : MOD_INC/DEC race fix (see
                    : http://www.uwsg.indiana.edu/hypermail/linux/kernel/0003.3/1532.html)

  Andrew Morton     : Kernel 2.4.0-test7-pre2
                    : Enhanced EEPROM support to cover more devices,
                    :   abstracted IRQ mapping to support CONFIG_ARCH_CLPS7500 arch
                    :   (Jason Gunthorpe <jgg@ualberta.ca>)

  Andrew Morton     : Kernel 2.4.0-test11-pre4
                    : Use dev->name in request_*() (Andrey Panin)