kona_gpio->pdev = pdev;
        platform_set_drvdata(pdev, kona_gpio);
-       chip->of_node = dev->of_node;
+       chip->parent = dev;
        chip->ngpio = kona_gpio->num_bank * GPIO_PER_BANK;
 
        kona_gpio->irq_domain = irq_domain_add_linear(dev->of_node,
 
 
        spin_lock_init(&hcg->lock);
 
+       hcg->gc.parent = dev;
        hcg->gc.label = dev_name(dev);
        hcg->gc.base = -1;
        hcg->gc.ngpio = ngpios;
        hcg->gc.set = creg_gpio_set;
        hcg->gc.direction_output = creg_gpio_dir_out;
-       hcg->gc.of_node = dev->of_node;
 
        ret = devm_gpiochip_add_data(dev, &hcg->gc, hcg);
        if (ret)
 
                return PTR_ERR(reg_base);
 
        for (i = 0; i < ARRAY_SIZE(lpc32xx_gpiochip); i++) {
+               lpc32xx_gpiochip[i].chip.parent = &pdev->dev;
                if (pdev->dev.of_node) {
                        lpc32xx_gpiochip[i].chip.of_xlate = lpc32xx_of_xlate;
                        lpc32xx_gpiochip[i].chip.of_gpio_n_cells = 3;
-                       lpc32xx_gpiochip[i].chip.of_node = pdev->dev.of_node;
                        lpc32xx_gpiochip[i].reg_base = reg_base;
                }
                devm_gpiochip_add_data(&pdev->dev, &lpc32xx_gpiochip[i].chip,
 
 }
 #endif
 
-static int pxa_init_gpio_chip(struct pxa_gpio_chip *pchip, int ngpio,
-                             struct device_node *np, void __iomem *regbase)
+static int pxa_init_gpio_chip(struct pxa_gpio_chip *pchip, int ngpio, void __iomem *regbase)
 {
        int i, gpio, nbanks = DIV_ROUND_UP(ngpio, 32);
        struct pxa_gpio_bank *bank;
        if (!pchip->banks)
                return -ENOMEM;
 
+       pchip->chip.parent = pchip->dev;
        pchip->chip.label = "gpio-pxa";
        pchip->chip.direction_input  = pxa_gpio_direction_input;
        pchip->chip.direction_output = pxa_gpio_direction_output;
        pchip->chip.free = gpiochip_generic_free;
 
 #ifdef CONFIG_OF_GPIO
-       pchip->chip.of_node = np;
        pchip->chip.of_xlate = pxa_gpio_of_xlate;
        pchip->chip.of_gpio_n_cells = 2;
 #endif
        }
 
        /* Initialize GPIO chips */
-       ret = pxa_init_gpio_chip(pchip, pxa_last_gpio + 1, pdev->dev.of_node,
-                                gpio_reg_base);
+       ret = pxa_init_gpio_chip(pchip, pxa_last_gpio + 1, gpio_reg_base);
        if (ret) {
                clk_put(clk);
                return ret;