2009/1/8 Matt Hsu <[email protected]>: > > Signed-off-by: Matt Hsu <[email protected]> > --- > drivers/i2c/chips/lp5521.c | 33 +++++++++++++++++++++++++++++++++ > include/linux/lp5521.h | 10 ++++++++++ > 2 files changed, 43 insertions(+), 0 deletions(-) > create mode 100644 include/linux/lp5521.h > > diff --git a/drivers/i2c/chips/lp5521.c b/drivers/i2c/chips/lp5521.c > index 83f6626..cc407b7 100644 > --- a/drivers/i2c/chips/lp5521.c > +++ b/drivers/i2c/chips/lp5521.c > @@ -4,6 +4,7 @@ > * Copyright (C) 2007 Nokia Corporation > * > * Written by Mathias Nyman <[email protected]> > + * Matt Hsu <[email protected]> > * > * This program is free software; you can redistribute it and/or modify > * it under the terms of the GNU General Public License as published by > @@ -25,6 +26,8 @@ > #include <linux/i2c.h> > #include <linux/mutex.h> > > +#include <linux/lp5521.h> > + > #define LP5521_DRIVER_NAME "lp5521" > > #ifdef LED_CONNECTED_WRONG > @@ -502,10 +505,31 @@ static int lp5521_set_mode(struct lp5521_chip *chip, > char *mode) > /*--------------------------------------------------------------*/ > static struct i2c_driver lp5521_driver; > > +#ifdef CONFIG_PM > +static int lp5521_suspend(struct device *dev, pm_message_t state) > +{ > + /* FIXME: Not implemented > + * Here we could upload firmware to perform > + * any scenarios we want and save registers. > + */ > + return 0; > +} > + > +static int lp5521_resume(struct device *dev) > +{ > + /* FIXME: Not implemented */ > + return 0; > +} > +#else > +#define lp5521_suspend NULL > +#define lp5521_resume NULL > +#endif > + > static int lp5521_probe(struct i2c_client *client) > { > struct lp5521_chip *chip; > int ret = 0; > + struct lp5521_platform_data *pdata = client->dev.platform_data; > > chip = kzalloc(sizeof(*chip), GFP_KERNEL); > if (!chip) > @@ -517,6 +541,9 @@ static int lp5521_probe(struct i2c_client *client) > > mutex_init(&chip->lock); > > + /* enter start-up mode */ > + (pdata->ext_enable)(1);
Might be good to make it conditional so as not to break n810 support. Is the lp5521_id_table used anywhere? Cheers
