Commit 0230a41e authored by Srinivas Neeli's avatar Srinivas Neeli Committed by Linus Walleij
Browse files

gpio: gpio-xilinx: Add remove function

parent 65bbe531
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -259,6 +259,23 @@ static void xgpio_save_regs(struct xgpio_instance *chip)
		       chip->gpio_dir[1]);
}

/**
 * xgpio_remove - Remove method for the GPIO device.
 * @pdev: pointer to the platform device
 *
 * This function remove gpiochips and frees all the allocated resources.
 *
 * Return: 0 always
 */
static int xgpio_remove(struct platform_device *pdev)
{
	struct xgpio_instance *gpio = platform_get_drvdata(pdev);

	clk_disable_unprepare(gpio->clk);

	return 0;
}

/**
 * xgpio_of_probe - Probe method for the GPIO device.
 * @pdev: pointer to the platform device
@@ -371,6 +388,7 @@ MODULE_DEVICE_TABLE(of, xgpio_of_match);

static struct platform_driver xgpio_plat_driver = {
	.probe		= xgpio_probe,
	.remove		= xgpio_remove,
	.driver		= {
			.name = "gpio-xilinx",
			.of_match_table	= xgpio_of_match,