]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blobdiff - src/patches/suse-2.6.27.31/patches.drivers/sgi-ioc4-request-submodules
Revert "Move xen patchset to new version's subdir."
[people/teissler/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.drivers / sgi-ioc4-request-submodules
diff --git a/src/patches/suse-2.6.27.31/patches.drivers/sgi-ioc4-request-submodules b/src/patches/suse-2.6.27.31/patches.drivers/sgi-ioc4-request-submodules
deleted file mode 100644 (file)
index 89b1121..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-From: Michael Reed <mdr@sgi.com>
-Subject: ioc4 request module
-Patch-mainline: ?
-References: bnc#429215
-
-It modifies ioc4.c to call request_module() for each of the two modules
-which support the hardware.
-
-The patch uses a workqueue to prevent a deadlock.  It seems to do the right
-thing on my system, but I don't have a way to install test it.  If this works
-and you find it acceptable, I'll try to get it pushed upstream next week.
-
-Mike
-
-Acked-by: Raymund Will <rw@suse.de>
-
---- linux-2.6.27-rc6-7.2/drivers/misc/ioc4.c   2008-07-13 16:51:29.000000000 -0500
-+++ b/drivers/misc/ioc4.c      2008-10-03 15:58:40.225723102 -0500
-@@ -269,6 +269,17 @@ ioc4_variant(struct ioc4_driver_data *id
-       return IOC4_VARIANT_PCI_RT;
- }
-+static void
-+ioc4_load_modules(struct work_struct *work)
-+{
-+      /* arg just has to be freed */
-+
-+      request_module("sgiioc4");
-+      request_module("ioc4_serial");
-+
-+      kfree(work);
-+}
-+
- /* Adds a new instance of an IOC4 card */
- static int
- ioc4_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)
-@@ -378,6 +389,22 @@ ioc4_probe(struct pci_dev *pdev, const s
-       }
-       mutex_unlock(&ioc4_mutex);
-+      if (idd->idd_variant != IOC4_VARIANT_PCI_RT) {
-+              struct work_struct *work;
-+              work = kzalloc(sizeof(struct work_struct), GFP_KERNEL);
-+              if (!work) {
-+                      printk(KERN_WARNING
-+                             "%s: IOC4 unable to allocate memory for "
-+                             "load of sub-modules.\n",
-+                             __FUNCTION__);
-+              }
-+              else {
-+                      printk(KERN_INFO "IOC4 loading ioc4 submodule\n");
-+                      INIT_WORK(work, ioc4_load_modules);
-+                      schedule_work(work);
-+              }
-+      }
-+
-       return 0;
- out_misc_region: