All of lore.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.