Merge tag 'v3.3.7' into 3.3/master
[zen-stable.git] / include / linux / mfd / htc-pasic3.h
blob3d3ed67bd969be24e0725523a7ba1f91952b9f04
1 /*
2 * HTC PASIC3 driver - LEDs and DS1WM
4 * Copyright (c) 2007 Philipp Zabel <philipp.zabel@gmail.com>
6 * This file is subject to the terms and conditions of the GNU General Public
7 * License. See the file COPYING in the main directory of this archive for
8 * more details.
12 #ifndef __PASIC3_H
13 #define __PASIC3_H
15 #include <linux/platform_device.h>
16 #include <linux/leds.h>
18 extern void pasic3_write_register(struct device *dev, u32 reg, u8 val);
19 extern u8 pasic3_read_register(struct device *dev, u32 reg);
22 * mask for registers 0x20,0x21,0x22
24 #define PASIC3_MASK_LED0 0x04
25 #define PASIC3_MASK_LED1 0x08
26 #define PASIC3_MASK_LED2 0x40
29 * bits in register 0x06
31 #define PASIC3_BIT2_LED0 0x08
32 #define PASIC3_BIT2_LED1 0x10
33 #define PASIC3_BIT2_LED2 0x20
35 struct pasic3_led {
36 struct led_classdev led;
37 unsigned int hw_num;
38 unsigned int bit2;
39 unsigned int mask;
40 struct pasic3_leds_machinfo *pdata;
43 struct pasic3_leds_machinfo {
44 unsigned int num_leds;
45 unsigned int power_gpio;
46 struct pasic3_led *leds;
49 struct pasic3_platform_data {
50 struct pasic3_leds_machinfo *led_pdata;
51 unsigned int clock_rate;
54 #endif