• Stephen Hemminger's avatar
    [IRDA]: stir4200 update for 2.6.4-rc1 · 0db1f9e3
    Stephen Hemminger authored
    New revision of the Sigmatel irda driver.  This version has much
    better performance and doesn't drop frames in FIR mode.
    Tested with both UHCI and EHCI/OHCI against nsc-ircc on laptop.
    Thanks to Martin for additional testing and feedback.
    
    * Receiver:
    	- changed from interrupt to bulk URB.  Queue's one bulk
    	  urb per USB tick (1ms).
    	- FIR unpack now uses get_unaligned and cpu32_le
    	  instead of explicit shifts
    	- FIR unpack copies small frames
    * Transmitter:
    	- pack data into io buffer.  Since irda is half duplex
    	  can use same buffer for transmit and receive.
    	- use xchange and wait_event for synchronization
    * Other:
    	- use USB format messages rather than IRDA (ugly)
    	- clean up USB startup
    	- reset device on network open to clear up stuck state
    	- handle FIFO errors
    	- disconnect cleanup (from viro)
    	- don't DMA onto stack when reading fifo status
    0db1f9e3
stir4200.c 26.8 KB