This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / include / asm-arm / arch-omap / tps65010.h
1 /* linux/include/asm-arm/arch-omap/tps65010.h
2  *
3  * Functions to access TPS65010 power management device.
4  *
5  * Copyright (C) 2004 Dirk Behme <dirk.behme@de.bosch.com>
6  *
7  * This program is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License as published by the
9  * Free Software Foundation; either version 2 of the License, or (at your
10  * option) any later version.
11  *
12  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
13  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
14  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
15  * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
16  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
17  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
18  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
19  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
20  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
21  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22  *
23  * You should have received a copy of the  GNU General Public License along
24  * with this program; if not, write  to the Free Software Foundation, Inc.,
25  * 675 Mass Ave, Cambridge, MA 02139, USA.
26  */
27
28 #ifndef __ASM_ARCH_TPS65010_H
29 #define __ASM_ARCH_TPS65010_H
30
31 /*
32  * ----------------------------------------------------------------------------
33  * Macros used by exported functions
34  * ----------------------------------------------------------------------------
35  */
36
37 #define LED1  1
38 #define LED2  2
39 #define OFF   0
40 #define ON    1
41 #define BLINK 2
42 #define GPIO1 1
43 #define GPIO2 2
44 #define GPIO3 3
45 #define GPIO4 4
46 #define LOW   0
47 #define HIGH  1
48
49 /*
50  * ----------------------------------------------------------------------------
51  * Exported functions
52  * ----------------------------------------------------------------------------
53  */
54
55 /* Draw from VBUS:
56  *   0 mA -- DON'T DRAW (might supply power instead)
57  * 100 mA -- usb unit load (slowest charge rate)
58  * 500 mA -- usb high power (fast battery charge)
59  */
60 extern int tps65010_set_vbus_draw(unsigned mA);
61
62 /* tps65010_set_gpio_out_value parameter:
63  * gpio:  GPIO1, GPIO2, GPIO3 or GPIO4
64  * value: LOW or HIGH
65  */
66 extern int tps65010_set_gpio_out_value(unsigned gpio, unsigned value);
67
68 /* tps65010_set_led parameter:
69  * led:  LED1 or LED2
70  * mode: ON, OFF or BLINK
71  */
72 extern int tps65010_set_led(unsigned led, unsigned mode);
73
74 /* tps65010_set_low_pwr parameter:
75  * mode: ON or OFF
76  */
77 extern int tps65010_set_low_pwr(unsigned mode);
78
79 #endif /*  __ASM_ARCH_TPS65010_H */
80