diff options
Diffstat (limited to 'arch/powerpc/sysdev/cpm1.c')
| -rw-r--r-- | arch/powerpc/sysdev/cpm1.c | 36 | 
1 files changed, 12 insertions, 24 deletions
diff --git a/arch/powerpc/sysdev/cpm1.c b/arch/powerpc/sysdev/cpm1.c index 8ed65365be50..6c110994d902 100644 --- a/arch/powerpc/sysdev/cpm1.c +++ b/arch/powerpc/sysdev/cpm1.c @@ -532,15 +532,9 @@ struct cpm1_gpio16_chip {  	u16 cpdata;  }; -static inline struct cpm1_gpio16_chip * -to_cpm1_gpio16_chip(struct of_mm_gpio_chip *mm_gc) -{ -	return container_of(mm_gc, struct cpm1_gpio16_chip, mm_gc); -} -  static void cpm1_gpio16_save_regs(struct of_mm_gpio_chip *mm_gc)  { -	struct cpm1_gpio16_chip *cpm1_gc = to_cpm1_gpio16_chip(mm_gc); +	struct cpm1_gpio16_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport16 __iomem *iop = mm_gc->regs;  	cpm1_gc->cpdata = in_be16(&iop->dat); @@ -560,7 +554,7 @@ static int cpm1_gpio16_get(struct gpio_chip *gc, unsigned int gpio)  static void __cpm1_gpio16_set(struct of_mm_gpio_chip *mm_gc, u16 pin_mask,  	int value)  { -	struct cpm1_gpio16_chip *cpm1_gc = to_cpm1_gpio16_chip(mm_gc); +	struct cpm1_gpio16_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport16 __iomem *iop = mm_gc->regs;  	if (value) @@ -574,7 +568,7 @@ static void __cpm1_gpio16_set(struct of_mm_gpio_chip *mm_gc, u16 pin_mask,  static void cpm1_gpio16_set(struct gpio_chip *gc, unsigned int gpio, int value)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm1_gpio16_chip *cpm1_gc = to_cpm1_gpio16_chip(mm_gc); +	struct cpm1_gpio16_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	unsigned long flags;  	u16 pin_mask = 1 << (15 - gpio); @@ -588,7 +582,7 @@ static void cpm1_gpio16_set(struct gpio_chip *gc, unsigned int gpio, int value)  static int cpm1_gpio16_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm1_gpio16_chip *cpm1_gc = to_cpm1_gpio16_chip(mm_gc); +	struct cpm1_gpio16_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport16 __iomem *iop = mm_gc->regs;  	unsigned long flags;  	u16 pin_mask = 1 << (15 - gpio); @@ -606,7 +600,7 @@ static int cpm1_gpio16_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)  static int cpm1_gpio16_dir_in(struct gpio_chip *gc, unsigned int gpio)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm1_gpio16_chip *cpm1_gc = to_cpm1_gpio16_chip(mm_gc); +	struct cpm1_gpio16_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport16 __iomem *iop = mm_gc->regs;  	unsigned long flags;  	u16 pin_mask = 1 << (15 - gpio); @@ -642,7 +636,7 @@ int cpm1_gpiochip_add16(struct device_node *np)  	gc->get = cpm1_gpio16_get;  	gc->set = cpm1_gpio16_set; -	return of_mm_gpiochip_add(np, mm_gc); +	return of_mm_gpiochip_add_data(np, mm_gc, cpm1_gc);  }  struct cpm1_gpio32_chip { @@ -653,15 +647,9 @@ struct cpm1_gpio32_chip {  	u32 cpdata;  }; -static inline struct cpm1_gpio32_chip * -to_cpm1_gpio32_chip(struct of_mm_gpio_chip *mm_gc) -{ -	return container_of(mm_gc, struct cpm1_gpio32_chip, mm_gc); -} -  static void cpm1_gpio32_save_regs(struct of_mm_gpio_chip *mm_gc)  { -	struct cpm1_gpio32_chip *cpm1_gc = to_cpm1_gpio32_chip(mm_gc); +	struct cpm1_gpio32_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport32b __iomem *iop = mm_gc->regs;  	cpm1_gc->cpdata = in_be32(&iop->dat); @@ -681,7 +669,7 @@ static int cpm1_gpio32_get(struct gpio_chip *gc, unsigned int gpio)  static void __cpm1_gpio32_set(struct of_mm_gpio_chip *mm_gc, u32 pin_mask,  	int value)  { -	struct cpm1_gpio32_chip *cpm1_gc = to_cpm1_gpio32_chip(mm_gc); +	struct cpm1_gpio32_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport32b __iomem *iop = mm_gc->regs;  	if (value) @@ -695,7 +683,7 @@ static void __cpm1_gpio32_set(struct of_mm_gpio_chip *mm_gc, u32 pin_mask,  static void cpm1_gpio32_set(struct gpio_chip *gc, unsigned int gpio, int value)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm1_gpio32_chip *cpm1_gc = to_cpm1_gpio32_chip(mm_gc); +	struct cpm1_gpio32_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	unsigned long flags;  	u32 pin_mask = 1 << (31 - gpio); @@ -709,7 +697,7 @@ static void cpm1_gpio32_set(struct gpio_chip *gc, unsigned int gpio, int value)  static int cpm1_gpio32_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm1_gpio32_chip *cpm1_gc = to_cpm1_gpio32_chip(mm_gc); +	struct cpm1_gpio32_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport32b __iomem *iop = mm_gc->regs;  	unsigned long flags;  	u32 pin_mask = 1 << (31 - gpio); @@ -727,7 +715,7 @@ static int cpm1_gpio32_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)  static int cpm1_gpio32_dir_in(struct gpio_chip *gc, unsigned int gpio)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm1_gpio32_chip *cpm1_gc = to_cpm1_gpio32_chip(mm_gc); +	struct cpm1_gpio32_chip *cpm1_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm_ioport32b __iomem *iop = mm_gc->regs;  	unsigned long flags;  	u32 pin_mask = 1 << (31 - gpio); @@ -763,7 +751,7 @@ int cpm1_gpiochip_add32(struct device_node *np)  	gc->get = cpm1_gpio32_get;  	gc->set = cpm1_gpio32_set; -	return of_mm_gpiochip_add(np, mm_gc); +	return of_mm_gpiochip_add_data(np, mm_gc, cpm1_gc);  }  static int cpm_init_par_io(void)  | 
