1/* 2 3 Broadcom BCM43xx wireless driver 4 5 Copyright (c) 2005 Martin Langer <martin-langer@gmx.de>, 6 Stefano Brivio <st3@riseup.net> 7 Michael Buesch <mbuesch@freenet.de> 8 Danny van Dyk <kugelfang@gentoo.org> 9 Andreas Jaggi <andreas.jaggi@waterwave.ch> 10 11 Some parts of the code in this file are derived from the ipw2200 12 driver Copyright(c) 2003 - 2004 Intel Corporation. 13 14 This program is free software; you can redistribute it and/or modify 15 it under the terms of the GNU General Public License as published by 16 the Free Software Foundation; either version 2 of the License, or 17 (at your option) any later version. 18 19 This program is distributed in the hope that it will be useful, 20 but WITHOUT ANY WARRANTY; without even the implied warranty of 21 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 22 GNU General Public License for more details. 23 24 You should have received a copy of the GNU General Public License 25 along with this program; see the file COPYING. If not, write to 26 the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor, 27 Boston, MA 02110-1301, USA. 28 29*/ 30 31#ifndef BCM43xx_POWER_H_ 32#define BCM43xx_POWER_H_ 33 34#include <linux/types.h> 35 36/* Clock sources */ 37enum { 38 /* PCI clock */ 39 BCM43xx_PCTL_CLKSRC_PCI, 40 /* Crystal slow clock oscillator */ 41 BCM43xx_PCTL_CLKSRC_XTALOS, 42 /* Low power oscillator */ 43 BCM43xx_PCTL_CLKSRC_LOPWROS, 44}; 45 46struct bcm43xx_private; 47 48int bcm43xx_pctl_init(struct bcm43xx_private *bcm); 49int bcm43xx_pctl_set_clock(struct bcm43xx_private *bcm, u16 mode); 50int bcm43xx_pctl_set_crystal(struct bcm43xx_private *bcm, int on); 51u16 bcm43xx_pctl_powerup_delay(struct bcm43xx_private *bcm); 52 53void bcm43xx_power_saving_ctl_bits(struct bcm43xx_private *bcm, 54 int bit25, int bit26); 55 56#endif /* BCM43xx_POWER_H_ */ 57