struct npcm8xx_gpio *bank = gpiochip_get_data(chip);
        int ret;
 
-       ret = pinctrl_gpio_direction_input(offset + chip->base);
+       ret = pinctrl_gpio_direction_input_new(chip, offset);
        if (ret)
                return ret;
 
        struct npcm8xx_gpio *bank = gpiochip_get_data(chip);
        int ret;
 
-       ret = pinctrl_gpio_direction_output(offset + chip->base);
+       ret = pinctrl_gpio_direction_output_new(chip, offset);
        if (ret)
                return ret;
 
        struct npcm8xx_gpio *bank = gpiochip_get_data(chip);
        int ret;
 
-       ret = pinctrl_gpio_request(offset + chip->base);
+       ret = pinctrl_gpio_request_new(chip, offset);
        if (ret)
                return ret;
 
 
 static void npcmgpio_gpio_free(struct gpio_chip *chip, unsigned int offset)
 {
-       pinctrl_gpio_free(offset + chip->base);
+       pinctrl_gpio_free_new(chip, offset);
 }
 
 static void npcmgpio_irq_handler(struct irq_desc *desc)