| .. | .. |
|---|
| 55 | 55 | u32 saved_datain; |
|---|
| 56 | 56 | u32 level_mask; |
|---|
| 57 | 57 | u32 toggle_mask; |
|---|
| 58 | | - raw_spinlock_t lock; |
|---|
| 58 | + hard_spinlock_t lock; |
|---|
| 59 | 59 | raw_spinlock_t wa_lock; |
|---|
| 60 | 60 | struct gpio_chip chip; |
|---|
| 61 | 61 | struct clk *dbck; |
|---|
| .. | .. |
|---|
| 1058 | 1058 | |
|---|
| 1059 | 1059 | ret = devm_request_irq(bank->chip.parent, bank->irq, |
|---|
| 1060 | 1060 | omap_gpio_irq_handler, |
|---|
| 1061 | | - 0, dev_name(bank->chip.parent), bank); |
|---|
| 1061 | + IRQF_OOB, dev_name(bank->chip.parent), bank); |
|---|
| 1062 | 1062 | if (ret) |
|---|
| 1063 | 1063 | gpiochip_remove(&bank->chip); |
|---|
| 1064 | 1064 | |
|---|
| .. | .. |
|---|
| 1406 | 1406 | irqc->irq_bus_lock = omap_gpio_irq_bus_lock, |
|---|
| 1407 | 1407 | irqc->irq_bus_sync_unlock = gpio_irq_bus_sync_unlock, |
|---|
| 1408 | 1408 | irqc->name = dev_name(&pdev->dev); |
|---|
| 1409 | | - irqc->flags = IRQCHIP_MASK_ON_SUSPEND; |
|---|
| 1409 | + irqc->flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_PIPELINE_SAFE; |
|---|
| 1410 | 1410 | irqc->parent_device = dev; |
|---|
| 1411 | 1411 | |
|---|
| 1412 | 1412 | bank->irq = platform_get_irq(pdev, 0); |
|---|