public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: Nathan Bryant <nbryant-p32f3XyCuykqcZcGjlUOXw@public.gmane.org>
To: "Li, Shaohua" <shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: stefandoesinger-RbZlAiThDcE@public.gmane.org,
	acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: "irq 11: nobody cared" after S3
Date: Mon, 02 Aug 2004 21:27:50 -0400	[thread overview]
Message-ID: <410EEA16.6030800@optonline.net> (raw)
In-Reply-To: <B44D37711ED29844BEA67908EAF36F03768BD0-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>

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

Li, Shaohua wrote:

>I don't think your patch works, and even it works for your system, it
>will break other systems. The goal of 'setonboot' is to prevent setting
>LINK device's IRQ every time, which we added last year. Without it, many
>systems will break. IIRC, its goal is to resolve a bug in bugzilla. But
>currently I don't remember the exact bug number.
>  
>
Thanks for the feedback. It works for my system--but only for devices 
that call pci_device_enable(). Therefore I am currently reinstating the 
"setonboot" flag and reworking the patch along the lines of the attached:

[-- Attachment #2: acpi-fixes.patch --]
[-- Type: text/x-patch, Size: 2202 bytes --]

# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
#   2004/08/02 20:41:54-04:00 nbryant-p32f3XyCuykqcZcGjlUOXw@public.gmane.org 
#   [ACPI] drivers/acpi/pci_link.c: add acpi_pci_link_resume(), which will be
#   called when resuming from a suspend state that needs IRQ routing to be
#   restored. This fixes issues reported on the mailing lists, e.g.:
#   
#   http://marc.theaimsgroup.com/?l=acpi4linux&m=109142999328643&w=2
# 
# drivers/acpi/pci_link.c
#   2004/08/02 20:41:45-04:00 nbryant-p32f3XyCuykqcZcGjlUOXw@public.gmane.org +23 -0
#   [ACPI] drivers/acpi/pci_link.c: add acpi_pci_link_resume(), which will be
#   called when resuming from a suspend state that needs IRQ routing to be
#   restored. This fixes issues reported on the mailing lists, e.g.:
#   
#   http://marc.theaimsgroup.com/?l=acpi4linux&m=109142999328643&w=2
# 
# BitKeeper/etc/ignore
#   2004/08/02 20:41:45-04:00 nbryant-p32f3XyCuykqcZcGjlUOXw@public.gmane.org +2 -0
#   Added Module.symvers drivers/acpi/pci_link.c~ to the ignore list
# 
diff -Nru a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c
--- a/drivers/acpi/pci_link.c	2004-08-02 21:23:19 -04:00
+++ b/drivers/acpi/pci_link.c	2004-08-02 21:23:19 -04:00
@@ -55,6 +55,7 @@
 #define ACPI_PCI_LINK_MAX_POSSIBLE 16
 
 static int acpi_pci_link_add (struct acpi_device *device);
+static int acpi_pci_link_resume (struct acpi_device *device, int state);
 static int acpi_pci_link_remove (struct acpi_device *device, int type);
 
 static struct acpi_driver acpi_pci_link_driver = {
@@ -64,6 +65,7 @@
 	.ops =		{
 				.add =    acpi_pci_link_add,
 				.remove = acpi_pci_link_remove,
+				.resume = acpi_pci_link_resume,
 			},
 };
 
@@ -691,6 +693,27 @@
 		kfree(link);
 
 	return_VALUE(result);
+}
+
+
+static int
+acpi_pci_link_resume (
+	struct acpi_device	*device,
+	int state)
+{
+	struct acpi_pci_link *link = NULL;
+	
+	ACPI_FUNCTION_TRACE("acpi_pci_link_resume");
+	
+	if (!device || !acpi_driver_data(device))
+		return_VALUE(-EINVAL);
+		
+	link = (struct acpi_pci_link *) acpi_driver_data(device);
+
+	if (link->irq.active && link->irq.setonboot)
+		return_VALUE(acpi_pci_link_set(link, link->irq.active));
+	else
+		return_VALUE(0);
 }
 
 

  parent reply	other threads:[~2004-08-03  1:27 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-03  1:12 "irq 11: nobody cared" after S3 Li, Shaohua
     [not found] ` <B44D37711ED29844BEA67908EAF36F03768BD0-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-08-03  1:27   ` Nathan Bryant [this message]
2004-08-03  2:21   ` Nathan Bryant
  -- strict thread matches above, loose matches on Subject: below --
2004-08-03  1:43 Li, Shaohua
2004-08-02  6:47 Li, Shaohua
     [not found] ` <B44D37711ED29844BEA67908EAF36F0376876A-4yWAQGcml65pB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2004-08-02 14:17   ` Nathan Bryant
2004-08-01 16:50 Stefan Dösinger
     [not found] ` <200408011850.25991.stefandoesinger-RbZlAiThDcE@public.gmane.org>
2004-08-02  4:21   ` Nathan Bryant
     [not found]     ` <410DC163.1090109-p32f3XyCuykqcZcGjlUOXw@public.gmane.org>
2004-08-03 14:29       ` Stefan Dösinger
     [not found]         ` <200408031629.19466.stefandoesinger-RbZlAiThDcE@public.gmane.org>
2004-08-03 15:32           ` Nathan Bryant

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=410EEA16.6030800@optonline.net \
    --to=nbryant-p32f3xycuykqczcgjluoxw@public.gmane.org \
    --cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=shaohua.li-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=stefandoesinger-RbZlAiThDcE@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