pmic: tps65218: add useful functions and defines

Add the following functions:
tps65218_reg_read() for accessing redisters
tps65218_toggle_fseal() for toggling the fseal bit
tps65218_lock_fsea() for locking the fseal bit to 1

Add the following defines:
All status register bits

Cc: Tom Rini <trini@konsulko.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Nikita Kiryanov
2016-02-19 19:19:46 +02:00
committed by Tom Rini
parent 5dc5a8cac7
commit 9bcfca123c
2 changed files with 68 additions and 0 deletions

View File

@@ -8,6 +8,8 @@
#ifndef __POWER_TPS65218_H__
#define __POWER_TPS65218_H__
#include <linux/bitops.h>
/* I2C chip address */
#define TPS65218_CHIP_PM 0x24
@@ -60,8 +62,18 @@ enum {
#define TPS65218_DCDC_VOLT_SEL_1260MV 0x29
#define TPS65218_DCDC_VOLT_SEL_1330MV 0x30
#define TPS65218_CC_STAT (BIT(0) | BIT(1))
#define TPS65218_STATE (BIT(2) | BIT(3))
#define TPS65218_PB_STATE BIT(4)
#define TPS65218_AC_STATE BIT(5)
#define TPS65218_EE BIT(6)
#define TPS65218_FSEAL BIT(7)
int tps65218_reg_read(uchar dest_reg, uchar *dest_val);
int tps65218_reg_write(uchar prot_level, uchar dest_reg, uchar dest_val,
uchar mask);
int tps65218_voltage_update(uchar dc_cntrl_reg, uchar volt_sel);
int tps65218_toggle_fseal(void);
int tps65218_lock_fseal(void);
int power_tps65218_init(unsigned char bus);
#endif /* __POWER_TPS65218_H__ */