Updated from Linux LTS 3.10.21 to 3.10.22
This commit is contained in:
@@ -79,7 +79,7 @@ struct mvebu_gpio_chip {
|
||||
spinlock_t lock;
|
||||
void __iomem *membase;
|
||||
void __iomem *percpu_membase;
|
||||
unsigned int irqbase;
|
||||
int irqbase;
|
||||
struct irq_domain *domain;
|
||||
int soc_variant;
|
||||
};
|
||||
|
||||
@@ -286,11 +286,6 @@ static int pl061_probe(struct amba_device *adev, const struct amba_id *id)
|
||||
if (!chip->base)
|
||||
return -ENOMEM;
|
||||
|
||||
chip->domain = irq_domain_add_simple(adev->dev.of_node, PL061_GPIO_NR,
|
||||
irq_base, &pl061_domain_ops, chip);
|
||||
if (!chip->domain)
|
||||
return -ENODEV;
|
||||
|
||||
spin_lock_init(&chip->lock);
|
||||
|
||||
chip->gc.request = pl061_gpio_request;
|
||||
@@ -320,6 +315,11 @@ static int pl061_probe(struct amba_device *adev, const struct amba_id *id)
|
||||
irq_set_chained_handler(irq, pl061_irq_handler);
|
||||
irq_set_handler_data(irq, chip);
|
||||
|
||||
chip->domain = irq_domain_add_simple(adev->dev.of_node, PL061_GPIO_NR,
|
||||
irq_base, &pl061_domain_ops, chip);
|
||||
if (!chip->domain)
|
||||
return -ENODEV;
|
||||
|
||||
for (i = 0; i < PL061_GPIO_NR; i++) {
|
||||
if (pdata) {
|
||||
if (pdata->directions & (1 << i))
|
||||
|
||||
@@ -329,7 +329,7 @@ static int gpio_rcar_probe(struct platform_device *pdev)
|
||||
if (!p->irq_domain) {
|
||||
ret = -ENXIO;
|
||||
dev_err(&pdev->dev, "cannot initialize irq domain\n");
|
||||
goto err1;
|
||||
goto err0;
|
||||
}
|
||||
|
||||
if (devm_request_irq(&pdev->dev, irq->start,
|
||||
|
||||
@@ -354,17 +354,18 @@ static void twl_set(struct gpio_chip *chip, unsigned offset, int value)
|
||||
static int twl_direction_out(struct gpio_chip *chip, unsigned offset, int value)
|
||||
{
|
||||
struct gpio_twl4030_priv *priv = to_gpio_twl4030(chip);
|
||||
int ret = -EINVAL;
|
||||
|
||||
mutex_lock(&priv->mutex);
|
||||
if (offset < TWL4030_GPIO_MAX)
|
||||
twl4030_set_gpio_dataout(offset, value);
|
||||
ret = twl4030_set_gpio_direction(offset, 0);
|
||||
|
||||
priv->direction |= BIT(offset);
|
||||
mutex_unlock(&priv->mutex);
|
||||
|
||||
twl_set(chip, offset, value);
|
||||
|
||||
return 0;
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int twl_to_irq(struct gpio_chip *chip, unsigned offset)
|
||||
|
||||
Reference in New Issue
Block a user