summaryrefslogtreecommitdiffstats
path: root/drivers/char/hpet.c
diff options
context:
space:
mode:
authorKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>2005-07-28 14:42:00 -0400
committerLen Brown <len.brown@intel.com>2005-08-04 22:16:45 -0400
commita9bd53bc49ee8984633e57c1d9d45111c58e9457 (patch)
treef822a6848c91afc289e207d47b224cccf90dbcbe /drivers/char/hpet.c
parent349f0d5640c18db09a646f9da51a97f1da908660 (diff)
downloadlinux-a9bd53bc49ee8984633e57c1d9d45111c58e9457.tar.gz
linux-a9bd53bc49ee8984633e57c1d9d45111c58e9457.tar.xz
[ACPI] HPET driver now checks for acpi_register_gsi() errors
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/char/hpet.c')
-rw-r--r--drivers/char/hpet.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/char/hpet.c b/drivers/char/hpet.c
index 5ec732e6ca92..a8d4c47f7add 100644
--- a/drivers/char/hpet.c
+++ b/drivers/char/hpet.c
@@ -906,11 +906,15 @@ static acpi_status hpet_resources(struct acpi_resource *res, void *data)
if (irqp->number_of_interrupts > 0) {
hdp->hd_nirqs = irqp->number_of_interrupts;
- for (i = 0; i < hdp->hd_nirqs; i++)
- hdp->hd_irq[i] =
+ for (i = 0; i < hdp->hd_nirqs; i++) {
+ int rc =
acpi_register_gsi(irqp->interrupts[i],
irqp->edge_level,
irqp->active_high_low);
+ if (rc < 0)
+ return AE_ERROR;
+ hdp->hd_irq[i] = rc;
+ }
}
}