diff options
| author | Paul Mundt <lethal@linux-sh.org> | 2010-04-14 22:59:28 -0400 |
|---|---|---|
| committer | Paul Mundt <lethal@linux-sh.org> | 2010-04-14 22:59:28 -0400 |
| commit | fecf066c2d2fbc7e6a7e7e3a5af772a165bdd7b0 (patch) | |
| tree | d603be7892e5a0522188b6a5010eb5544a9e0b18 /drivers/clocksource | |
| parent | 43b8774dc409ea5d9369b978e2e7bc79289f0522 (diff) | |
sh: Disable IRQ balancing for timer and IPI IRQs.
Make sure that the timer IRQs and IPIs aren't enabled for IRQ balancing.
IPIs are disabled as a result of being percpu while the timers simply
disable balancing outright.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/clocksource')
| -rw-r--r-- | drivers/clocksource/sh_cmt.c | 3 | ||||
| -rw-r--r-- | drivers/clocksource/sh_mtu2.c | 3 | ||||
| -rw-r--r-- | drivers/clocksource/sh_tmu.c | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/drivers/clocksource/sh_cmt.c b/drivers/clocksource/sh_cmt.c index c5f66171a713..45be4dcb9514 100644 --- a/drivers/clocksource/sh_cmt.c +++ b/drivers/clocksource/sh_cmt.c | |||
| @@ -605,7 +605,8 @@ static int sh_cmt_setup(struct sh_cmt_priv *p, struct platform_device *pdev) | |||
| 605 | p->irqaction.name = dev_name(&p->pdev->dev); | 605 | p->irqaction.name = dev_name(&p->pdev->dev); |
| 606 | p->irqaction.handler = sh_cmt_interrupt; | 606 | p->irqaction.handler = sh_cmt_interrupt; |
| 607 | p->irqaction.dev_id = p; | 607 | p->irqaction.dev_id = p; |
| 608 | p->irqaction.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL; | 608 | p->irqaction.flags = IRQF_DISABLED | IRQF_TIMER | \ |
| 609 | IRQF_IRQPOLL | IRQF_NOBALANCING; | ||
| 609 | 610 | ||
| 610 | /* get hold of clock */ | 611 | /* get hold of clock */ |
| 611 | p->clk = clk_get(&p->pdev->dev, "cmt_fck"); | 612 | p->clk = clk_get(&p->pdev->dev, "cmt_fck"); |
diff --git a/drivers/clocksource/sh_mtu2.c b/drivers/clocksource/sh_mtu2.c index b11882e0f1bd..644ecbbed256 100644 --- a/drivers/clocksource/sh_mtu2.c +++ b/drivers/clocksource/sh_mtu2.c | |||
| @@ -280,7 +280,8 @@ static int sh_mtu2_setup(struct sh_mtu2_priv *p, struct platform_device *pdev) | |||
| 280 | p->irqaction.handler = sh_mtu2_interrupt; | 280 | p->irqaction.handler = sh_mtu2_interrupt; |
| 281 | p->irqaction.dev_id = p; | 281 | p->irqaction.dev_id = p; |
| 282 | p->irqaction.irq = irq; | 282 | p->irqaction.irq = irq; |
| 283 | p->irqaction.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL; | 283 | p->irqaction.flags = IRQF_DISABLED | IRQF_TIMER | \ |
| 284 | IRQF_IRQPOLL | IRQF_NOBALANCING; | ||
| 284 | 285 | ||
| 285 | /* get hold of clock */ | 286 | /* get hold of clock */ |
| 286 | p->clk = clk_get(&p->pdev->dev, "mtu2_fck"); | 287 | p->clk = clk_get(&p->pdev->dev, "mtu2_fck"); |
diff --git a/drivers/clocksource/sh_tmu.c b/drivers/clocksource/sh_tmu.c index 6b62283c1aba..44c39a363768 100644 --- a/drivers/clocksource/sh_tmu.c +++ b/drivers/clocksource/sh_tmu.c | |||
| @@ -384,7 +384,8 @@ static int sh_tmu_setup(struct sh_tmu_priv *p, struct platform_device *pdev) | |||
| 384 | p->irqaction.handler = sh_tmu_interrupt; | 384 | p->irqaction.handler = sh_tmu_interrupt; |
| 385 | p->irqaction.dev_id = p; | 385 | p->irqaction.dev_id = p; |
| 386 | p->irqaction.irq = irq; | 386 | p->irqaction.irq = irq; |
| 387 | p->irqaction.flags = IRQF_DISABLED | IRQF_TIMER | IRQF_IRQPOLL; | 387 | p->irqaction.flags = IRQF_DISABLED | IRQF_TIMER | \ |
| 388 | IRQF_IRQPOLL | IRQF_NOBALANCING; | ||
| 388 | 389 | ||
| 389 | /* get hold of clock */ | 390 | /* get hold of clock */ |
| 390 | p->clk = clk_get(&p->pdev->dev, "tmu_fck"); | 391 | p->clk = clk_get(&p->pdev->dev, "tmu_fck"); |
