]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - include/linux/leds-lp5521.h
Merge branch 'for-3.5' of ../cgroup into block/for-3.5/core-merged
[mirror_ubuntu-zesty-kernel.git] / include / linux / leds-lp5521.h
index e675b8d4c7bf21dea730a13301f33bf4edceaa3b..3f071ec019b24d8f3a87b9b7ffda22900b99d96d 100644 (file)
@@ -32,10 +32,31 @@ struct lp5521_led_config {
        u8              max_current;
 };
 
+struct lp5521_led_pattern {
+       u8 *r;
+       u8 *g;
+       u8 *b;
+       u8 size_r;
+       u8 size_g;
+       u8 size_b;
+};
+
 #define LP5521_CLOCK_AUTO      0
 #define LP5521_CLOCK_INT       1
 #define LP5521_CLOCK_EXT       2
 
+/* Bits in CONFIG register */
+#define LP5521_PWM_HF                  0x40    /* PWM: 0 = 256Hz, 1 = 558Hz */
+#define LP5521_PWRSAVE_EN              0x20    /* 1 = Power save mode */
+#define LP5521_CP_MODE_OFF             0       /* Charge pump (CP) off */
+#define LP5521_CP_MODE_BYPASS          8       /* CP forced to bypass mode */
+#define LP5521_CP_MODE_1X5             0x10    /* CP forced to 1.5x mode */
+#define LP5521_CP_MODE_AUTO            0x18    /* Automatic mode selection */
+#define LP5521_R_TO_BATT               4       /* R out: 0 = CP, 1 = Vbat */
+#define LP5521_CLK_SRC_EXT             0       /* Ext-clk source (CLK_32K) */
+#define LP5521_CLK_INT                 1       /* Internal clock */
+#define LP5521_CLK_AUTO                        2       /* Automatic clock selection */
+
 struct lp5521_platform_data {
        struct lp5521_led_config *led_config;
        u8      num_channels;
@@ -44,6 +65,9 @@ struct lp5521_platform_data {
        void    (*release_resources)(void);
        void    (*enable)(bool state);
        const char *label;
+       u8      update_config;
+       struct lp5521_led_pattern *patterns;
+       int num_patterns;
 };
 
 #endif /* __LINUX_LP5521_H */