From bfe4751bfaf5fd7da2ae4e6e6de3763e602b4557 Mon Sep 17 00:00:00 2001 From: Venki Pallipadi Date: Mon, 8 Sep 2008 10:18:40 -0700 Subject: [PATCH] --- yaml --- r: 116511 b: refs/heads/master c: f0ed4e695faf6766927c8cfbda2bc7530c7210c2 h: refs/heads/master i: 116509: 51f6e432546274d2b8dc70ab0aa5e89e572e146b 116507: 4caf198e6be9dafceedb05f7dfdd7c3b40508518 116503: 73c9604e213cefa3bb1ccab72e8beb15fa38fe10 116495: 037297477f2c67eb858586b29846cc237268c6f0 116479: c8afee4897ef7fa0215b0978ec5d9e9d01b3cef3 v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/hpet.c | 28 +++++++++++++++++++--------- 2 files changed, 20 insertions(+), 10 deletions(-) diff --git a/[refs] b/[refs] index b946f3e8ce08..e95f5bcababf 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2a554fb132cf804477087057b9b0ff2162984507 +refs/heads/master: f0ed4e695faf6766927c8cfbda2bc7530c7210c2 diff --git a/trunk/arch/x86/kernel/hpet.c b/trunk/arch/x86/kernel/hpet.c index 31e9191b7e19..01005aeda7d9 100644 --- a/trunk/arch/x86/kernel/hpet.c +++ b/trunk/arch/x86/kernel/hpet.c @@ -126,6 +126,24 @@ EXPORT_SYMBOL_GPL(is_hpet_enabled); * timer 0 and timer 1 in case of RTC emulation. */ #ifdef CONFIG_HPET +static void hpet_reserve_msi_timers(struct hpet_data *hd) +{ + int i; + + if (!hpet_devs) + return; + + for (i = 0; i < hpet_num_timers; i++) { + struct hpet_dev *hdev = &hpet_devs[i]; + + if (!(hdev->flags & HPET_DEV_VALID)) + continue; + + hd->hd_irq[hdev->num] = hdev->irq; + hpet_reserve_timer(hd, hdev->num); + } +} + static void hpet_reserve_platform_timers(unsigned long id) { struct hpet __iomem *hpet = hpet_virt_address; @@ -158,15 +176,7 @@ static void hpet_reserve_platform_timers(unsigned long id) Tn_INT_ROUTE_CNF_MASK) >> Tn_INT_ROUTE_CNF_SHIFT; } - for (i = 0; i < nrtimers; i++) { - struct hpet_dev *hdev = &hpet_devs[i]; - - if (!(hdev->flags & HPET_DEV_VALID)) - continue; - - hd.hd_irq[hdev->num] = hdev->irq; - hpet_reserve_timer(&hd, hdev->num); - } + hpet_reserve_msi_timers(&hd); hpet_alloc(&hd);