public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
* [BKPATCH] ACPI for 2.4
@ 2004-06-18  7:32 Len Brown
       [not found] ` <1087540935.4488.214.camel-D2Zvc0uNKG8@public.gmane.org>
  2004-06-21  0:31 ` [ACPI] " Sérgio Monteiro Basto
  0 siblings, 2 replies; 4+ messages in thread
From: Len Brown @ 2004-06-18  7:32 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: linux-kernel@vger.kernel.org, ACPI Developers

Hi Marcelo, please do a 

	bk pull bk://linux-acpi.bkbits.net/linux-acpi-release-2.4.27

thanks,
-Len

ps. a plain patch is also available here:
ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/2.4.27/acpi-20040326-2.4.27.diff.gz

This will update the following files:

 arch/i386/kernel/acpi.c      |    5 +++
 arch/i386/kernel/mpparse.c   |   18 ++++++++++-
 arch/x86_64/kernel/mpparse.c |    1 
 drivers/acpi/asus_acpi.c     |    4 +-
 drivers/acpi/pci_link.c      |   22 +------------
 drivers/acpi/pci_root.c      |   49 ++++++++++++++++++++++++++++++-
 drivers/acpi/thermal.c       |    7 ++++
 7 files changed, 82 insertions(+), 24 deletions(-)

through these ChangeSets:

<len.brown@intel.com> (04/06/18 1.1359.6.28)
   [ACPI] handle SCI override to nth IOAPIC
   http://bugzilla.kernel.org/show_bug.cgi?id=2835

<len.brown@intel.com> (04/06/18 1.1359.6.27)
   [ACPI] fix 2.4.27-pre3 IRQ override regression
   due to dynamically allocated mp_irqs[].
   http://bugzilla.kernel.org/show_bug.cgi?id=2834

<len.brown@intel.com> (04/06/18 1.1359.6.26)
   [ACPI] avoid spurious interrupts on VIA
   http://bugzilla.kernel.org/show_bug.cgi?id=2243

<len.brown@intel.com> (04/06/18 1.1359.6.25)
   [ACPI] fix passive cooling mode indicator (Luming Yu)
   http://bugzilla.kernel.org/show_bug.cgi?id=1770

<len.brown@intel.com> (04/06/17 1.1359.6.24)
   [ACPI] PCI bus numbering workaround for ServerWorks
   from David Shaohua Li
   http://bugzilla.kernel.org/show_bug.cgi?id=1662

<sziwan@hell.org.pl> (04/06/03 1.1359.6.23)
   [PATCH] acpi4asus trivial sync with 2.6 (Karol 'sziwan' Kozimor)

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [BKPATCH] ACPI for 2.4
       [not found] ` <1087540935.4488.214.camel-D2Zvc0uNKG8@public.gmane.org>
@ 2004-06-18 12:09   ` Marcelo Tosatti
  0 siblings, 0 replies; 4+ messages in thread
From: Marcelo Tosatti @ 2004-06-18 12:09 UTC (permalink / raw)
  To: Len Brown; +Cc: ACPI Developers

On Fri, Jun 18, 2004 at 03:32:49AM -0400, Len Brown wrote:
> Hi Marcelo, please do a 
> 
> 	bk pull bk://linux-acpi.bkbits.net/linux-acpi-release-2.4.27

Applied Len, thanks a lot.

