root/include/linux/platform_data/lm3630a_bl.h

/* [<][>][^][v][top][bottom][index][help] */
/*
* Simple driver for Texas Instruments LM3630A LED Flash driver chip
* Copyright (C) 2012 Texas Instruments
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
*/

#ifndef __LINUX_LM3630A_H
#define __LINUX_LM3630A_H

#define LM3630A_NAME "lm3630a_bl"

enum lm3630a_pwm_ctrl {
        LM3630A_PWM_DISABLE = 0x00,
        LM3630A_PWM_BANK_A,
        LM3630A_PWM_BANK_B,
        LM3630A_PWM_BANK_ALL,
        LM3630A_PWM_BANK_A_ACT_LOW = 0x05,
        LM3630A_PWM_BANK_B_ACT_LOW,
        LM3630A_PWM_BANK_ALL_ACT_LOW,
};

enum lm3630a_leda_ctrl {
        LM3630A_LEDA_DISABLE = 0x00,
        LM3630A_LEDA_ENABLE = 0x04,
        LM3630A_LEDA_ENABLE_LINEAR = 0x14,
};

enum lm3630a_ledb_ctrl {
        LM3630A_LEDB_DISABLE = 0x00,
        LM3630A_LEDB_ON_A = 0x01,
        LM3630A_LEDB_ENABLE = 0x02,
        LM3630A_LEDB_ENABLE_LINEAR = 0x0A,
};

#define LM3630A_MAX_BRIGHTNESS 255
/*
 *@leda_init_brt : led a init brightness. 4~255
 *@leda_max_brt  : led a max brightness.  4~255
 *@leda_ctrl     : led a disable, enable linear, enable exponential
 *@ledb_init_brt : led b init brightness. 4~255
 *@ledb_max_brt  : led b max brightness.  4~255
 *@ledb_ctrl     : led b disable, enable linear, enable exponential
 *@pwm_period    : pwm period
 *@pwm_ctrl      : pwm disable, bank a or b, active high or low
 */
struct lm3630a_platform_data {

        /* led a config.  */
        int leda_init_brt;
        int leda_max_brt;
        enum lm3630a_leda_ctrl leda_ctrl;
        /* led b config. */
        int ledb_init_brt;
        int ledb_max_brt;
        enum lm3630a_ledb_ctrl ledb_ctrl;
        /* pwm config. */
        unsigned int pwm_period;
        enum lm3630a_pwm_ctrl pwm_ctrl;
};

#endif /* __LINUX_LM3630A_H */

/* [<][>][^][v][top][bottom][index][help] */