diff options
Diffstat (limited to 'include/linux/platform_data')
-rw-r--r-- | include/linux/platform_data/lm3630_bl.h | 57 | ||||
-rw-r--r-- | include/linux/platform_data/lm3630a_bl.h | 65 | ||||
-rw-r--r-- | include/linux/platform_data/lp855x.h | 19 |
3 files changed, 84 insertions, 57 deletions
diff --git a/include/linux/platform_data/lm3630_bl.h b/include/linux/platform_data/lm3630_bl.h deleted file mode 100644 index 9176dd3f2d63..000000000000 --- a/include/linux/platform_data/lm3630_bl.h +++ /dev/null | |||
@@ -1,57 +0,0 @@ | |||
1 | /* | ||
2 | * Simple driver for Texas Instruments LM3630 LED Flash driver chip | ||
3 | * Copyright (C) 2012 Texas Instruments | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License version 2 as | ||
7 | * published by the Free Software Foundation. | ||
8 | * | ||
9 | */ | ||
10 | |||
11 | #ifndef __LINUX_LM3630_H | ||
12 | #define __LINUX_LM3630_H | ||
13 | |||
14 | #define LM3630_NAME "lm3630_bl" | ||
15 | |||
16 | enum lm3630_pwm_ctrl { | ||
17 | PWM_CTRL_DISABLE = 0, | ||
18 | PWM_CTRL_BANK_A, | ||
19 | PWM_CTRL_BANK_B, | ||
20 | PWM_CTRL_BANK_ALL, | ||
21 | }; | ||
22 | |||
23 | enum lm3630_pwm_active { | ||
24 | PWM_ACTIVE_HIGH = 0, | ||
25 | PWM_ACTIVE_LOW, | ||
26 | }; | ||
27 | |||
28 | enum lm3630_bank_a_ctrl { | ||
29 | BANK_A_CTRL_DISABLE = 0x0, | ||
30 | BANK_A_CTRL_LED1 = 0x4, | ||
31 | BANK_A_CTRL_LED2 = 0x1, | ||
32 | BANK_A_CTRL_ALL = 0x5, | ||
33 | }; | ||
34 | |||
35 | enum lm3630_bank_b_ctrl { | ||
36 | BANK_B_CTRL_DISABLE = 0, | ||
37 | BANK_B_CTRL_LED2, | ||
38 | }; | ||
39 | |||
40 | struct lm3630_platform_data { | ||
41 | |||
42 | /* maximum brightness */ | ||
43 | int max_brt_led1; | ||
44 | int max_brt_led2; | ||
45 | |||
46 | /* initial on brightness */ | ||
47 | int init_brt_led1; | ||
48 | int init_brt_led2; | ||
49 | enum lm3630_pwm_ctrl pwm_ctrl; | ||
50 | enum lm3630_pwm_active pwm_active; | ||
51 | enum lm3630_bank_a_ctrl bank_a_ctrl; | ||
52 | enum lm3630_bank_b_ctrl bank_b_ctrl; | ||
53 | unsigned int pwm_period; | ||
54 | void (*pwm_set_intensity) (int brightness, int max_brightness); | ||
55 | }; | ||
56 | |||
57 | #endif /* __LINUX_LM3630_H */ | ||
diff --git a/include/linux/platform_data/lm3630a_bl.h b/include/linux/platform_data/lm3630a_bl.h new file mode 100644 index 000000000000..7538e38e270b --- /dev/null +++ b/include/linux/platform_data/lm3630a_bl.h | |||
@@ -0,0 +1,65 @@ | |||
1 | /* | ||
2 | * Simple driver for Texas Instruments LM3630A LED Flash driver chip | ||
3 | * Copyright (C) 2012 Texas Instruments | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License version 2 as | ||
7 | * published by the Free Software Foundation. | ||
8 | * | ||
9 | */ | ||
10 | |||
11 | #ifndef __LINUX_LM3630A_H | ||
12 | #define __LINUX_LM3630A_H | ||
13 | |||
14 | #define LM3630A_NAME "lm3630a_bl" | ||
15 | |||
16 | enum lm3630a_pwm_ctrl { | ||
17 | LM3630A_PWM_DISABLE = 0x00, | ||
18 | LM3630A_PWM_BANK_A, | ||
19 | LM3630A_PWM_BANK_B, | ||
20 | LM3630A_PWM_BANK_ALL, | ||
21 | LM3630A_PWM_BANK_A_ACT_LOW = 0x05, | ||
22 | LM3630A_PWM_BANK_B_ACT_LOW, | ||
23 | LM3630A_PWM_BANK_ALL_ACT_LOW, | ||
24 | }; | ||
25 | |||
26 | enum lm3630a_leda_ctrl { | ||
27 | LM3630A_LEDA_DISABLE = 0x00, | ||
28 | LM3630A_LEDA_ENABLE = 0x04, | ||
29 | LM3630A_LEDA_ENABLE_LINEAR = 0x14, | ||
30 | }; | ||
31 | |||
32 | enum lm3630a_ledb_ctrl { | ||
33 | LM3630A_LEDB_DISABLE = 0x00, | ||
34 | LM3630A_LEDB_ON_A = 0x01, | ||
35 | LM3630A_LEDB_ENABLE = 0x02, | ||
36 | LM3630A_LEDB_ENABLE_LINEAR = 0x0A, | ||
37 | }; | ||
38 | |||
39 | #define LM3630A_MAX_BRIGHTNESS 255 | ||
40 | /* | ||
41 | *@leda_init_brt : led a init brightness. 4~255 | ||
42 | *@leda_max_brt : led a max brightness. 4~255 | ||
43 | *@leda_ctrl : led a disable, enable linear, enable exponential | ||
44 | *@ledb_init_brt : led b init brightness. 4~255 | ||
45 | *@ledb_max_brt : led b max brightness. 4~255 | ||
46 | *@ledb_ctrl : led b disable, enable linear, enable exponential | ||
47 | *@pwm_period : pwm period | ||
48 | *@pwm_ctrl : pwm disable, bank a or b, active high or low | ||
49 | */ | ||
50 | struct lm3630a_platform_data { | ||
51 | |||
52 | /* led a config. */ | ||
53 | int leda_init_brt; | ||
54 | int leda_max_brt; | ||
55 | enum lm3630a_leda_ctrl leda_ctrl; | ||
56 | /* led b config. */ | ||
57 | int ledb_init_brt; | ||
58 | int ledb_max_brt; | ||
59 | enum lm3630a_ledb_ctrl ledb_ctrl; | ||
60 | /* pwm config. */ | ||
61 | unsigned int pwm_period; | ||
62 | enum lm3630a_pwm_ctrl pwm_ctrl; | ||
63 | }; | ||
64 | |||
65 | #endif /* __LINUX_LM3630A_H */ | ||
diff --git a/include/linux/platform_data/lp855x.h b/include/linux/platform_data/lp855x.h index ea3200527dd3..1b2ba24e4e03 100644 --- a/include/linux/platform_data/lp855x.h +++ b/include/linux/platform_data/lp855x.h | |||
@@ -40,6 +40,17 @@ | |||
40 | #define LP8553_PWM_CONFIG LP8550_PWM_CONFIG | 40 | #define LP8553_PWM_CONFIG LP8550_PWM_CONFIG |
41 | #define LP8553_I2C_CONFIG LP8550_I2C_CONFIG | 41 | #define LP8553_I2C_CONFIG LP8550_I2C_CONFIG |
42 | 42 | ||
43 | /* CONFIG register - LP8555 */ | ||
44 | #define LP8555_PWM_STANDBY BIT(7) | ||
45 | #define LP8555_PWM_FILTER BIT(6) | ||
46 | #define LP8555_RELOAD_EPROM BIT(3) /* use it if EPROMs should be reset | ||
47 | when the backlight turns on */ | ||
48 | #define LP8555_OFF_OPENLEDS BIT(2) | ||
49 | #define LP8555_PWM_CONFIG LP8555_PWM_ONLY | ||
50 | #define LP8555_I2C_CONFIG LP8555_I2C_ONLY | ||
51 | #define LP8555_COMB1_CONFIG LP8555_COMBINED1 | ||
52 | #define LP8555_COMB2_CONFIG LP8555_COMBINED2 | ||
53 | |||
43 | /* DEVICE CONTROL register - LP8556 */ | 54 | /* DEVICE CONTROL register - LP8556 */ |
44 | #define LP8556_PWM_CONFIG (LP8556_PWM_ONLY << BRT_MODE_SHFT) | 55 | #define LP8556_PWM_CONFIG (LP8556_PWM_ONLY << BRT_MODE_SHFT) |
45 | #define LP8556_COMB1_CONFIG (LP8556_COMBINED1 << BRT_MODE_SHFT) | 56 | #define LP8556_COMB1_CONFIG (LP8556_COMBINED1 << BRT_MODE_SHFT) |
@@ -65,6 +76,7 @@ enum lp855x_chip_id { | |||
65 | LP8551, | 76 | LP8551, |
66 | LP8552, | 77 | LP8552, |
67 | LP8553, | 78 | LP8553, |
79 | LP8555, | ||
68 | LP8556, | 80 | LP8556, |
69 | LP8557, | 81 | LP8557, |
70 | }; | 82 | }; |
@@ -89,6 +101,13 @@ enum lp8553_brighntess_source { | |||
89 | LP8553_I2C_ONLY = LP8550_I2C_ONLY, | 101 | LP8553_I2C_ONLY = LP8550_I2C_ONLY, |
90 | }; | 102 | }; |
91 | 103 | ||
104 | enum lp8555_brightness_source { | ||
105 | LP8555_PWM_ONLY, | ||
106 | LP8555_I2C_ONLY, | ||
107 | LP8555_COMBINED1, /* Brightness register with shaped PWM */ | ||
108 | LP8555_COMBINED2, /* PWM with shaped brightness register */ | ||
109 | }; | ||
110 | |||
92 | enum lp8556_brightness_source { | 111 | enum lp8556_brightness_source { |
93 | LP8556_PWM_ONLY, | 112 | LP8556_PWM_ONLY, |
94 | LP8556_COMBINED1, /* pwm + i2c before the shaper block */ | 113 | LP8556_COMBINED1, /* pwm + i2c before the shaper block */ |