diff options
Diffstat (limited to 'arch/powerpc/sysdev/cpm_common.c')
| -rw-r--r-- | arch/powerpc/sysdev/cpm_common.c | 18 | 
1 files changed, 6 insertions, 12 deletions
diff --git a/arch/powerpc/sysdev/cpm_common.c b/arch/powerpc/sysdev/cpm_common.c index 9d32465eddb1..0ac12e5fd8ab 100644 --- a/arch/powerpc/sysdev/cpm_common.c +++ b/arch/powerpc/sysdev/cpm_common.c @@ -80,15 +80,9 @@ struct cpm2_gpio32_chip {  	u32 cpdata;  }; -static inline struct cpm2_gpio32_chip * -to_cpm2_gpio32_chip(struct of_mm_gpio_chip *mm_gc) -{ -	return container_of(mm_gc, struct cpm2_gpio32_chip, mm_gc); -} -  static void cpm2_gpio32_save_regs(struct of_mm_gpio_chip *mm_gc)  { -	struct cpm2_gpio32_chip *cpm2_gc = to_cpm2_gpio32_chip(mm_gc); +	struct cpm2_gpio32_chip *cpm2_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm2_ioports __iomem *iop = mm_gc->regs;  	cpm2_gc->cpdata = in_be32(&iop->dat); @@ -108,7 +102,7 @@ static int cpm2_gpio32_get(struct gpio_chip *gc, unsigned int gpio)  static void __cpm2_gpio32_set(struct of_mm_gpio_chip *mm_gc, u32 pin_mask,  	int value)  { -	struct cpm2_gpio32_chip *cpm2_gc = to_cpm2_gpio32_chip(mm_gc); +	struct cpm2_gpio32_chip *cpm2_gc = gpiochip_get_data(&mm_gc->gc);  	struct cpm2_ioports __iomem *iop = mm_gc->regs;  	if (value) @@ -122,7 +116,7 @@ static void __cpm2_gpio32_set(struct of_mm_gpio_chip *mm_gc, u32 pin_mask,  static void cpm2_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 cpm2_gpio32_chip *cpm2_gc = to_cpm2_gpio32_chip(mm_gc); +	struct cpm2_gpio32_chip *cpm2_gc = gpiochip_get_data(gc);  	unsigned long flags;  	u32 pin_mask = 1 << (31 - gpio); @@ -136,7 +130,7 @@ static void cpm2_gpio32_set(struct gpio_chip *gc, unsigned int gpio, int value)  static int cpm2_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 cpm2_gpio32_chip *cpm2_gc = to_cpm2_gpio32_chip(mm_gc); +	struct cpm2_gpio32_chip *cpm2_gc = gpiochip_get_data(gc);  	struct cpm2_ioports __iomem *iop = mm_gc->regs;  	unsigned long flags;  	u32 pin_mask = 1 << (31 - gpio); @@ -154,7 +148,7 @@ static int cpm2_gpio32_dir_out(struct gpio_chip *gc, unsigned int gpio, int val)  static int cpm2_gpio32_dir_in(struct gpio_chip *gc, unsigned int gpio)  {  	struct of_mm_gpio_chip *mm_gc = to_of_mm_gpio_chip(gc); -	struct cpm2_gpio32_chip *cpm2_gc = to_cpm2_gpio32_chip(mm_gc); +	struct cpm2_gpio32_chip *cpm2_gc = gpiochip_get_data(gc);  	struct cpm2_ioports __iomem *iop = mm_gc->regs;  	unsigned long flags;  	u32 pin_mask = 1 << (31 - gpio); @@ -190,6 +184,6 @@ int cpm2_gpiochip_add32(struct device_node *np)  	gc->get = cpm2_gpio32_get;  	gc->set = cpm2_gpio32_set; -	return of_mm_gpiochip_add(np, mm_gc); +	return of_mm_gpiochip_add_data(np, mm_gc, cpm2_gc);  }  #endif /* CONFIG_CPM2 || CONFIG_8xx_GPIO */  |