
#ifndef BD71837_H_
#define BD71837_H_

#define BD71837_REGULATOR_DRIVER "bd71837_regulator"

enum {
    BD71837_REV 		= 0x00,
    BD71837_SWRESET 		= 0x01,
    BD71837_I2C_DEV		= 0x02,
    BD71837_PWRCTRL0		= 0x03,
    BD71837_PWRCTRL1 		= 0x04,
    BD71837_BUCK1_CTRL		= 0x05,
    BD71837_BUCK2_CTRL		= 0x06,
    BD71837_BUCK3_CTRL		= 0x07,
    BD71837_BUCK4_CTRL		= 0x08,
    BD71837_BUCK5_CTRL		= 0x09,
    BD71837_BUCK6_CTRL		= 0x0A,
    BD71837_BUCK7_CTRL		= 0x0B,
    BD71837_BUCK8_CTRL		= 0x0C,
    BD71837_BUCK1_VOLT_RUN	= 0x0D,
    BD71837_BUCK1_VOLT_IDLE	= 0x0E,
    BD71837_BUCK1_VOLT_SUSP	= 0x0F,
    BD71837_BUCK2_VOLT_RUN	= 0x10,
    BD71837_BUCK2_VOLT_IDLE	= 0x11,
    BD71837_BUCK3_VOLT_RUN	= 0x12,
    BD71837_BUCK4_VOLT_RUN	= 0x13,
    BD71837_BUCK5_VOLT		= 0x14,
    BD71837_BUCK6_VOLT		= 0x15,
    BD71837_BUCK7_VOLT		= 0x16,
    BD71837_BUCK8_VOLT		= 0x17,
    BD71837_LDO1_VOLT		= 0x18,
    BD71837_LDO2_VOLT		= 0x19,
    BD71837_LDO3_VOLT		= 0x1A,
    BD71837_LDO4_VOLT		= 0x1B,
    BD71837_LDO5_VOLT		= 0x1C,
    BD71837_LDO6_VOLT		= 0x1D,
    BD71837_LDO7_VOLT		= 0x1E,
    BD71837_TRANS_COND0		= 0x1F,
    BD71837_TRANS_COND1		= 0x20,
    BD71837_VRFAULTEN		= 0x21,
    BD71837_MVRFLTMASK0		= 0x22,
    BD71837_MVRFLTMASK1		= 0x23,
    BD71837_MVRFLTMASK2		= 0x24,
    BD71837_RCVCFG		= 0x25,
    BD71837_RCVNUM		= 0x26,
    BD71837_PWRONCONFIG0	= 0x27,
    BD71837_PWRONCONFIG1	= 0x28,
    BD71837_RESETSRC		= 0x29,
    BD71837_MIRQ		= 0x2A,
    BD71837_IRQ			= 0x2B,
    BD71837_IN_MON		= 0x2C,
    BD71837_POW_STATE		= 0x2D,
    BD71837_OUT32K		= 0x2E,
    BD71837_REGLOCK		= 0x2F,
    BD71837_MUXSW_EN		= 0x30,
    BD71837_REG_NUM,
};

int power_bd71837_init(unsigned char bus);

#endif
