diff options
Diffstat (limited to 'drivers/gpio/gpio-mvebu.c')
| -rw-r--r-- | drivers/gpio/gpio-mvebu.c | 7 | 
1 files changed, 7 insertions, 0 deletions
| diff --git a/drivers/gpio/gpio-mvebu.c b/drivers/gpio/gpio-mvebu.c index 7472182967c..61a6fde6c08 100644 --- a/drivers/gpio/gpio-mvebu.c +++ b/drivers/gpio/gpio-mvebu.c @@ -42,6 +42,7 @@  #include <linux/io.h>  #include <linux/of_irq.h>  #include <linux/of_device.h> +#include <linux/clk.h>  #include <linux/pinctrl/consumer.h>  /* @@ -496,6 +497,7 @@ static int mvebu_gpio_probe(struct platform_device *pdev)  	struct resource *res;  	struct irq_chip_generic *gc;  	struct irq_chip_type *ct; +	struct clk *clk;  	unsigned int ngpios;  	int soc_variant;  	int i, cpu, id; @@ -529,6 +531,11 @@ static int mvebu_gpio_probe(struct platform_device *pdev)  		return id;  	} +	clk = devm_clk_get(&pdev->dev, NULL); +	/* Not all SoCs require a clock.*/ +	if (!IS_ERR(clk)) +		clk_prepare_enable(clk); +  	mvchip->soc_variant = soc_variant;  	mvchip->chip.label = dev_name(&pdev->dev);  	mvchip->chip.dev = &pdev->dev; |