|
@@ -28,9 +28,9 @@ static struct platform_device wdt_dev = {
|
|
|
|
|
|
static int tangier_probe(struct platform_device *pdev)
|
|
|
{
|
|
|
- int gsi;
|
|
|
struct irq_alloc_info info;
|
|
|
struct intel_mid_wdt_pdata *pdata = pdev->dev.platform_data;
|
|
|
+ int gsi, irq;
|
|
|
|
|
|
if (!pdata)
|
|
|
return -EINVAL;
|
|
@@ -38,10 +38,10 @@ static int tangier_probe(struct platform_device *pdev)
|
|
|
/* IOAPIC builds identity mapping between GSI and IRQ on MID */
|
|
|
gsi = pdata->irq;
|
|
|
ioapic_set_alloc_attr(&info, cpu_to_node(0), 1, 0);
|
|
|
- if (mp_map_gsi_to_irq(gsi, IOAPIC_MAP_ALLOC, &info) <= 0) {
|
|
|
- dev_warn(&pdev->dev, "cannot find interrupt %d in ioapic\n",
|
|
|
- gsi);
|
|
|
- return -EINVAL;
|
|
|
+ irq = mp_map_gsi_to_irq(gsi, IOAPIC_MAP_ALLOC, &info);
|
|
|
+ if (irq < 0) {
|
|
|
+ dev_warn(&pdev->dev, "cannot find interrupt %d in ioapic\n", gsi);
|
|
|
+ return irq;
|
|
|
}
|
|
|
|
|
|
return 0;
|