From: Len Brown <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
To: Shaohua Li <shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: ACPI Developers
<acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
lkml <linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Adam Belay <ambx1-IBH0VoN/3vPQT0dZR+AlfA@public.gmane.org>,
Matthieu <castet.matthieu-GANU6spQydw@public.gmane.org>,
Bjorn Helgaas <bjorn.helgaas-VXdhtT5mjnY@public.gmane.org>
Subject: Re: [PATCH 1/5]Avoid ACPI assign legacy devices' IRQ for PCI devices
Date: 28 Oct 2004 02:20:22 -0400 [thread overview]
Message-ID: <1098944421.5403.2.camel@d845pe> (raw)
In-Reply-To: <1098327558.6132.220.camel-U5EdaLXB8smDugQYiPIPGdh3ngVCH38I@public.gmane.org>
Applied.
thanks,
-Len
On Wed, 2004-10-20 at 22:59, Li Shaohua wrote:
> Hi,
> The patch introduces acpi_penalize_isa_irq, its goal is to avoid PCI
> devices use IRQ of legacy PNP devices.
>
> Thanks,
> Shaohua
>
>
> Signed-off-by: Li Shaohua <shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
>
> ===== include/linux/acpi.h 1.36 vs edited =====
> --- 1.36/include/linux/acpi.h 2004-06-02 23:02:20 +08:00
> +++ edited/include/linux/acpi.h 2004-09-22 10:09:23 +08:00
> @@ -439,6 +439,7 @@ extern struct acpi_prt_list acpi_prt;
> struct pci_dev;
>
> int acpi_pci_irq_enable (struct pci_dev *dev);
> +void acpi_penalize_isa_irq(int irq);
>
> struct acpi_pci_driver {
> struct acpi_pci_driver *next;
> ===== drivers/acpi/pci_link.c 1.31 vs edited =====
> --- 1.31/drivers/acpi/pci_link.c 2004-08-05 03:55:16 +08:00
> +++ edited/drivers/acpi/pci_link.c 2004-09-22 10:08:09 +08:00
> @@ -786,6 +786,11 @@ static int __init acpi_irq_penalty_updat
> return 1;
> }
>
> +void acpi_penalize_isa_irq(int irq)
> +{
> + acpi_irq_penalty[irq] += PIRQ_PENALTY_ISA_USED;
> +}
> +
> /*
> * Over-ride default table to reserve additional IRQs for use by ISA
> * e.g. acpi_irq_isa=5
> ===== arch/i386/pci/irq.c 1.47 vs edited =====
> --- 1.47/arch/i386/pci/irq.c 2004-08-02 16:00:43 +08:00
> +++ edited/arch/i386/pci/irq.c 2004-09-22 10:27:30 +08:00
> @@ -17,6 +17,7 @@
> #include <asm/smp.h>
> #include <asm/io_apic.h>
> #include <asm/hw_irq.h>
> +#include <linux/acpi.h>
>
> #include "pci.h"
>
> @@ -989,13 +990,24 @@ static int __init pcibios_irq_init(void)
> subsys_initcall(pcibios_irq_init);
>
>
> -void pcibios_penalize_isa_irq(int irq)
> +static void pirq_penalize_isa_irq(int irq)
> {
> /*
> * If any ISAPnP device reports an IRQ in its list of
> possible
> * IRQ's, we try to avoid assigning it to PCI devices.
> */
> - pirq_penalty[irq] += 100;
> + if (irq < 16)
> + pirq_penalty[irq] += 100;
> +}
> +
> +void pcibios_penalize_isa_irq(int irq)
> +{
> +#ifdef CONFIG_ACPI_PCI
> + if (!acpi_noirq)
> + acpi_penalize_isa_irq(irq);
> + else
> +#endif
> + pirq_penalize_isa_irq(irq);
> }
>
> int pirq_enable_irq(struct pci_dev *dev)
> ===== drivers/pnp/pnpbios/rsparser.c 1.4 vs edited =====
> --- 1.4/drivers/pnp/pnpbios/rsparser.c 2004-09-14 08:23:17 +08:00
> +++ edited/drivers/pnp/pnpbios/rsparser.c 2004-09-22 10:31:09
> +08:00
> @@ -7,6 +7,7 @@
> #include <linux/ctype.h>
> #include <linux/pnp.h>
> #include <linux/pnpbios.h>
> +#include <linux/pci.h>
>
> #include "pnpbios.h"
>
> @@ -58,6 +59,7 @@ pnpbios_parse_allocated_irqresource(stru
> }
> res->irq_resource[i].start =
> res->irq_resource[i].end = (unsigned long) irq;
> + pcibios_penalize_isa_irq(irq);
> }
> }
>
>
>
>
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
prev parent reply other threads:[~2004-10-28 6:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-10-21 2:59 [PATCH 1/5]Avoid ACPI assign legacy devices' IRQ for PCI devices Li Shaohua
[not found] ` <1098327558.6132.220.camel-U5EdaLXB8smDugQYiPIPGdh3ngVCH38I@public.gmane.org>
2004-10-28 6:20 ` Len Brown [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1098944421.5403.2.camel@d845pe \
--to=len.brown-ral2jqcrhueavxtiumwx3w@public.gmane.org \
--cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=ambx1-IBH0VoN/3vPQT0dZR+AlfA@public.gmane.org \
--cc=bjorn.helgaas-VXdhtT5mjnY@public.gmane.org \
--cc=castet.matthieu-GANU6spQydw@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox