2002-03-04 22:17:40

by William Jhun

[permalink] [raw]
Subject: [PATCH] ide_free_irq()

Simple patch. The current drivers/ide/ide.c calls free_irq() instead of
ide_free_irq(). We depend on these alternate routines to deal with our
semi-broken hardware, but since ide-probe.c calls ide_reqest_irq(), it
seems logical that this should also be ide_free_irq().

Thanks,
Will Jhun

*** drivers/ide/ide.c.orig Mon Feb 25 11:37:57 2002
--- drivers/ide/ide.c Mon Mar 4 14:05:41 2002
***************
*** 2115,2121 ****
g = g->next;
} while (g != hwgroup->hwif);
if (irq_count == 1)
! free_irq(hwif->irq, hwgroup);

/*
* Note that we only release the standard ports,
--- 2115,2121 ----
g = g->next;
} while (g != hwgroup->hwif);
if (irq_count == 1)
! ide_free_irq(hwif->irq, hwgroup);

/*
* Note that we only release the standard ports,


2002-03-04 22:58:13

by Andre Hedrick

[permalink] [raw]
Subject: Re: [PATCH] ide_free_irq()



Sure but only one arch I see that is effected and they do not use this
storage class ...

asm-s390/ide.h:#define ide_free_irq(irq,dev_id) do {} while (0)
asm-s390x/ide.h:#define ide_free_irq(irq,dev_id) do {} while (0)

Is there another ?

On Mon, 4 Mar 2002, William Jhun wrote:

> Simple patch. The current drivers/ide/ide.c calls free_irq() instead of
> ide_free_irq(). We depend on these alternate routines to deal with our
> semi-broken hardware, but since ide-probe.c calls ide_reqest_irq(), it
> seems logical that this should also be ide_free_irq().
>
> Thanks,
> Will Jhun
>
> *** drivers/ide/ide.c.orig Mon Feb 25 11:37:57 2002
> --- drivers/ide/ide.c Mon Mar 4 14:05:41 2002
> ***************
> *** 2115,2121 ****
> g = g->next;
> } while (g != hwgroup->hwif);
> if (irq_count == 1)
> ! free_irq(hwif->irq, hwgroup);
>
> /*
> * Note that we only release the standard ports,
> --- 2115,2121 ----
> g = g->next;
> } while (g != hwgroup->hwif);
> if (irq_count == 1)
> ! ide_free_irq(hwif->irq, hwgroup);
>
> /*
> * Note that we only release the standard ports,
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

Andre Hedrick
Linux Disk Certification Project Linux ATA Development

2002-03-04 23:10:03

by William Jhun

[permalink] [raw]
Subject: Re: [PATCH] ide_free_irq()

On Mon, Mar 04, 2002 at 02:57:01PM -0800, Andre Hedrick wrote:
>
>
> Sure but only one arch I see that is effected and they do not use this
> storage class ...
>
> asm-s390/ide.h:#define ide_free_irq(irq,dev_id) do {} while (0)
> asm-s390x/ide.h:#define ide_free_irq(irq,dev_id) do {} while (0)
>
> Is there another ?

Well, our MIPS-based platform (whose changes haven't been submitted
yet). We have some broken PCMCIA hardware that requires us to actually
simulate interrupts with a hi-res timer (by calling ide_intr() directly).
Yes, it's ugly, but it's our only solution. This change would enable us
to put our device-specific interrupt "simulation" code into the ide_*
routines only.

It's not a must right now, but it looked like something that was left
out, since the rest of the ide code uses the ide_* generic #defines...

Thanks,
Will Jhun