[PATCH] i2c: tps65010 build fixes
The tps65010.c driver in the main tree never got updated with build fixes since the last batch of I2C driver changes; and the genirq trigger flags were updated wierdly too. This also includes a minor tweak to reduce the frequency used to poll for unplug-the-AC-power on the TPS chips that don't provide relevant IRQs. It _would_ be nice to sense whether there's even a battery, but that'd normally be an HDQ/1-wire interface to a smart battery, and such APIs aren't standardized. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
f834c75542
commit
4801bc25f3
@@ -43,13 +43,12 @@
|
|||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#define DRIVER_VERSION "2 May 2005"
|
#define DRIVER_VERSION "2 May 2005"
|
||||||
#define DRIVER_NAME (tps65010_driver.name)
|
#define DRIVER_NAME (tps65010_driver.driver.name)
|
||||||
|
|
||||||
MODULE_DESCRIPTION("TPS6501x Power Management Driver");
|
MODULE_DESCRIPTION("TPS6501x Power Management Driver");
|
||||||
MODULE_LICENSE("GPL");
|
MODULE_LICENSE("GPL");
|
||||||
|
|
||||||
static unsigned short normal_i2c[] = { 0x48, /* 0x49, */ I2C_CLIENT_END };
|
static unsigned short normal_i2c[] = { 0x48, /* 0x49, */ I2C_CLIENT_END };
|
||||||
static unsigned short normal_i2c_range[] = { I2C_CLIENT_END };
|
|
||||||
|
|
||||||
I2C_CLIENT_INSMOD;
|
I2C_CLIENT_INSMOD;
|
||||||
|
|
||||||
@@ -100,7 +99,7 @@ struct tps65010 {
|
|||||||
/* not currently tracking GPIO state */
|
/* not currently tracking GPIO state */
|
||||||
};
|
};
|
||||||
|
|
||||||
#define POWER_POLL_DELAY msecs_to_jiffies(800)
|
#define POWER_POLL_DELAY msecs_to_jiffies(5000)
|
||||||
|
|
||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
|
|
||||||
@@ -520,8 +519,11 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)
|
|||||||
goto fail1;
|
goto fail1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* the IRQ is active low, but many gpio lines can't support that
|
||||||
|
* so this driver can use falling-edge triggers instead.
|
||||||
|
*/
|
||||||
|
irqflags = IRQF_SAMPLE_RANDOM;
|
||||||
#ifdef CONFIG_ARM
|
#ifdef CONFIG_ARM
|
||||||
irqflags = IRQF_SAMPLE_RANDOM | IRQF_TRIGGER_LOW;
|
|
||||||
if (machine_is_omap_h2()) {
|
if (machine_is_omap_h2()) {
|
||||||
tps->model = TPS65010;
|
tps->model = TPS65010;
|
||||||
omap_cfg_reg(W4_GPIO58);
|
omap_cfg_reg(W4_GPIO58);
|
||||||
@@ -543,8 +545,6 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)
|
|||||||
|
|
||||||
// FIXME set up this board's IRQ ...
|
// FIXME set up this board's IRQ ...
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
irqflags = IRQF_SAMPLE_RANDOM;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (tps->irq > 0) {
|
if (tps->irq > 0) {
|
||||||
|
Reference in New Issue
Block a user