> ps. a plain patch is also available here:
> ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/2.4.27/acpi-20040326-2.4.27.diff.gz
> 
> This will update the following files:
> 
>  arch/i386/kernel/acpi.c      |    5 +++
>  arch/i386/kernel/mpparse.c   |   18 ++++++++++-
>  arch/x86_64/kernel/mpparse.c |    1 
>  drivers/acpi/asus_acpi.c     |    4 +-
>  drivers/acpi/pci_link.c      |   22 +------------
>  drivers/acpi/pci_root.c      |   49 ++++++++++++++++++++++++++++++-
>  drivers/acpi/thermal.c       |    7 ++++
>  7 files changed, 82 insertions(+), 24 deletions(-)
> 
> through these ChangeSets:
> 
> <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> (04/06/18 1.1359.6.28)
>    [ACPI] handle SCI override to nth IOAPIC
>    http://bugzilla.kernel.org/show_bug.cgi?id=2835
> 
> <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> (04/06/18 1.1359.6.27)
>    [ACPI] fix 2.4.27-pre3 IRQ override regression
>    due to dynamically allocated mp_irqs[].
>    http://bugzilla.kernel.org/show_bug.cgi?id=2834
> 
> <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> (04/06/18 1.1359.6.26)
>    [ACPI] avoid spurious interrupts on VIA
>    http://bugzilla.kernel.org/show_bug.cgi?id=2243
> 
> <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> (04/06/18 1.1359.6.25)
>    [ACPI] fix passive cooling mode indicator (Luming Yu)
>    http://bugzilla.kernel.org/show_bug.cgi?id=1770
> 
> <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> (04/06/17 1.1359.6.24)
>    [ACPI] PCI bus numbering workaround for ServerWorks
>    from David Shaohua Li
>    http://bugzilla.kernel.org/show_bug.cgi?id=1662
> 
> <sziwan-DETuoxkZsSqrDJvtcaxF/A@public.gmane.org> (04/06/03 1.1359.6.23)
>    [PATCH] acpi4asus trivial sync with 2.6 (Karol 'sziwan' Kozimor)
> 
> 
> 


-------------------------------------------------------
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [ACPI] [BKPATCH] ACPI for 2.4
  2004-06-18  7:32 [BKPATCH] ACPI for 2.4 Len Brown
       [not found] ` <1087540935.4488.214.camel-D2Zvc0uNKG8@public.gmane.org>
@ 2004-06-21  0:31 ` Sérgio Monteiro Basto
  1 sibling, 0 replies; 4+ messages in thread
From: Sérgio Monteiro Basto @ 2004-06-21  0:31 UTC (permalink / raw)
  To: Len Brown, Mikael.Pettersson
  Cc: Marcelo Tosatti, Linux Kernel Mailing List, ACPI Developers

