]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branches 'regulator/topic/core', 'regulator/topic/regmap' and...
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 12 May 2012 10:09:47 +0000 (11:09 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 12 May 2012 10:09:47 +0000 (11:09 +0100)
1  2  3 
drivers/regulator/anatop-regulator.c
drivers/regulator/core.c
include/linux/mfd/rc5t583.h
sound/soc/codecs/sgtl5000.c

Simple merge
Simple merge
index 0b64b19d81abf9e89e3d609f020e10e2ac9952b6,a2c61609d21dbf6ab5ffe386e2721e58ac388ffe,b2c1f442d4efcc1bb2894361651252b29195aac7..c42fe92a727dad134fadfbc7ee7bb661f8de5738
@@@@ -278,46 -277,16 -303,19 +304,49 @@@@ struct rc5t583 
   struct rc5t583_platform_data {
        int             irq_base;
        bool            enable_shutdown;
++      int             regulator_deepsleep_slot[RC5T583_REGULATOR_MAX];
++      unsigned long   regulator_ext_pwr_control[RC5T583_REGULATOR_MAX];
++      struct regulator_init_data *reg_init_data[RC5T583_REGULATOR_MAX];
   };
   
 --int rc5t583_write(struct device *dev, u8 reg, uint8_t val);
 --int rc5t583_read(struct device *dev, uint8_t reg, uint8_t *val);
 --int rc5t583_set_bits(struct device *dev, unsigned int reg,
 --             unsigned int bit_mask);
 --int rc5t583_clear_bits(struct device *dev, unsigned int reg,
 --             unsigned int bit_mask);
 --int rc5t583_update(struct device *dev, unsigned int reg,
 --             unsigned int val, unsigned int mask);
 ++static inline int rc5t583_write(struct device *dev, uint8_t reg, uint8_t val)
 ++{
 ++     struct rc5t583 *rc5t583 = dev_get_drvdata(dev);
 ++     return regmap_write(rc5t583->regmap, reg, val);
 ++}
 ++
 ++static inline int rc5t583_read(struct device *dev, uint8_t reg, uint8_t *val)
 ++{
 ++     struct rc5t583 *rc5t583 = dev_get_drvdata(dev);
 ++     unsigned int ival;
 ++     int ret;
 ++     ret = regmap_read(rc5t583->regmap, reg, &ival);
 ++     if (!ret)
 ++             *val = (uint8_t)ival;
 ++     return ret;
 ++}
 ++
 ++static inline int rc5t583_set_bits(struct device *dev, unsigned int reg,
 ++                     unsigned int bit_mask)
 ++{
 ++     struct rc5t583 *rc5t583 = dev_get_drvdata(dev);
 ++     return regmap_update_bits(rc5t583->regmap, reg, bit_mask, bit_mask);
 ++}
 ++
 ++static inline int rc5t583_clear_bits(struct device *dev, unsigned int reg,
 ++                     unsigned int bit_mask)
 ++{
 ++     struct rc5t583 *rc5t583 = dev_get_drvdata(dev);
 ++     return regmap_update_bits(rc5t583->regmap, reg, bit_mask, 0);
 ++}
 ++
 ++static inline int rc5t583_update(struct device *dev, unsigned int reg,
 ++             unsigned int val, unsigned int mask)
 ++{
 ++     struct rc5t583 *rc5t583 = dev_get_drvdata(dev);
 ++     return regmap_update_bits(rc5t583->regmap, reg, mask, val);
 ++}
 ++
   int rc5t583_ext_power_req_config(struct device *dev, int deepsleep_id,
        int ext_pwr_req, int deepsleep_slot_nr);
   int rc5t583_irq_init(struct rc5t583 *rc5t583, int irq, int irq_base);
Simple merge