 d5da79ac1f
			
		
	
	
	d5da79ac1f
	
	
	
		
			
			Implement (slightly) delayed entry into ELP. This will cure several
problems:
  - It works around a firmware race condition if ELP is entered too fast
    after commands (resulting in ELP timeout -traces)
  - It will reduce the number of sleep-wake cycles between already
    scheduled events such as interrupts and tx, hence improving
    performance (less delay in switching between RX and TX)
Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Reviewed-by: Vidhya Govindan <vidhya.govindan@nokia.com>
Signed-off-by: Kalle Valo <kalle.valo@nokia.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
		
	
			
		
			
				
	
	
		
			37 lines
		
	
	
	
		
			1.2 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
	
		
			1.2 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef __WL1251_PS_H__
 | |
| #define __WL1251_PS_H__
 | |
| 
 | |
| /*
 | |
|  * This file is part of wl1251
 | |
|  *
 | |
|  * Copyright (c) 1998-2007 Texas Instruments Incorporated
 | |
|  * Copyright (C) 2008 Nokia Corporation
 | |
|  *
 | |
|  * Contact: Kalle Valo <kalle.valo@nokia.com>
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or
 | |
|  * modify it under the terms of the GNU General Public License
 | |
|  * version 2 as published by the Free Software Foundation.
 | |
|  *
 | |
|  * This program is distributed in the hope that it will be useful, but
 | |
|  * WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
|  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | |
|  * General Public License for more details.
 | |
|  *
 | |
|  * You should have received a copy of the GNU General Public License
 | |
|  * along with this program; if not, write to the Free Software
 | |
|  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 | |
|  * 02110-1301 USA
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #include "wl1251.h"
 | |
| #include "wl1251_acx.h"
 | |
| 
 | |
| int wl1251_ps_set_mode(struct wl1251 *wl, enum wl1251_cmd_ps_mode mode);
 | |
| void wl1251_ps_elp_sleep(struct wl1251 *wl);
 | |
| int wl1251_ps_elp_wakeup(struct wl1251 *wl);
 | |
| void wl1251_elp_work(struct work_struct *work);
 | |
| 
 | |
| 
 | |
| #endif /* __WL1251_PS_H__ */
 |