mfd: Commonize tps65910 regmap access through header
This change removes the read/write callback functions in favor of common regmap accessors inside the header file. This change also makes use of regmap_read/write for single register access which maps better onto what this driver actually needs. Signed-off-by: Rhyland Klein <rklein@nvidia.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:

committed by
Samuel Ortiz

parent
7ccfe9b1d5
commit
3f7e82759c
@@ -18,6 +18,7 @@
|
||||
#define __LINUX_MFD_TPS65910_H
|
||||
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/regmap.h>
|
||||
|
||||
/* TPS chip id list */
|
||||
#define TPS65910 0
|
||||
@@ -823,8 +824,6 @@ struct tps65910 {
|
||||
struct regmap *regmap;
|
||||
struct mutex io_mutex;
|
||||
unsigned int id;
|
||||
int (*read)(struct tps65910 *tps65910, u8 reg, int size, void *dest);
|
||||
int (*write)(struct tps65910 *tps65910, u8 reg, int size, void *src);
|
||||
|
||||
/* Client devices */
|
||||
struct tps65910_pmic *pmic;
|
||||
@@ -847,8 +846,6 @@ struct tps65910_platform_data {
|
||||
int irq_base;
|
||||
};
|
||||
|
||||
int tps65910_set_bits(struct tps65910 *tps65910, u8 reg, u8 mask);
|
||||
int tps65910_clear_bits(struct tps65910 *tps65910, u8 reg, u8 mask);
|
||||
void tps65910_gpio_init(struct tps65910 *tps65910, int gpio_base);
|
||||
int tps65910_irq_init(struct tps65910 *tps65910, int irq,
|
||||
struct tps65910_platform_data *pdata);
|
||||
@@ -859,4 +856,28 @@ static inline int tps65910_chip_id(struct tps65910 *tps65910)
|
||||
return tps65910->id;
|
||||
}
|
||||
|
||||
static inline int tps65910_reg_read(struct tps65910 *tps65910, u8 reg,
|
||||
unsigned int *val)
|
||||
{
|
||||
return regmap_read(tps65910->regmap, reg, val);
|
||||
}
|
||||
|
||||
static inline int tps65910_reg_write(struct tps65910 *tps65910, u8 reg,
|
||||
unsigned int val)
|
||||
{
|
||||
return regmap_write(tps65910->regmap, reg, val);
|
||||
}
|
||||
|
||||
static inline int tps65910_reg_set_bits(struct tps65910 *tps65910, u8 reg,
|
||||
u8 mask)
|
||||
{
|
||||
return regmap_update_bits(tps65910->regmap, reg, mask, mask);
|
||||
}
|
||||
|
||||
static inline int tps65910_reg_clear_bits(struct tps65910 *tps65910, u8 reg,
|
||||
u8 mask)
|
||||
{
|
||||
return regmap_update_bits(tps65910->regmap, reg, mask, 0);
|
||||
}
|
||||
|
||||
#endif /* __LINUX_MFD_TPS65910_H */
|
||||
|
Reference in New Issue
Block a user