LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH] ATA convert GSI to irq on ia64
@ 2007-02-08 7:40 Zhang, Yanmin
2007-02-08 9:15 ` Luming Yu
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Zhang, Yanmin @ 2007-02-08 7:40 UTC (permalink / raw)
To: LKML; +Cc: linux-scsi, linux-ide, Jeff Garzik
If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
fixed irq number. On ia64 platform, such numbers are GSI and should be converted
to irq vector.
Below patch against kernel 2.6.20 fixes it.
Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
---
diff -Nraup linux-2.6.20/include/asm-generic/libata-portmap.h linux-2.6.20_fix/include/asm-generic/libata-portmap.h
--- linux-2.6.20/include/asm-generic/libata-portmap.h 2007-02-08 15:13:44.000000000 +0800
+++ linux-2.6.20_fix/include/asm-generic/libata-portmap.h 2007-02-08 15:20:13.000000000 +0800
@@ -3,10 +3,20 @@
#define ATA_PRIMARY_CMD 0x1F0
#define ATA_PRIMARY_CTL 0x3F6
+#if defined(__ia64__)
+#define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(14)
+#else
#define ATA_PRIMARY_IRQ(dev) 14
+#endif
+
#define ATA_SECONDARY_CMD 0x170
#define ATA_SECONDARY_CTL 0x376
+#if defined(__ia64__)
+#define ATA_SECONDARY_IRQ(dev) isa_irq_to_vector(15)
+#else
#define ATA_SECONDARY_IRQ(dev) 15
+#endif
+
#endif
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 7:40 [PATCH] ATA convert GSI to irq on ia64 Zhang, Yanmin
@ 2007-02-08 9:15 ` Luming Yu
2007-02-08 9:17 ` Luming Yu
2007-02-08 19:42 ` Christoph Hellwig
2007-02-09 1:19 ` Jeff Garzik
2 siblings, 1 reply; 11+ messages in thread
From: Luming Yu @ 2007-02-08 9:15 UTC (permalink / raw)
To: Zhang, Yanmin; +Cc: LKML, linux-scsi, linux-ide, Jeff Garzik
if use ide_default_irq , then I guess the #if defined can be removed.
#define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(0x1F0)
On 2/8/07, Zhang, Yanmin <yanmin_zhang@linux.intel.com> wrote:
> If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> to irq vector.
>
> Below patch against kernel 2.6.20 fixes it.
>
> Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
>
> ---
>
> diff -Nraup linux-2.6.20/include/asm-generic/libata-portmap.h linux-2.6.20_fix/include/asm-generic/libata-portmap.h
> --- linux-2.6.20/include/asm-generic/libata-portmap.h 2007-02-08 15:13:44.000000000 +0800
> +++ linux-2.6.20_fix/include/asm-generic/libata-portmap.h 2007-02-08 15:20:13.000000000 +0800
> @@ -3,10 +3,20 @@
>
> #define ATA_PRIMARY_CMD 0x1F0
> #define ATA_PRIMARY_CTL 0x3F6
> +#if defined(__ia64__)
> +#define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(14)
> +#else
> #define ATA_PRIMARY_IRQ(dev) 14
> +#endif
> +
>
> #define ATA_SECONDARY_CMD 0x170
> #define ATA_SECONDARY_CTL 0x376
> +#if defined(__ia64__)
> +#define ATA_SECONDARY_IRQ(dev) isa_irq_to_vector(15)
> +#else
> #define ATA_SECONDARY_IRQ(dev) 15
> +#endif
> +
>
> #endif
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 9:15 ` Luming Yu
@ 2007-02-08 9:17 ` Luming Yu
2007-02-09 1:07 ` Zhang, Yanmin
0 siblings, 1 reply; 11+ messages in thread
From: Luming Yu @ 2007-02-08 9:17 UTC (permalink / raw)
To: Zhang, Yanmin; +Cc: LKML, linux-scsi, linux-ide, Jeff Garzik
sorry, it should be
#define ATA_PRIMARY_IRQ(dev) ide_default_irq(0x1F0)
On 2/8/07, Luming Yu <luming.yu@gmail.com> wrote:
> if use ide_default_irq , then I guess the #if defined can be removed.
> #define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(0x1F0)
>
>
> On 2/8/07, Zhang, Yanmin <yanmin_zhang@linux.intel.com> wrote:
> > If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> > fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> > to irq vector.
> >
> > Below patch against kernel 2.6.20 fixes it.
> >
> > Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
> >
> > ---
> >
> > diff -Nraup linux-2.6.20/include/asm-generic/libata-portmap.h linux-2.6.20_fix/include/asm-generic/libata-portmap.h
> > --- linux-2.6.20/include/asm-generic/libata-portmap.h 2007-02-08 15:13:44.000000000 +0800
> > +++ linux-2.6.20_fix/include/asm-generic/libata-portmap.h 2007-02-08 15:20:13.000000000 +0800
> > @@ -3,10 +3,20 @@
> >
> > #define ATA_PRIMARY_CMD 0x1F0
> > #define ATA_PRIMARY_CTL 0x3F6
> > +#if defined(__ia64__)
> > +#define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(14)
> > +#else
> > #define ATA_PRIMARY_IRQ(dev) 14
> > +#endif
> > +
> >
> > #define ATA_SECONDARY_CMD 0x170
> > #define ATA_SECONDARY_CTL 0x376
> > +#if defined(__ia64__)
> > +#define ATA_SECONDARY_IRQ(dev) isa_irq_to_vector(15)
> > +#else
> > #define ATA_SECONDARY_IRQ(dev) 15
> > +#endif
> > +
> >
> > #endif
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
> >
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 7:40 [PATCH] ATA convert GSI to irq on ia64 Zhang, Yanmin
2007-02-08 9:15 ` Luming Yu
@ 2007-02-08 19:42 ` Christoph Hellwig
2007-02-08 20:25 ` Andrew Morton
2007-02-09 1:19 ` Jeff Garzik
2 siblings, 1 reply; 11+ messages in thread
From: Christoph Hellwig @ 2007-02-08 19:42 UTC (permalink / raw)
To: Zhang, Yanmin; +Cc: LKML, linux-scsi, linux-ide, Jeff Garzik
On Thu, Feb 08, 2007 at 03:40:22PM +0800, Zhang, Yanmin wrote:
> If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> to irq vector.
>
> Below patch against kernel 2.6.20 fixes it.
These direct arch ifdefs in core aren't acceptable. The again I'm
pretty sure we have patches floating around to turn these two macros
into architecture-supplied ones, IIRC it came from the powerpc side.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 19:42 ` Christoph Hellwig
@ 2007-02-08 20:25 ` Andrew Morton
2007-02-08 20:34 ` Christoph Hellwig
0 siblings, 1 reply; 11+ messages in thread
From: Andrew Morton @ 2007-02-08 20:25 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: Zhang, Yanmin, LKML, linux-scsi, linux-ide, Jeff Garzik
On Thu, 8 Feb 2007 19:42:04 +0000
Christoph Hellwig <hch@infradead.org> wrote:
> On Thu, Feb 08, 2007 at 03:40:22PM +0800, Zhang, Yanmin wrote:
> > If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> > fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> > to irq vector.
> >
> > Below patch against kernel 2.6.20 fixes it.
>
> These direct arch ifdefs in core aren't acceptable.
For 2.6.21 that's true. But this is a suitable fix for 2.6.20.x, no?
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 20:25 ` Andrew Morton
@ 2007-02-08 20:34 ` Christoph Hellwig
2007-02-08 20:46 ` Andrew Morton
0 siblings, 1 reply; 11+ messages in thread
From: Christoph Hellwig @ 2007-02-08 20:34 UTC (permalink / raw)
To: Andrew Morton
Cc: Christoph Hellwig, Zhang, Yanmin, LKML, linux-scsi, linux-ide,
Jeff Garzik
On Thu, Feb 08, 2007 at 12:25:39PM -0800, Andrew Morton wrote:
> On Thu, 8 Feb 2007 19:42:04 +0000
> Christoph Hellwig <hch@infradead.org> wrote:
>
> > On Thu, Feb 08, 2007 at 03:40:22PM +0800, Zhang, Yanmin wrote:
> > > If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> > > fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> > > to irq vector.
> > >
> > > Below patch against kernel 2.6.20 fixes it.
> >
> > These direct arch ifdefs in core aren't acceptable.
>
> For 2.6.21 that's true. But this is a suitable fix for 2.6.20.x, no?
Just putting in an #ifndef and allow to to set it up in asm/ata.h
is almost as trivial and a lot nice conceptually. Then again
what happened to the idea of putting fixes into mainline before
-stable?
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 20:34 ` Christoph Hellwig
@ 2007-02-08 20:46 ` Andrew Morton
0 siblings, 0 replies; 11+ messages in thread
From: Andrew Morton @ 2007-02-08 20:46 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: Zhang, Yanmin, LKML, linux-scsi, linux-ide, Jeff Garzik
On Thu, 8 Feb 2007 20:34:53 +0000
Christoph Hellwig <hch@infradead.org> wrote:
> On Thu, Feb 08, 2007 at 12:25:39PM -0800, Andrew Morton wrote:
> > On Thu, 8 Feb 2007 19:42:04 +0000
> > Christoph Hellwig <hch@infradead.org> wrote:
> >
> > > On Thu, Feb 08, 2007 at 03:40:22PM +0800, Zhang, Yanmin wrote:
> > > > If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> > > > fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> > > > to irq vector.
> > > >
> > > > Below patch against kernel 2.6.20 fixes it.
> > >
> > > These direct arch ifdefs in core aren't acceptable.
> >
> > For 2.6.21 that's true. But this is a suitable fix for 2.6.20.x, no?
>
> Just putting in an #ifndef and allow to to set it up in asm/ata.h
> is almost as trivial and a lot nice conceptually.
Well if that's what the 2.6.21 solution looks like then OK. Would want to
see the patch though.
> Then again
> what happened to the idea of putting fixes into mainline before
> -stable?
If the preferred mainline patch involves a lot of not-really-needed
restructuring then an alternative short-but-obvious fix for -stable is
sometimes more appropriate.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 9:17 ` Luming Yu
@ 2007-02-09 1:07 ` Zhang, Yanmin
0 siblings, 0 replies; 11+ messages in thread
From: Zhang, Yanmin @ 2007-02-09 1:07 UTC (permalink / raw)
To: Luming Yu; +Cc: LKML, linux-scsi, linux-ide, Jeff Garzik
On Thu, 2007-02-08 at 17:17 +0800, Luming Yu wrote:
> sorry, it should be
> #define ATA_PRIMARY_IRQ(dev) ide_default_irq(0x1F0)
>
> On 2/8/07, Luming Yu <luming.yu@gmail.com> wrote:
> > if use ide_default_irq , then I guess the #if defined can be removed.
> > #define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(0x1F0)
ata driver will replace old ide driver, so I don't use ide codes in
ata driver.
> >
> >
> > On 2/8/07, Zhang, Yanmin <yanmin_zhang@linux.intel.com> wrote:
> > > If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> > > fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> > > to irq vector.
> > >
> > > Below patch against kernel 2.6.20 fixes it.
> > >
> > > Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
> > >
> > > ---
> > >
> > > diff -Nraup linux-2.6.20/include/asm-generic/libata-portmap.h linux-2.6.20_fix/include/asm-generic/libata-portmap.h
> > > --- linux-2.6.20/include/asm-generic/libata-portmap.h 2007-02-08 15:13:44.000000000 +0800
> > > +++ linux-2.6.20_fix/include/asm-generic/libata-portmap.h 2007-02-08 15:20:13.000000000 +0800
> > > @@ -3,10 +3,20 @@
> > >
> > > #define ATA_PRIMARY_CMD 0x1F0
> > > #define ATA_PRIMARY_CTL 0x3F6
> > > +#if defined(__ia64__)
> > > +#define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(14)
> > > +#else
> > > #define ATA_PRIMARY_IRQ(dev) 14
> > > +#endif
> > > +
> > >
> > > #define ATA_SECONDARY_CMD 0x170
> > > #define ATA_SECONDARY_CTL 0x376
> > > +#if defined(__ia64__)
> > > +#define ATA_SECONDARY_IRQ(dev) isa_irq_to_vector(15)
> > > +#else
> > > #define ATA_SECONDARY_IRQ(dev) 15
> > > +#endif
> > > +
> > >
> > > #endif
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-08 7:40 [PATCH] ATA convert GSI to irq on ia64 Zhang, Yanmin
2007-02-08 9:15 ` Luming Yu
2007-02-08 19:42 ` Christoph Hellwig
@ 2007-02-09 1:19 ` Jeff Garzik
2007-02-09 3:29 ` Zhang, Yanmin
2 siblings, 1 reply; 11+ messages in thread
From: Jeff Garzik @ 2007-02-09 1:19 UTC (permalink / raw)
To: Zhang, Yanmin; +Cc: LKML, linux-scsi, linux-ide
Zhang, Yanmin wrote:
> If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> to irq vector.
>
> Below patch against kernel 2.6.20 fixes it.
>
> Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
IA64 should create its own libata-portmap.h, rather than modifying the
one in asm-generic with arch-specific choices.
powerpc is a current example of this (and currently the only
non-asm-generic user) found in kernel 2.6.20.
Jeff
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-09 1:19 ` Jeff Garzik
@ 2007-02-09 3:29 ` Zhang, Yanmin
2007-02-15 23:09 ` Jeff Garzik
0 siblings, 1 reply; 11+ messages in thread
From: Zhang, Yanmin @ 2007-02-09 3:29 UTC (permalink / raw)
To: Jeff Garzik, Andrew Morton; +Cc: LKML, linux-scsi, linux-ide
On Thu, 2007-02-08 at 20:19 -0500, Jeff Garzik wrote:
> Zhang, Yanmin wrote:
> > If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
> > fixed irq number. On ia64 platform, such numbers are GSI and should be converted
> > to irq vector.
> >
> > Below patch against kernel 2.6.20 fixes it.
> >
> > Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
>
> IA64 should create its own libata-portmap.h, rather than modifying the
> one in asm-generic with arch-specific choices.
>
> powerpc is a current example of this (and currently the only
> non-asm-generic user) found in kernel 2.6.20.
Thank Jeff. I worked out a new patch.
If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the fixed
irq number. On ia64 platform, such numbers are GSI and should be converted to irq
vector.
Below patch against kernel 2.6.20 fixes it.
Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
---
diff -Nraup linux-2.6.20/arch/ia64/Kconfig linux-2.6.20_fix/arch/ia64/Kconfig
--- linux-2.6.20/arch/ia64/Kconfig 2007-02-08 15:13:41.000000000 +0800
+++ linux-2.6.20_fix/arch/ia64/Kconfig 2007-02-09 11:19:35.000000000 +0800
@@ -11,6 +11,7 @@ menu "Processor type and features"
config IA64
bool
+ select ATA_NONSTANDARD if ATA
default y
help
The Itanium Processor Family is Intel's 64-bit successor to
diff -Nraup linux-2.6.20/include/asm-ia64/libata-portmap.h linux-2.6.20_fix/include/asm-ia64/libata-portmap.h
--- linux-2.6.20/include/asm-ia64/libata-portmap.h 1970-01-01 08:00:00.000000000 +0800
+++ linux-2.6.20_fix/include/asm-ia64/libata-portmap.h 2007-02-09 11:19:55.000000000 +0800
@@ -0,0 +1,12 @@
+#ifndef __ASM_IA64_LIBATA_PORTMAP_H
+#define __ASM_IA64_LIBATA_PORTMAP_H
+
+#define ATA_PRIMARY_CMD 0x1F0
+#define ATA_PRIMARY_CTL 0x3F6
+#define ATA_PRIMARY_IRQ(dev) isa_irq_to_vector(14)
+
+#define ATA_SECONDARY_CMD 0x170
+#define ATA_SECONDARY_CTL 0x376
+#define ATA_SECONDARY_IRQ(dev) isa_irq_to_vector(15)
+
+#endif
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] ATA convert GSI to irq on ia64
2007-02-09 3:29 ` Zhang, Yanmin
@ 2007-02-15 23:09 ` Jeff Garzik
0 siblings, 0 replies; 11+ messages in thread
From: Jeff Garzik @ 2007-02-15 23:09 UTC (permalink / raw)
To: Zhang, Yanmin; +Cc: Andrew Morton, LKML, linux-scsi, linux-ide
Zhang, Yanmin wrote:
> On Thu, 2007-02-08 at 20:19 -0500, Jeff Garzik wrote:
>> Zhang, Yanmin wrote:
>>> If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the
>>> fixed irq number. On ia64 platform, such numbers are GSI and should be converted
>>> to irq vector.
>>>
>>> Below patch against kernel 2.6.20 fixes it.
>>>
>>> Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
>> IA64 should create its own libata-portmap.h, rather than modifying the
>> one in asm-generic with arch-specific choices.
>>
>> powerpc is a current example of this (and currently the only
>> non-asm-generic user) found in kernel 2.6.20.
> Thank Jeff. I worked out a new patch.
>
> If an ATA drive uses legacy mode, ata driver will choose 14 and 15 as the fixed
> irq number. On ia64 platform, such numbers are GSI and should be converted to irq
> vector.
>
> Below patch against kernel 2.6.20 fixes it.
>
> Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
applied
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2007-02-15 23:09 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-08 7:40 [PATCH] ATA convert GSI to irq on ia64 Zhang, Yanmin
2007-02-08 9:15 ` Luming Yu
2007-02-08 9:17 ` Luming Yu
2007-02-09 1:07 ` Zhang, Yanmin
2007-02-08 19:42 ` Christoph Hellwig
2007-02-08 20:25 ` Andrew Morton
2007-02-08 20:34 ` Christoph Hellwig
2007-02-08 20:46 ` Andrew Morton
2007-02-09 1:19 ` Jeff Garzik
2007-02-09 3:29 ` Zhang, Yanmin
2007-02-15 23:09 ` Jeff Garzik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).