[-- Attachment #1: Type: text/plain, Size: 1033 bytes --]

Hi Mikael, I think you are the "guy" whose propose this patch on lkml.
I am forwarding to ACPI ml, where is the right place to send ACPI
patches. 

Hi Len,
Mikael said
"2.4.27-rc1 reintroduced the double-speed timer ACPI bug. 
Both x86-64 and i386 are affected.

The patch below fixes it on my box. It's a backport of a
patch Hans-Frieder Vogt made for 2.6.7-bk2, extended to
also handle i386.
/Mikael Pettersson"

On Fri, 2004-06-18 at 08:32, Len Brown wrote: 
> Hi Marcelo, please do a 
> 
> 	bk pull bk://linux-acpi.bkbits.net/linux-acpi-release-2.4.27
> 
> thanks,
> -Len
> 
> ps. a plain patch is also available here:
> ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/2.4.27/acpi-20040326-2.4.27.diff.gz

> <len.brown@intel.com> (04/06/18 1.1359.6.27)
>    [ACPI] fix 2.4.27-pre3 IRQ override regression
>    due to dynamically allocated mp_irqs[].
>    http://bugzilla.kernel.org/show_bug.cgi?id=2834
> 

Hope help something, sorry for my poor English.
-- 
Sérgio M. B.

[-- Attachment #2: 1.diff --]
[-- Type: text/x-patch, Size: 1462 bytes --]

diff -ruN linux-2.4.27-rc1/arch/i386/kernel/mpparse.c linux-2.4.27-rc1.mpparse-fix/arch/i386/kernel/mpparse.c
--- linux-2.4.27-rc1/arch/i386/kernel/mpparse.c	2004-06-21 00:39:30.000000000 +0200
+++ linux-2.4.27-rc1.mpparse-fix/arch/i386/kernel/mpparse.c	2004-06-21 00:50:01.000000000 +0200
@@ -1211,7 +1211,7 @@
 
 		for (idx = 0; idx < mp_irq_entries; idx++)
 			if (mp_irqs[idx].mpc_srcbus == MP_ISA_BUS &&
-				(mp_irqs[idx].mpc_dstapic == ioapic) &&
+				(mp_irqs[idx].mpc_dstapic == mp_ioapics[ioapic].mpc_apicid) &&
 				(mp_irqs[idx].mpc_srcbusirq == i ||
 				mp_irqs[idx].mpc_dstirq == i))
 					break;
diff -ruN linux-2.4.27-rc1/arch/x86_64/kernel/mpparse.c linux-2.4.27-rc1.mpparse-fix/arch/x86_64/kernel/mpparse.c
--- linux-2.4.27-rc1/arch/x86_64/kernel/mpparse.c	2004-06-21 00:39:30.000000000 +0200
+++ linux-2.4.27-rc1.mpparse-fix/arch/x86_64/kernel/mpparse.c	2004-06-21 00:50:01.000000000 +0200
@@ -866,7 +866,7 @@
 
 		for (idx = 0; idx < mp_irq_entries; idx++)
 			if (mp_irqs[idx].mpc_srcbus == MP_ISA_BUS &&
-				(mp_irqs[idx].mpc_dstapic == ioapic) &&
+				(mp_irqs[idx].mpc_dstapic == intsrc.mpc_dstapic) &&
 				(mp_irqs[idx].mpc_srcbusirq == i ||
 				mp_irqs[idx].mpc_dstirq == i))
 					break;
-
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] 4+ messages in thread

* Re: [ACPI] [BKPATCH] ACPI for 2.4
  2005-01-31  8:32 Len Brown
@ 2005-02-01  1:33 ` Sergio Monteiro Basto
  0 siblings, 0 replies; 4+ messages in thread
From: Sergio Monteiro Basto @ 2005-02-01  1:33 UTC (permalink / raw)
  To: Len Brown; +Cc: Marcelo Tosatti, Linux Kernel Mailing List, acpi-devel

[-- Attachment #1: Type: text/plain, Size: 2768 bytes --]

Hi, cool 

May I suggest a little more debug with this 2nd version of the patch in
attach ?.

I get dmesg | grep -i via 
1. Disabling VIA memory write queue (PCI ID 0305, rev 80): [55] 3c & 1f -> 1c
2. PCI: Via IRQ fixup
3. Applying quirk_via_acpi.
4. Applying VIA southbridge workaround. (VIA Apollo KT133 needs PCI latency patch, applying quirk_vialatency).
5. PCI: Disabling Via external APIC routing

agpgart: Detected Via Apollo Pro KT133 chipset
VP_IDE: VIA vt82c686b (rev 42) IDE UDMA100 controller on pci00:07.1
parport_pc: Via 686A parallel port: io=0x378

1- the north bridge patch on arch/i386/kernel/pci-pc.c
2- the new patch
3- If ISA doesn't support PCI_INTERRUPT_LINE  ?
* FIXME: it is questionable that quirk_via_acpi
* is needed.  It shows up as an ISA bridge, and does not
* support the PCI_INTERRUPT_LINE register at all.  Therefore
* it seems like setting the pci_dev's 'irq' to the
* value of the ACPI SCI interrupt is only done for convenience.
*  -jgarzik

4- The general quirk, quirks all devices. Don't try to disable it, it
can damage the computer.
5- has a
/* TODO: When we have device-specific interrupt routers,
* this code will go away from quirks.
*/
but only with CONFIG_X86_IO_APIC, looks to me with no sense because, I
suppose I don't have any IO_APIC just one local apic.


thanks,


On Mon, 2005-01-31 at 03:32 -0500, Len Brown wrote:
> Hi Marcelo, please do a 
> 
> 	bk pull bk://linux-acpi.bkbits.net/to-marcelo
> 
> thanks,
> -Len
> 
> ps. a plain patch is also available here:
> ftp://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/2.4.29/acpi-20040326-2.4.29.diff.gz
> 
> This will update the following files:
> 
>  arch/i386/kernel/pci-irq.c   |    4 ++--
>  arch/x86_64/kernel/pci-irq.c |    4 ++--
>  drivers/acpi/pci_irq.c       |    4 ++++
>  drivers/pci/quirks.c         |   30 +++++-------------------------
>  4 files changed, 13 insertions(+), 29 deletions(-)
> 
> through these ChangeSets:
> 
> <len.brown@intel.com> (05/01/26 1.1499.5.2)
>    [ACPI] via interrupt quirk fix from 2.6
>    http://bugzilla.kernel.org/show_bug.cgi?id=3319
>    
>    Signed-off-by: David Shaohua Li <shaohua.li@intel.com>
>    Signed-off-by: Len Brown <len.brown@intel.com.
> 
> 
> 
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
> Tool for open source databases. Create drag-&-drop reports. Save time
> by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
> Download a FREE copy at http://www.intelliview.com/go/osdn_nl
> _______________________________________________
> Acpi-devel mailing list
> Acpi-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/acpi-devel
-- 
Sérgio M.B.

[-- Attachment #2: acpi-2.4.29v2.diff --]
[-- Type: text/x-patch, Size: 4776 bytes --]

--- a/arch/i386/kernel/pci-irq.c	2005-01-31 03:29:46 -05:00
+++ b/arch/i386/kernel/pci-irq.c	2005-01-31 03:29:46 -05:00
@@ -1120,7 +1120,7 @@
 void pcibios_enable_irq(struct pci_dev *dev)
 {
 	u8 pin;
-	extern int interrupt_line_quirk;
+	extern int via_interrupt_line_quirk;
  	struct pci_dev *temp_dev;
 	
 	pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin);
@@ -1173,7 +1173,7 @@
 	}
 	/* VIA bridges use interrupt line for apic/pci steering across
 	   the V-Link */
-	else if (interrupt_line_quirk)
+	else if (via_interrupt_line_quirk)
 		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq & 15);
 		
 }
--- a/arch/x86_64/kernel/pci-irq.c	2005-01-31 03:29:46 -05:00
+++ b/arch/x86_64/kernel/pci-irq.c	2005-01-31 03:29:46 -05:00
@@ -742,7 +742,7 @@
 void pcibios_enable_irq(struct pci_dev *dev)
 {
 		u8 pin;
-	extern int interrupt_line_quirk;
+	extern int via_interrupt_line_quirk;
 
 		pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin);
 	if (pin && !pcibios_lookup_irq(dev, 1) && !dev->irq) {
@@ -762,6 +762,6 @@
 	}
 	/* VIA bridges use interrupt line for apic/pci steering across
 	   the V-Link */
-	else if (interrupt_line_quirk)
+	else if (via_interrupt_line_quirk)
 		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, dev->irq);
 }
--- a/drivers/acpi/pci_irq.c	2005-01-31 03:29:46 -05:00
+++ b/drivers/acpi/pci_irq.c	2005-01-31 03:29:46 -05:00
@@ -335,6 +335,7 @@
 {
 	int			irq = 0;
 	u8			pin = 0;
+	extern int via_interrupt_line_quirk;
 
 	ACPI_FUNCTION_TRACE("acpi_pci_irq_enable");
 
@@ -382,6 +383,9 @@
 			return_VALUE(0);
 		}
  	}
+
+	if (via_interrupt_line_quirk)
+		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, irq & 15);
 
 	dev->irq = irq;
 
--- linux-2.4.29f/drivers/pci/quirks.c.orig	2005-02-01 00:42:25.000000000 +0000
+++ linux-2.4.29f/drivers/pci/quirks.c	2005-02-01 00:59:26.000000000 +0000
@@ -143,7 +143,7 @@
 	busarb &= ~(1<<5);
 	busarb |= (1<<4);
 	pci_write_config_byte(dev, 0x76, busarb);
-	printk(KERN_INFO "Applying VIA southbridge workaround.\n");
+	printk(KERN_INFO "Applying VIA southbridge workaround. (VIA Apollo KT133 needs PCI latency patch, applying quirk_vialatency).\n");
 }
 
 /*
@@ -207,6 +207,7 @@
 	struct resource *r = &dev->resource[0];
 
 	if ((r->start & 0x3ffffff) || r->end != r->start + 0x3ffffff) {
+		printk(KERN_INFO "quirk_s3_64M:re-allocate the region.\n");
 		r->start = 0;
 		r->end = 0x3ffffff;
 	}
@@ -304,6 +305,7 @@
 		pci_read_config_dword(dev, 0x48, &region);
 		region &= PCI_BASE_ADDRESS_IO_MASK;
 		quirk_io_region(dev, region, 256, PCI_BRIDGE_RESOURCES);
+		printk(KERN_INFO "Applying quirk_vt82c586_acpi.\n");
 	}
 }
 
@@ -327,6 +329,7 @@
 	pci_read_config_dword(dev, 0x90, &smb);
 	smb &= PCI_BASE_ADDRESS_IO_MASK;
 	quirk_io_region(dev, smb, 16, PCI_BRIDGE_RESOURCES + 2);
+	printk(KERN_INFO "Applying quirk_vt82c686_acpi.\n");
 }
 
 
@@ -368,9 +371,6 @@
  * non-x86 architectures (yes Via exists on PPC among other places),
  * we must mask the PCI_INTERRUPT_LINE value versus 0xf to get
  * interrupts delivered properly.
- *
- * TODO: When we have device-specific interrupt routers,
- * quirk_via_irqpic will go away from quirks.
  */
 
 /*
@@ -391,24 +391,9 @@
 	irq &= 0xf;
 	if (irq && (irq != 2))
 		d->irq = irq;
+	printk(KERN_INFO "Applying quirk_via_acpi.\n");
 }
 
-static void __init quirk_via_irqpic(struct pci_dev *dev)
-{
-	u8 irq, new_irq = dev->irq & 0xf;
-
-	pci_read_config_byte(dev, PCI_INTERRUPT_LINE, &irq);
-
-	if (new_irq != irq) {
-		printk(KERN_INFO "PCI: Via IRQ fixup for %s, from %d to %d\n",
-		       dev->slot_name, irq, new_irq);
-
-		udelay(15);
-		pci_write_config_byte(dev, PCI_INTERRUPT_LINE, new_irq);
-	}
-}
-
-
 /*
  * PIIX3 USB: We have to disable USB interrupts that are
  * hardwired to PIRQD# and may be shared with an
@@ -639,12 +624,14 @@
  *	VIA northbridges care about PCI_INTERRUPT_LINE
  */
  
-int interrupt_line_quirk;
+int via_interrupt_line_quirk;
 
 static void __init quirk_via_bridge(struct pci_dev *pdev)
 {
-	if(pdev->devfn == 0)
-		interrupt_line_quirk = 1;
+	if(pdev->devfn == 0) {
+		printk(KERN_INFO "PCI: Via IRQ fixup\n");
+		via_interrupt_line_quirk = 1;
+	}
 }
 	
 /* 
@@ -773,9 +760,6 @@
 #endif
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C586_3,	quirk_via_acpi },
 	{ PCI_FIXUP_HEADER,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C686_4,	quirk_via_acpi },
-	{ PCI_FIXUP_FINAL,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C586_2,	quirk_via_irqpic },
-	{ PCI_FIXUP_FINAL,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C686_5,	quirk_via_irqpic },
-	{ PCI_FIXUP_FINAL,	PCI_VENDOR_ID_VIA,	PCI_DEVICE_ID_VIA_82C686_6,	quirk_via_irqpic },
 
 	{ PCI_FIXUP_FINAL, 	PCI_VENDOR_ID_AMD,	PCI_DEVICE_ID_AMD_VIPER_7410,	quirk_amd_ioapic },
 	{ PCI_FIXUP_FINAL,	PCI_VENDOR_ID_AMD,	PCI_DEVICE_ID_AMD_FE_GATE_700C, quirk_amd_ordering },

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-02-01  1:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-06-18  7:32 [BKPATCH] ACPI for 2.4 Len Brown
     [not found] ` <1087540935.4488.214.camel-D2Zvc0uNKG8@public.gmane.org>
2004-06-18 12:09   ` Marcelo Tosatti
2004-06-21  0:31 ` [ACPI] " Sérgio Monteiro Basto
  -- strict thread matches above, loose matches on Subject: below --
2005-01-31  8:32 Len Brown
2005-02-01  1:33 ` [ACPI] " Sergio Monteiro Basto

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox