aboutsummaryrefslogtreecommitdiff
path: root/drivers/i2c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/chips/pcf50633.c28
-rw-r--r--drivers/i2c/chips/pcf50633.h53
2 files changed, 6 insertions, 75 deletions
diff --git a/drivers/i2c/chips/pcf50633.c b/drivers/i2c/chips/pcf50633.c
index d2ff2c156e8..8ba81d24254 100644
--- a/drivers/i2c/chips/pcf50633.c
+++ b/drivers/i2c/chips/pcf50633.c
@@ -1935,23 +1935,7 @@ int pcf50633_report_resumers(struct pcf50633_data *pcf, char *buf)
#ifdef CONFIG_PM
-#define INT1M_RESUMERS (PCF50633_INT1_ADPINS | \
- PCF50633_INT1_ADPREM | \
- PCF50633_INT1_USBINS | \
- PCF50633_INT1_USBREM | \
- PCF50633_INT1_ALARM)
-#define INT2M_RESUMERS (PCF50633_INT2_ONKEYF)
-#define INT3M_RESUMERS (PCF50633_INT3_BATFULL | \
- PCF50633_INT3_CHGHALT | \
- PCF50633_INT3_THLIMON | \
- PCF50633_INT3_THLIMOFF | \
- PCF50633_INT3_USBLIMON | \
- PCF50633_INT3_USBLIMOFF | \
- PCF50633_INT3_ONKEY1S)
-#define INT4M_RESUMERS (PCF50633_INT4_LOWSYS | \
- PCF50633_INT4_LOWBAT | \
- PCF50633_INT4_HIGHTMP)
-#define INT5M_RESUMERS (0)
+
static int pcf50633_suspend(struct device *dev, pm_message_t state)
{
@@ -2010,11 +1994,11 @@ static int pcf50633_suspend(struct device *dev, pm_message_t state)
pcf->standby_regs.int3m = __reg_read(pcf, PCF50633_REG_INT3M);
pcf->standby_regs.int4m = __reg_read(pcf, PCF50633_REG_INT4M);
pcf->standby_regs.int5m = __reg_read(pcf, PCF50633_REG_INT5M);
- __reg_write(pcf, PCF50633_REG_INT1M, ~INT1M_RESUMERS & 0xff);
- __reg_write(pcf, PCF50633_REG_INT2M, ~INT2M_RESUMERS & 0xff);
- __reg_write(pcf, PCF50633_REG_INT3M, ~INT3M_RESUMERS & 0xff);
- __reg_write(pcf, PCF50633_REG_INT4M, ~INT4M_RESUMERS & 0xff);
- __reg_write(pcf, PCF50633_REG_INT5M, ~INT5M_RESUMERS & 0xff);
+ __reg_write(pcf, PCF50633_REG_INT1M, ~pcf->pdata->resumers[0]);
+ __reg_write(pcf, PCF50633_REG_INT2M, ~pcf->pdata->resumers[1]);
+ __reg_write(pcf, PCF50633_REG_INT3M, ~pcf->pdata->resumers[2]);
+ __reg_write(pcf, PCF50633_REG_INT4M, ~pcf->pdata->resumers[3]);
+ __reg_write(pcf, PCF50633_REG_INT5M, ~pcf->pdata->resumers[4]);
pcf->have_been_suspended = 1;
diff --git a/drivers/i2c/chips/pcf50633.h b/drivers/i2c/chips/pcf50633.h
index 93dfd999e68..5d54131db5a 100644
--- a/drivers/i2c/chips/pcf50633.h
+++ b/drivers/i2c/chips/pcf50633.h
@@ -125,59 +125,6 @@ enum pfc50633_regs {
__NUM_PCF50633_REGS
};
-enum pcf50633_reg_int1 {
- PCF50633_INT1_ADPINS = 0x01, /* Adapter inserted */
- PCF50633_INT1_ADPREM = 0x02, /* Adapter removed */
- PCF50633_INT1_USBINS = 0x04, /* USB inserted */
- PCF50633_INT1_USBREM = 0x08, /* USB removed */
- /* reserved */
- PCF50633_INT1_ALARM = 0x40, /* RTC alarm time is reached */
- PCF50633_INT1_SECOND = 0x80, /* RTC periodic second interrupt */
-};
-
-enum pcf50633_reg_int2 {
- PCF50633_INT2_ONKEYR = 0x01, /* ONKEY rising edge */
- PCF50633_INT2_ONKEYF = 0x02, /* ONKEY falling edge */
- PCF50633_INT2_EXTON1R = 0x04, /* EXTON1 rising edge */
- PCF50633_INT2_EXTON1F = 0x08, /* EXTON1 falling edge */
- PCF50633_INT2_EXTON2R = 0x10, /* EXTON2 rising edge */
- PCF50633_INT2_EXTON2F = 0x20, /* EXTON2 falling edge */
- PCF50633_INT2_EXTON3R = 0x40, /* EXTON3 rising edge */
- PCF50633_INT2_EXTON3F = 0x80, /* EXTON3 falling edge */
-};
-
-enum pcf50633_reg_int3 {
- PCF50633_INT3_BATFULL = 0x01, /* Battery full */
- PCF50633_INT3_CHGHALT = 0x02, /* Charger halt */
- PCF50633_INT3_THLIMON = 0x04,
- PCF50633_INT3_THLIMOFF = 0x08,
- PCF50633_INT3_USBLIMON = 0x10,
- PCF50633_INT3_USBLIMOFF = 0x20,
- PCF50633_INT3_ADCRDY = 0x40, /* ADC conversion finished */
- PCF50633_INT3_ONKEY1S = 0x80, /* ONKEY pressed 1 second */
-};
-
-enum pcf50633_reg_int4 {
- PCF50633_INT4_LOWSYS = 0x01,
- PCF50633_INT4_LOWBAT = 0x02,
- PCF50633_INT4_HIGHTMP = 0x04,
- PCF50633_INT4_AUTOPWRFAIL = 0x08,
- PCF50633_INT4_DWN1PWRFAIL = 0x10,
- PCF50633_INT4_DWN2PWRFAIL = 0x20,
- PCF50633_INT4_LEDPWRFAIL = 0x40,
- PCF50633_INT4_LEDOVP = 0x80,
-};
-
-enum pcf50633_reg_int5 {
- PCF50633_INT5_LDO1PWRFAIL = 0x01,
- PCF50633_INT5_LDO2PWRFAIL = 0x02,
- PCF50633_INT5_LDO3PWRFAIL = 0x04,
- PCF50633_INT5_LDO4PWRFAIL = 0x08,
- PCF50633_INT5_LDO5PWRFAIL = 0x10,
- PCF50633_INT5_LDO6PWRFAIL = 0x20,
- PCF50633_INT5_HCLDOPWRFAIL = 0x40,
- PCF50633_INT5_HCLDOOVL = 0x80,
-};
enum pcf50633_reg_oocshdwn {
PCF50633_OOCSHDWN_GOSTDBY = 0x01,