aboutsummaryrefslogtreecommitdiffstats
path: root/pci
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2005-12-06 16:17:20 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2005-12-06 16:17:20 -0800
commitaf0f449c757c32b2e6dc05d2a50a020fbbdc74e5 (patch)
tree5c3885544f18748788f922a59231f7152a8bce33 /pci
parent917a93934f7aecf20ebcd18b3add671a33d91afd (diff)
downloadpatches-af0f449c757c32b2e6dc05d2a50a020fbbdc74e5.tar.gz
pci patches and refresh
Diffstat (limited to 'pci')
-rw-r--r--pci/arch-replace-pci_module_init-with-pci_register_driver.patch41
-rw-r--r--pci/drivers-block-replace-pci_module_init-with-pci_register_driver.patch113
-rw-r--r--pci/drivers-net-replace-pci_module_init-with-pci_register_driver.patch833
-rw-r--r--pci/drivers-rest-replace-pci_module_init-with-pci_register_driver.patch77
-rw-r--r--pci/drivers-scsi-replace-pci_module_init-with-pci_register_driver.patch439
-rw-r--r--pci/drivers-sound-oss-replace-pci_module_init-with-pci_register_driver.patch204
-rw-r--r--pci/pci-hotplug-powerpc-more-removal-of-duplicated-code.patch109
-rw-r--r--pci/pci-hotplug-powerpc-remove-duplicated-code.patch65
-rw-r--r--pci/pci-schedule-removal-of-pci_module_init.patch67
9 files changed, 1948 insertions, 0 deletions
diff --git a/pci/arch-replace-pci_module_init-with-pci_register_driver.patch b/pci/arch-replace-pci_module_init-with-pci_register_driver.patch
new file mode 100644
index 0000000000000..4895ba444567b
--- /dev/null
+++ b/pci/arch-replace-pci_module_init-with-pci_register_driver.patch
@@ -0,0 +1,41 @@
+From linux-kernel-owner+greg=40kroah.com-S1751408AbVK2X7Q@vger.kernel.org Tue Nov 29 16:05:28 2005
+Date: Wed, 30 Nov 2005 00:59:14 +0100 (MET)
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+Cc: Richard Knutsson <ricknu-0@student.ltu.se>
+Message-Id: <20051130000425.1009.94647.sendpatchset@thinktank.campus.ltu.se>
+Subject: [PATCH 1/6] arch: Replace pci_module_init() with pci_register_driver()
+
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+
+Replace obsolete pci_module_init() with pci_register_driver().
+
+Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ arch/i386/kernel/scx200.c | 2 +-
+ arch/mips/vr41xx/common/vrc4173.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+--- gregkh-2.6.orig/arch/i386/kernel/scx200.c
++++ gregkh-2.6/arch/i386/kernel/scx200.c
+@@ -143,7 +143,7 @@ static int __init scx200_init(void)
+ {
+ printk(KERN_INFO NAME ": NatSemi SCx200 Driver\n");
+
+- return pci_module_init(&scx200_pci_driver);
++ return pci_register_driver(&scx200_pci_driver);
+ }
+
+ static void __exit scx200_cleanup(void)
+--- gregkh-2.6.orig/arch/mips/vr41xx/common/vrc4173.c
++++ gregkh-2.6/arch/mips/vr41xx/common/vrc4173.c
+@@ -561,7 +561,7 @@ static int __devinit vrc4173_init(void)
+ {
+ int err;
+
+- err = pci_module_init(&vrc4173_driver);
++ err = pci_register_driver(&vrc4173_driver);
+ if (err < 0)
+ return err;
+
diff --git a/pci/drivers-block-replace-pci_module_init-with-pci_register_driver.patch b/pci/drivers-block-replace-pci_module_init-with-pci_register_driver.patch
new file mode 100644
index 0000000000000..9ed124e26d38b
--- /dev/null
+++ b/pci/drivers-block-replace-pci_module_init-with-pci_register_driver.patch
@@ -0,0 +1,113 @@
+From linux-kernel-owner+greg=40kroah.com-S1751412AbVK2X7h@vger.kernel.org Tue Nov 29 16:05:29 2005
+Date: Wed, 30 Nov 2005 00:59:34 +0100 (MET)
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+Cc: Richard Knutsson <ricknu-0@student.ltu.se>
+Message-Id: <20051130000445.1009.27295.sendpatchset@thinktank.campus.ltu.se>
+Subject: [PATCH 2/6] drivers/block: Replace pci_module_init() with pci_register_driver()
+
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+
+Replace obsolete pci_module_init() with pci_register_driver().
+
+Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/block/DAC960.c | 2 +-
+ drivers/block/cciss.c | 2 +-
+ drivers/block/sx8.c | 2 +-
+ drivers/block/umem.c | 2 +-
+ drivers/media/radio/radio-gemtek-pci.c | 2 +-
+ drivers/media/radio/radio-maxiradio.c | 2 +-
+ drivers/media/video/bttv-driver.c | 2 +-
+ drivers/media/video/saa7134/saa7134-core.c | 2 +-
+ 8 files changed, 8 insertions(+), 8 deletions(-)
+
+--- gregkh-2.6.orig/drivers/block/cciss.c
++++ gregkh-2.6/drivers/block/cciss.c
+@@ -3275,7 +3275,7 @@ static int __init cciss_init(void)
+ printk(KERN_INFO DRIVER_NAME "\n");
+
+ /* Register for our PCI devices */
+- return pci_module_init(&cciss_pci_driver);
++ return pci_register_driver(&cciss_pci_driver);
+ }
+
+ static void __exit cciss_cleanup(void)
+--- gregkh-2.6.orig/drivers/block/DAC960.c
++++ gregkh-2.6/drivers/block/DAC960.c
+@@ -7186,7 +7186,7 @@ static int DAC960_init_module(void)
+ {
+ int ret;
+
+- ret = pci_module_init(&DAC960_pci_driver);
++ ret = pci_register_driver(&DAC960_pci_driver);
+ #ifdef DAC960_GAM_MINOR
+ if (!ret)
+ DAC960_gam_init();
+--- gregkh-2.6.orig/drivers/block/sx8.c
++++ gregkh-2.6/drivers/block/sx8.c
+@@ -1774,7 +1774,7 @@ static void carm_remove_one (struct pci_
+
+ static int __init carm_init(void)
+ {
+- return pci_module_init(&carm_driver);
++ return pci_register_driver(&carm_driver);
+ }
+
+ static void __exit carm_exit(void)
+--- gregkh-2.6.orig/drivers/block/umem.c
++++ gregkh-2.6/drivers/block/umem.c
+@@ -1185,7 +1185,7 @@ static int __init mm_init(void)
+
+ printk(KERN_INFO DRIVER_VERSION " : " DRIVER_DESC "\n");
+
+- retval = pci_module_init(&mm_pci_driver);
++ retval = pci_register_driver(&mm_pci_driver);
+ if (retval)
+ return -ENOMEM;
+
+--- gregkh-2.6.orig/drivers/media/radio/radio-gemtek-pci.c
++++ gregkh-2.6/drivers/media/radio/radio-gemtek-pci.c
+@@ -394,7 +394,7 @@ static struct pci_driver gemtek_pci_driv
+
+ static int __init gemtek_pci_init_module( void )
+ {
+- return pci_module_init( &gemtek_pci_driver );
++ return pci_register_driver( &gemtek_pci_driver );
+ }
+
+ static void __exit gemtek_pci_cleanup_module( void )
+--- gregkh-2.6.orig/drivers/media/radio/radio-maxiradio.c
++++ gregkh-2.6/drivers/media/radio/radio-maxiradio.c
+@@ -337,7 +337,7 @@ static struct pci_driver maxiradio_drive
+
+ static int __init maxiradio_radio_init(void)
+ {
+- return pci_module_init(&maxiradio_driver);
++ return pci_register_driver(&maxiradio_driver);
+ }
+
+ static void __exit maxiradio_radio_exit(void)
+--- gregkh-2.6.orig/drivers/media/video/bttv-driver.c
++++ gregkh-2.6/drivers/media/video/bttv-driver.c
+@@ -4253,7 +4253,7 @@ static int bttv_init_module(void)
+ bttv_check_chipset();
+
+ bus_register(&bttv_sub_bus_type);
+- return pci_module_init(&bttv_pci_driver);
++ return pci_register_driver(&bttv_pci_driver);
+ }
+
+ static void bttv_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/media/video/saa7134/saa7134-core.c
++++ gregkh-2.6/drivers/media/video/saa7134/saa7134-core.c
+@@ -1155,7 +1155,7 @@ static int saa7134_init(void)
+ printk(KERN_INFO "saa7130/34: snapshot date %04d-%02d-%02d\n",
+ SNAPSHOT/10000, (SNAPSHOT/100)%100, SNAPSHOT%100);
+ #endif
+- return pci_module_init(&saa7134_pci_driver);
++ return pci_register_driver(&saa7134_pci_driver);
+ }
+
+ static void saa7134_fini(void)
diff --git a/pci/drivers-net-replace-pci_module_init-with-pci_register_driver.patch b/pci/drivers-net-replace-pci_module_init-with-pci_register_driver.patch
new file mode 100644
index 0000000000000..83418ce09101a
--- /dev/null
+++ b/pci/drivers-net-replace-pci_module_init-with-pci_register_driver.patch
@@ -0,0 +1,833 @@
+From linux-kernel-owner+greg=40kroah.com-S1751401AbVK2X76@vger.kernel.org Tue Nov 29 16:05:29 2005
+Date: Wed, 30 Nov 2005 00:59:55 +0100 (MET)
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+Cc: Richard Knutsson <ricknu-0@student.ltu.se>
+Message-Id: <20051130000505.1009.25349.sendpatchset@thinktank.campus.ltu.se>
+Subject: [PATCH 3/6] drivers/net: Replace pci_module_init() with pci_register_driver()
+
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+
+Replace obsolete pci_module_init() with pci_register_driver().
+
+Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/net/3c59x.c | 2 +-
+ drivers/net/8139cp.c | 2 +-
+ drivers/net/8139too.c | 2 +-
+ drivers/net/acenic.c | 2 +-
+ drivers/net/amd8111e.c | 2 +-
+ drivers/net/arcnet/com20020-pci.c | 2 +-
+ drivers/net/b44.c | 2 +-
+ drivers/net/bnx2.c | 2 +-
+ drivers/net/cassini.c | 2 +-
+ drivers/net/chelsio/cxgb2.c | 2 +-
+ drivers/net/defxx.c | 2 +-
+ drivers/net/dl2k.c | 2 +-
+ drivers/net/e100.c | 2 +-
+ drivers/net/e1000/e1000_main.c | 2 +-
+ drivers/net/eepro100.c | 2 +-
+ drivers/net/epic100.c | 2 +-
+ drivers/net/fealnx.c | 2 +-
+ drivers/net/forcedeth.c | 2 +-
+ drivers/net/hp100.c | 2 +-
+ drivers/net/irda/donauboe.c | 2 +-
+ drivers/net/irda/vlsi_ir.c | 2 +-
+ drivers/net/ixgb/ixgb_main.c | 2 +-
+ drivers/net/natsemi.c | 2 +-
+ drivers/net/ne2k-pci.c | 2 +-
+ drivers/net/ns83820.c | 2 +-
+ drivers/net/pci-skeleton.c | 2 +-
+ drivers/net/pcnet32.c | 2 +-
+ drivers/net/r8169.c | 2 +-
+ drivers/net/rrunner.c | 2 +-
+ drivers/net/s2io.c | 2 +-
+ drivers/net/saa9730.c | 2 +-
+ drivers/net/sis190.c | 2 +-
+ drivers/net/sis900.c | 2 +-
+ drivers/net/skfp/skfddi.c | 2 +-
+ drivers/net/skge.c | 2 +-
+ drivers/net/starfire.c | 2 +-
+ drivers/net/sundance.c | 2 +-
+ drivers/net/sungem.c | 2 +-
+ drivers/net/tc35815.c | 2 +-
+ drivers/net/tg3.c | 2 +-
+ drivers/net/tokenring/3c359.c | 2 +-
+ drivers/net/tokenring/lanstreamer.c | 2 +-
+ drivers/net/tokenring/olympic.c | 2 +-
+ drivers/net/tulip/de2104x.c | 2 +-
+ drivers/net/tulip/de4x5.c | 2 +-
+ drivers/net/tulip/dmfe.c | 2 +-
+ drivers/net/tulip/tulip_core.c | 2 +-
+ drivers/net/tulip/uli526x.c | 2 +-
+ drivers/net/tulip/winbond-840.c | 2 +-
+ drivers/net/tulip/xircom_tulip_cb.c | 2 +-
+ drivers/net/typhoon.c | 2 +-
+ drivers/net/via-rhine.c | 2 +-
+ drivers/net/via-velocity.c | 2 +-
+ drivers/net/wan/dscc4.c | 2 +-
+ drivers/net/wan/farsync.c | 2 +-
+ drivers/net/wan/lmc/lmc_main.c | 2 +-
+ drivers/net/wan/pc300_drv.c | 2 +-
+ drivers/net/wan/pci200syn.c | 2 +-
+ drivers/net/wan/wanxl.c | 2 +-
+ drivers/net/wireless/atmel_pci.c | 2 +-
+ drivers/net/wireless/ipw2100.c | 2 +-
+ drivers/net/wireless/ipw2200.c | 2 +-
+ drivers/net/wireless/orinoco_nortel.c | 2 +-
+ drivers/net/wireless/orinoco_pci.c | 2 +-
+ drivers/net/wireless/orinoco_plx.c | 2 +-
+ drivers/net/wireless/orinoco_tmd.c | 2 +-
+ drivers/net/wireless/prism54/islpci_hotplug.c | 2 +-
+ drivers/net/yellowfin.c | 2 +-
+ 68 files changed, 68 insertions(+), 68 deletions(-)
+
+--- gregkh-2.6.orig/drivers/net/3c59x.c
++++ gregkh-2.6/drivers/net/3c59x.c
+@@ -3367,7 +3367,7 @@ static int __init vortex_init (void)
+ {
+ int pci_rc, eisa_rc;
+
+- pci_rc = pci_module_init(&vortex_driver);
++ pci_rc = pci_register_driver(&vortex_driver);
+ eisa_rc = vortex_eisa_init();
+
+ if (pci_rc == 0)
+--- gregkh-2.6.orig/drivers/net/8139cp.c
++++ gregkh-2.6/drivers/net/8139cp.c
+@@ -1939,7 +1939,7 @@ static int __init cp_init (void)
+ #ifdef MODULE
+ printk("%s", version);
+ #endif
+- return pci_module_init (&cp_driver);
++ return pci_register_driver (&cp_driver);
+ }
+
+ static void __exit cp_exit (void)
+--- gregkh-2.6.orig/drivers/net/8139too.c
++++ gregkh-2.6/drivers/net/8139too.c
+@@ -2635,7 +2635,7 @@ static int __init rtl8139_init_module (v
+ printk (KERN_INFO RTL8139_DRIVER_NAME "\n");
+ #endif
+
+- return pci_module_init (&rtl8139_pci_driver);
++ return pci_register_driver (&rtl8139_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/acenic.c
++++ gregkh-2.6/drivers/net/acenic.c
+@@ -730,7 +730,7 @@ static struct pci_driver acenic_pci_driv
+
+ static int __init acenic_init(void)
+ {
+- return pci_module_init(&acenic_pci_driver);
++ return pci_register_driver(&acenic_pci_driver);
+ }
+
+ static void __exit acenic_exit(void)
+--- gregkh-2.6.orig/drivers/net/amd8111e.c
++++ gregkh-2.6/drivers/net/amd8111e.c
+@@ -2159,7 +2159,7 @@ static struct pci_driver amd8111e_driver
+
+ static int __init amd8111e_init(void)
+ {
+- return pci_module_init(&amd8111e_driver);
++ return pci_register_driver(&amd8111e_driver);
+ }
+
+ static void __exit amd8111e_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/arcnet/com20020-pci.c
++++ gregkh-2.6/drivers/net/arcnet/com20020-pci.c
+@@ -177,7 +177,7 @@ static struct pci_driver com20020pci_dri
+ static int __init com20020pci_init(void)
+ {
+ BUGLVL(D_NORMAL) printk(VERSION);
+- return pci_module_init(&com20020pci_driver);
++ return pci_register_driver(&com20020pci_driver);
+ }
+
+ static void __exit com20020pci_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/b44.c
++++ gregkh-2.6/drivers/net/b44.c
+@@ -2138,7 +2138,7 @@ static int __init b44_init(void)
+ dma_desc_align_mask = ~(dma_desc_align_size - 1);
+ dma_desc_sync_size = max(dma_desc_align_size, sizeof(struct dma_desc));
+
+- return pci_module_init(&b44_driver);
++ return pci_register_driver(&b44_driver);
+ }
+
+ static void __exit b44_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/bnx2.c
++++ gregkh-2.6/drivers/net/bnx2.c
+@@ -5849,7 +5849,7 @@ static struct pci_driver bnx2_pci_driver
+
+ static int __init bnx2_init(void)
+ {
+- return pci_module_init(&bnx2_pci_driver);
++ return pci_register_driver(&bnx2_pci_driver);
+ }
+
+ static void __exit bnx2_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/cassini.c
++++ gregkh-2.6/drivers/net/cassini.c
+@@ -5224,7 +5224,7 @@ static int __init cas_init(void)
+ else
+ link_transition_timeout = 0;
+
+- return pci_module_init(&cas_driver);
++ return pci_register_driver(&cas_driver);
+ }
+
+ static void __exit cas_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/chelsio/cxgb2.c
++++ gregkh-2.6/drivers/net/chelsio/cxgb2.c
+@@ -1244,7 +1244,7 @@ static struct pci_driver driver = {
+
+ static int __init t1_init_module(void)
+ {
+- return pci_module_init(&driver);
++ return pci_register_driver(&driver);
+ }
+
+ static void __exit t1_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/defxx.c
++++ gregkh-2.6/drivers/net/defxx.c
+@@ -3444,7 +3444,7 @@ static int __init dfx_init(void)
+ {
+ int rc_pci, rc_eisa;
+
+- rc_pci = pci_module_init(&dfx_driver);
++ rc_pci = pci_register_driver(&dfx_driver);
+ if (rc_pci >= 0) dfx_have_pci = 1;
+
+ rc_eisa = dfx_eisa_init();
+--- gregkh-2.6.orig/drivers/net/dl2k.c
++++ gregkh-2.6/drivers/net/dl2k.c
+@@ -1848,7 +1848,7 @@ static struct pci_driver rio_driver = {
+ static int __init
+ rio_init (void)
+ {
+- return pci_module_init (&rio_driver);
++ return pci_register_driver (&rio_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/net/e1000/e1000_main.c
++++ gregkh-2.6/drivers/net/e1000/e1000_main.c
+@@ -258,7 +258,7 @@ e1000_init_module(void)
+
+ printk(KERN_INFO "%s\n", e1000_copyright);
+
+- ret = pci_module_init(&e1000_driver);
++ ret = pci_register_driver(&e1000_driver);
+
+ return ret;
+ }
+--- gregkh-2.6.orig/drivers/net/e100.c
++++ gregkh-2.6/drivers/net/e100.c
+@@ -2792,7 +2792,7 @@ static int __init e100_init_module(void)
+ printk(KERN_INFO PFX "%s, %s\n", DRV_DESCRIPTION, DRV_VERSION);
+ printk(KERN_INFO PFX "%s\n", DRV_COPYRIGHT);
+ }
+- return pci_module_init(&e100_driver);
++ return pci_register_driver(&e100_driver);
+ }
+
+ static void __exit e100_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/eepro100.c
++++ gregkh-2.6/drivers/net/eepro100.c
+@@ -2391,7 +2391,7 @@ static int __init eepro100_init_module(v
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init(&eepro100_driver);
++ return pci_register_driver(&eepro100_driver);
+ }
+
+ static void __exit eepro100_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/epic100.c
++++ gregkh-2.6/drivers/net/epic100.c
+@@ -1673,7 +1673,7 @@ static int __init epic_init (void)
+ version, version2, version3);
+ #endif
+
+- return pci_module_init (&epic_driver);
++ return pci_register_driver (&epic_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/fealnx.c
++++ gregkh-2.6/drivers/net/fealnx.c
+@@ -1992,7 +1992,7 @@ static int __init fealnx_init(void)
+ printk(version);
+ #endif
+
+- return pci_module_init(&fealnx_driver);
++ return pci_register_driver(&fealnx_driver);
+ }
+
+ static void __exit fealnx_exit(void)
+--- gregkh-2.6.orig/drivers/net/forcedeth.c
++++ gregkh-2.6/drivers/net/forcedeth.c
+@@ -2720,7 +2720,7 @@ static struct pci_driver driver = {
+ static int __init init_nic(void)
+ {
+ printk(KERN_INFO "forcedeth.c: Reverse Engineered nForce ethernet driver. Version %s.\n", FORCEDETH_VERSION);
+- return pci_module_init(&driver);
++ return pci_register_driver(&driver);
+ }
+
+ static void __exit exit_nic(void)
+--- gregkh-2.6.orig/drivers/net/hp100.c
++++ gregkh-2.6/drivers/net/hp100.c
+@@ -3048,7 +3048,7 @@ static int __init hp100_module_init(void
+ goto out2;
+ #endif
+ #ifdef CONFIG_PCI
+- err = pci_module_init(&hp100_pci_driver);
++ err = pci_register_driver(&hp100_pci_driver);
+ if (err && err != -ENODEV)
+ goto out3;
+ #endif
+--- gregkh-2.6.orig/drivers/net/irda/donauboe.c
++++ gregkh-2.6/drivers/net/irda/donauboe.c
+@@ -1778,7 +1778,7 @@ static struct pci_driver donauboe_pci_dr
+ static int __init
+ donauboe_init (void)
+ {
+- return pci_module_init(&donauboe_pci_driver);
++ return pci_register_driver(&donauboe_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/net/irda/vlsi_ir.c
++++ gregkh-2.6/drivers/net/irda/vlsi_ir.c
+@@ -1887,7 +1887,7 @@ static int __init vlsi_mod_init(void)
+ vlsi_proc_root->owner = THIS_MODULE;
+ }
+
+- ret = pci_module_init(&vlsi_irda_driver);
++ ret = pci_register_driver(&vlsi_irda_driver);
+
+ if (ret && vlsi_proc_root)
+ remove_proc_entry(PROC_DIR, NULL);
+--- gregkh-2.6.orig/drivers/net/ixgb/ixgb_main.c
++++ gregkh-2.6/drivers/net/ixgb/ixgb_main.c
+@@ -183,7 +183,7 @@ ixgb_init_module(void)
+
+ printk(KERN_INFO "%s\n", ixgb_copyright);
+
+- return pci_module_init(&ixgb_driver);
++ return pci_register_driver(&ixgb_driver);
+ }
+
+ module_init(ixgb_init_module);
+--- gregkh-2.6.orig/drivers/net/natsemi.c
++++ gregkh-2.6/drivers/net/natsemi.c
+@@ -3260,7 +3260,7 @@ static int __init natsemi_init_mod (void
+ printk(version);
+ #endif
+
+- return pci_module_init (&natsemi_driver);
++ return pci_register_driver (&natsemi_driver);
+ }
+
+ static void __exit natsemi_exit_mod (void)
+--- gregkh-2.6.orig/drivers/net/ne2k-pci.c
++++ gregkh-2.6/drivers/net/ne2k-pci.c
+@@ -703,7 +703,7 @@ static int __init ne2k_pci_init(void)
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init (&ne2k_driver);
++ return pci_register_driver (&ne2k_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/ns83820.c
++++ gregkh-2.6/drivers/net/ns83820.c
+@@ -2175,7 +2175,7 @@ static struct pci_driver driver = {
+ static int __init ns83820_init(void)
+ {
+ printk(KERN_INFO "ns83820.c: National Semiconductor DP83820 10/100/1000 driver.\n");
+- return pci_module_init(&driver);
++ return pci_register_driver(&driver);
+ }
+
+ static void __exit ns83820_exit(void)
+--- gregkh-2.6.orig/drivers/net/pci-skeleton.c
++++ gregkh-2.6/drivers/net/pci-skeleton.c
+@@ -1963,7 +1963,7 @@ static int __init netdrv_init_module (vo
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init (&netdrv_pci_driver);
++ return pci_register_driver (&netdrv_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/pcnet32.c
++++ gregkh-2.6/drivers/net/pcnet32.c
+@@ -2513,7 +2513,7 @@ static int __init pcnet32_init_module(vo
+ tx_start = tx_start_pt;
+
+ /* find the PCI devices */
+- if (!pci_module_init(&pcnet32_driver))
++ if (!pci_register_driver(&pcnet32_driver))
+ pcnet32_have_pci = 1;
+
+ /* should we find any remaining VLbus devices ? */
+--- gregkh-2.6.orig/drivers/net/r8169.c
++++ gregkh-2.6/drivers/net/r8169.c
+@@ -2713,7 +2713,7 @@ static struct pci_driver rtl8169_pci_dri
+ static int __init
+ rtl8169_init_module(void)
+ {
+- return pci_module_init(&rtl8169_pci_driver);
++ return pci_register_driver(&rtl8169_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/net/rrunner.c
++++ gregkh-2.6/drivers/net/rrunner.c
+@@ -1737,7 +1737,7 @@ static struct pci_driver rr_driver = {
+
+ static int __init rr_init_module(void)
+ {
+- return pci_module_init(&rr_driver);
++ return pci_register_driver(&rr_driver);
+ }
+
+ static void __exit rr_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/s2io.c
++++ gregkh-2.6/drivers/net/s2io.c
+@@ -6297,7 +6297,7 @@ static void __devexit s2io_rem_nic(struc
+
+ int __init s2io_starter(void)
+ {
+- return pci_module_init(&s2io_driver);
++ return pci_register_driver(&s2io_driver);
+ }
+
+ /**
+--- gregkh-2.6.orig/drivers/net/saa9730.c
++++ gregkh-2.6/drivers/net/saa9730.c
+@@ -1131,7 +1131,7 @@ static struct pci_driver saa9730_driver
+
+ static int __init saa9730_init(void)
+ {
+- return pci_module_init(&saa9730_driver);
++ return pci_register_driver(&saa9730_driver);
+ }
+
+ static void __exit saa9730_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/sis190.c
++++ gregkh-2.6/drivers/net/sis190.c
+@@ -1872,7 +1872,7 @@ static struct pci_driver sis190_pci_driv
+
+ static int __init sis190_init_module(void)
+ {
+- return pci_module_init(&sis190_pci_driver);
++ return pci_register_driver(&sis190_pci_driver);
+ }
+
+ static void __exit sis190_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/sis900.c
++++ gregkh-2.6/drivers/net/sis900.c
+@@ -2410,7 +2410,7 @@ static int __init sis900_init_module(voi
+ printk(version);
+ #endif
+
+- return pci_module_init(&sis900_pci_driver);
++ return pci_register_driver(&sis900_pci_driver);
+ }
+
+ static void __exit sis900_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/skfp/skfddi.c
++++ gregkh-2.6/drivers/net/skfp/skfddi.c
+@@ -2280,7 +2280,7 @@ static struct pci_driver skfddi_pci_driv
+
+ static int __init skfd_init(void)
+ {
+- return pci_module_init(&skfddi_pci_driver);
++ return pci_register_driver(&skfddi_pci_driver);
+ }
+
+ static void __exit skfd_exit(void)
+--- gregkh-2.6.orig/drivers/net/skge.c
++++ gregkh-2.6/drivers/net/skge.c
+@@ -3417,7 +3417,7 @@ static struct pci_driver skge_driver = {
+
+ static int __init skge_init_module(void)
+ {
+- return pci_module_init(&skge_driver);
++ return pci_register_driver(&skge_driver);
+ }
+
+ static void __exit skge_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/starfire.c
++++ gregkh-2.6/drivers/net/starfire.c
+@@ -2137,7 +2137,7 @@ static int __init starfire_init (void)
+ return -ENODEV;
+ }
+
+- return pci_module_init (&starfire_driver);
++ return pci_register_driver (&starfire_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/sundance.c
++++ gregkh-2.6/drivers/net/sundance.c
+@@ -1806,7 +1806,7 @@ static int __init sundance_init(void)
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init(&sundance_driver);
++ return pci_register_driver(&sundance_driver);
+ }
+
+ static void __exit sundance_exit(void)
+--- gregkh-2.6.orig/drivers/net/sungem.c
++++ gregkh-2.6/drivers/net/sungem.c
+@@ -3190,7 +3190,7 @@ static struct pci_driver gem_driver = {
+
+ static int __init gem_init(void)
+ {
+- return pci_module_init(&gem_driver);
++ return pci_register_driver(&gem_driver);
+ }
+
+ static void __exit gem_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/tc35815.c
++++ gregkh-2.6/drivers/net/tc35815.c
+@@ -1725,7 +1725,7 @@ static struct pci_driver tc35815_driver
+
+ static int __init tc35815_init_module(void)
+ {
+- return pci_module_init(&tc35815_driver);
++ return pci_register_driver(&tc35815_driver);
+ }
+
+ static void __exit tc35815_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/tg3.c
++++ gregkh-2.6/drivers/net/tg3.c
+@@ -10879,7 +10879,7 @@ static struct pci_driver tg3_driver = {
+
+ static int __init tg3_init(void)
+ {
+- return pci_module_init(&tg3_driver);
++ return pci_register_driver(&tg3_driver);
+ }
+
+ static void __exit tg3_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/tokenring/3c359.c
++++ gregkh-2.6/drivers/net/tokenring/3c359.c
+@@ -1816,7 +1816,7 @@ static struct pci_driver xl_3c359_driver
+
+ static int __init xl_pci_init (void)
+ {
+- return pci_module_init (&xl_3c359_driver);
++ return pci_register_driver (&xl_3c359_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/tokenring/lanstreamer.c
++++ gregkh-2.6/drivers/net/tokenring/lanstreamer.c
+@@ -1998,7 +1998,7 @@ static struct pci_driver streamer_pci_dr
+ };
+
+ static int __init streamer_init_module(void) {
+- return pci_module_init(&streamer_pci_driver);
++ return pci_register_driver(&streamer_pci_driver);
+ }
+
+ static void __exit streamer_cleanup_module(void) {
+--- gregkh-2.6.orig/drivers/net/tokenring/olympic.c
++++ gregkh-2.6/drivers/net/tokenring/olympic.c
+@@ -1771,7 +1771,7 @@ static struct pci_driver olympic_driver
+
+ static int __init olympic_pci_init(void)
+ {
+- return pci_module_init (&olympic_driver) ;
++ return pci_register_driver (&olympic_driver) ;
+ }
+
+ static void __exit olympic_pci_cleanup(void)
+--- gregkh-2.6.orig/drivers/net/tulip/de2104x.c
++++ gregkh-2.6/drivers/net/tulip/de2104x.c
+@@ -2178,7 +2178,7 @@ static int __init de_init (void)
+ #ifdef MODULE
+ printk("%s", version);
+ #endif
+- return pci_module_init (&de_driver);
++ return pci_register_driver (&de_driver);
+ }
+
+ static void __exit de_exit (void)
+--- gregkh-2.6.orig/drivers/net/tulip/de4x5.c
++++ gregkh-2.6/drivers/net/tulip/de4x5.c
+@@ -5755,7 +5755,7 @@ static int __init de4x5_module_init (voi
+ int err = 0;
+
+ #ifdef CONFIG_PCI
+- err = pci_module_init (&de4x5_pci_driver);
++ err = pci_register_driver (&de4x5_pci_driver);
+ #endif
+ #ifdef CONFIG_EISA
+ err |= eisa_driver_register (&de4x5_eisa_driver);
+--- gregkh-2.6.orig/drivers/net/tulip/dmfe.c
++++ gregkh-2.6/drivers/net/tulip/dmfe.c
+@@ -2039,7 +2039,7 @@ static int __init dmfe_init_module(void)
+ if (HPNA_NoiseFloor > 15)
+ HPNA_NoiseFloor = 0;
+
+- rc = pci_module_init(&dmfe_driver);
++ rc = pci_register_driver(&dmfe_driver);
+ if (rc < 0)
+ return rc;
+
+--- gregkh-2.6.orig/drivers/net/tulip/tulip_core.c
++++ gregkh-2.6/drivers/net/tulip/tulip_core.c
+@@ -1854,7 +1854,7 @@ static int __init tulip_init (void)
+ tulip_max_interrupt_work = max_interrupt_work;
+
+ /* probe for and init boards */
+- return pci_module_init (&tulip_driver);
++ return pci_register_driver (&tulip_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/tulip/uli526x.c
++++ gregkh-2.6/drivers/net/tulip/uli526x.c
+@@ -1725,7 +1725,7 @@ static int __init uli526x_init_module(vo
+ break;
+ }
+
+- rc = pci_module_init(&uli526x_driver);
++ rc = pci_register_driver(&uli526x_driver);
+ if (rc < 0)
+ return rc;
+
+--- gregkh-2.6.orig/drivers/net/tulip/winbond-840.c
++++ gregkh-2.6/drivers/net/tulip/winbond-840.c
+@@ -1705,7 +1705,7 @@ static struct pci_driver w840_driver = {
+ static int __init w840_init(void)
+ {
+ printk(version);
+- return pci_module_init(&w840_driver);
++ return pci_register_driver(&w840_driver);
+ }
+
+ static void __exit w840_exit(void)
+--- gregkh-2.6.orig/drivers/net/tulip/xircom_tulip_cb.c
++++ gregkh-2.6/drivers/net/tulip/xircom_tulip_cb.c
+@@ -1727,7 +1727,7 @@ static int __init xircom_init(void)
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init(&xircom_driver);
++ return pci_register_driver(&xircom_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/typhoon.c
++++ gregkh-2.6/drivers/net/typhoon.c
+@@ -2659,7 +2659,7 @@ static struct pci_driver typhoon_driver
+ static int __init
+ typhoon_init(void)
+ {
+- return pci_module_init(&typhoon_driver);
++ return pci_register_driver(&typhoon_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/net/via-rhine.c
++++ gregkh-2.6/drivers/net/via-rhine.c
+@@ -2049,7 +2049,7 @@ static int __init rhine_init(void)
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init(&rhine_driver);
++ return pci_register_driver(&rhine_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/via-velocity.c
++++ gregkh-2.6/drivers/net/via-velocity.c
+@@ -2241,7 +2241,7 @@ static int __init velocity_init_module(v
+ int ret;
+
+ velocity_register_notifier();
+- ret = pci_module_init(&velocity_driver);
++ ret = pci_register_driver(&velocity_driver);
+ if (ret < 0)
+ velocity_unregister_notifier();
+ return ret;
+--- gregkh-2.6.orig/drivers/net/wan/dscc4.c
++++ gregkh-2.6/drivers/net/wan/dscc4.c
+@@ -2061,7 +2061,7 @@ static struct pci_driver dscc4_driver =
+
+ static int __init dscc4_init_module(void)
+ {
+- return pci_module_init(&dscc4_driver);
++ return pci_register_driver(&dscc4_driver);
+ }
+
+ static void __exit dscc4_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/wan/farsync.c
++++ gregkh-2.6/drivers/net/wan/farsync.c
+@@ -2697,7 +2697,7 @@ fst_init(void)
+ for (i = 0; i < FST_MAX_CARDS; i++)
+ fst_card_array[i] = NULL;
+ spin_lock_init(&fst_work_q_lock);
+- return pci_module_init(&fst_driver);
++ return pci_register_driver(&fst_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/net/wan/lmc/lmc_main.c
++++ gregkh-2.6/drivers/net/wan/lmc/lmc_main.c
+@@ -1790,7 +1790,7 @@ static struct pci_driver lmc_driver = {
+
+ static int __init init_lmc(void)
+ {
+- return pci_module_init(&lmc_driver);
++ return pci_register_driver(&lmc_driver);
+ }
+
+ static void __exit exit_lmc(void)
+--- gregkh-2.6.orig/drivers/net/wan/pc300_drv.c
++++ gregkh-2.6/drivers/net/wan/pc300_drv.c
+@@ -3677,7 +3677,7 @@ static struct pci_driver cpc_driver = {
+
+ static int __init cpc_init(void)
+ {
+- return pci_module_init(&cpc_driver);
++ return pci_register_driver(&cpc_driver);
+ }
+
+ static void __exit cpc_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/wan/pci200syn.c
++++ gregkh-2.6/drivers/net/wan/pci200syn.c
+@@ -468,7 +468,7 @@ static int __init pci200_init_module(voi
+ printk(KERN_ERR "pci200syn: Invalid PCI clock frequency\n");
+ return -EINVAL;
+ }
+- return pci_module_init(&pci200_pci_driver);
++ return pci_register_driver(&pci200_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/net/wan/wanxl.c
++++ gregkh-2.6/drivers/net/wan/wanxl.c
+@@ -822,7 +822,7 @@ static int __init wanxl_init_module(void
+ #ifdef MODULE
+ printk(KERN_INFO "%s\n", version);
+ #endif
+- return pci_module_init(&wanxl_pci_driver);
++ return pci_register_driver(&wanxl_pci_driver);
+ }
+
+ static void __exit wanxl_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/wireless/atmel_pci.c
++++ gregkh-2.6/drivers/net/wireless/atmel_pci.c
+@@ -77,7 +77,7 @@ static void __devexit atmel_pci_remove(s
+
+ static int __init atmel_init_module(void)
+ {
+- return pci_module_init(&atmel_driver);
++ return pci_register_driver(&atmel_driver);
+ }
+
+ static void __exit atmel_cleanup_module(void)
+--- gregkh-2.6.orig/drivers/net/wireless/ipw2100.c
++++ gregkh-2.6/drivers/net/wireless/ipw2100.c
+@@ -6856,7 +6856,7 @@ static int __init ipw2100_init(void)
+ printk(KERN_INFO DRV_NAME ": %s, %s\n", DRV_DESCRIPTION, DRV_VERSION);
+ printk(KERN_INFO DRV_NAME ": %s\n", DRV_COPYRIGHT);
+
+- ret = pci_module_init(&ipw2100_pci_driver);
++ ret = pci_register_driver(&ipw2100_pci_driver);
+
+ #ifdef CONFIG_IPW_DEBUG
+ ipw2100_debug_level = debug;
+--- gregkh-2.6.orig/drivers/net/wireless/ipw2200.c
++++ gregkh-2.6/drivers/net/wireless/ipw2200.c
+@@ -11221,7 +11221,7 @@ static int __init ipw_init(void)
+ printk(KERN_INFO DRV_NAME ": " DRV_DESCRIPTION ", " DRV_VERSION "\n");
+ printk(KERN_INFO DRV_NAME ": " DRV_COPYRIGHT "\n");
+
+- ret = pci_module_init(&ipw_driver);
++ ret = pci_register_driver(&ipw_driver);
+ if (ret) {
+ IPW_ERROR("Unable to initialize PCI module\n");
+ return ret;
+--- gregkh-2.6.orig/drivers/net/wireless/orinoco_nortel.c
++++ gregkh-2.6/drivers/net/wireless/orinoco_nortel.c
+@@ -287,7 +287,7 @@ MODULE_LICENSE("Dual MPL/GPL");
+ static int __init nortel_pci_init(void)
+ {
+ printk(KERN_DEBUG "%s\n", version);
+- return pci_module_init(&nortel_pci_driver);
++ return pci_register_driver(&nortel_pci_driver);
+ }
+
+ static void __exit nortel_pci_exit(void)
+--- gregkh-2.6.orig/drivers/net/wireless/orinoco_pci.c
++++ gregkh-2.6/drivers/net/wireless/orinoco_pci.c
+@@ -379,7 +379,7 @@ MODULE_LICENSE("Dual MPL/GPL");
+ static int __init orinoco_pci_init(void)
+ {
+ printk(KERN_DEBUG "%s\n", version);
+- return pci_module_init(&orinoco_pci_driver);
++ return pci_register_driver(&orinoco_pci_driver);
+ }
+
+ static void __exit orinoco_pci_exit(void)
+--- gregkh-2.6.orig/drivers/net/wireless/orinoco_plx.c
++++ gregkh-2.6/drivers/net/wireless/orinoco_plx.c
+@@ -382,7 +382,7 @@ MODULE_LICENSE("Dual MPL/GPL");
+ static int __init orinoco_plx_init(void)
+ {
+ printk(KERN_DEBUG "%s\n", version);
+- return pci_module_init(&orinoco_plx_driver);
++ return pci_register_driver(&orinoco_plx_driver);
+ }
+
+ static void __exit orinoco_plx_exit(void)
+--- gregkh-2.6.orig/drivers/net/wireless/orinoco_tmd.c
++++ gregkh-2.6/drivers/net/wireless/orinoco_tmd.c
+@@ -239,7 +239,7 @@ MODULE_LICENSE("Dual MPL/GPL");
+ static int __init orinoco_tmd_init(void)
+ {
+ printk(KERN_DEBUG "%s\n", version);
+- return pci_module_init(&orinoco_tmd_driver);
++ return pci_register_driver(&orinoco_tmd_driver);
+ }
+
+ static void __exit orinoco_tmd_exit(void)
+--- gregkh-2.6.orig/drivers/net/wireless/prism54/islpci_hotplug.c
++++ gregkh-2.6/drivers/net/wireless/prism54/islpci_hotplug.c
+@@ -312,7 +312,7 @@ prism54_module_init(void)
+
+ __bug_on_wrong_struct_sizes ();
+
+- return pci_module_init(&prism54_driver);
++ return pci_register_driver(&prism54_driver);
+ }
+
+ /* by the time prism54_module_exit() terminates, as a postcondition
+--- gregkh-2.6.orig/drivers/net/yellowfin.c
++++ gregkh-2.6/drivers/net/yellowfin.c
+@@ -1474,7 +1474,7 @@ static int __init yellowfin_init (void)
+ #ifdef MODULE
+ printk(version);
+ #endif
+- return pci_module_init (&yellowfin_driver);
++ return pci_register_driver (&yellowfin_driver);
+ }
+
+
diff --git a/pci/drivers-rest-replace-pci_module_init-with-pci_register_driver.patch b/pci/drivers-rest-replace-pci_module_init-with-pci_register_driver.patch
new file mode 100644
index 0000000000000..331c27619a3cc
--- /dev/null
+++ b/pci/drivers-rest-replace-pci_module_init-with-pci_register_driver.patch
@@ -0,0 +1,77 @@
+From linux-kernel-owner+greg=40kroah.com-S1751410AbVK3AAj@vger.kernel.org Tue Nov 29 16:05:28 2005
+Date: Wed, 30 Nov 2005 01:00:35 +0100 (MET)
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+Cc: Richard Knutsson <ricknu-0@student.ltu.se>
+Message-Id: <20051130000545.1009.64699.sendpatchset@thinktank.campus.ltu.se>
+Subject: [PATCH 5/6] drivers/*rest*: Replace pci_module_init() with pci_register_driver()
+
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+
+Replace obsolete pci_module_init() with pci_register_driver().
+
+Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/hwmon/vt8231.c | 2 +-
+ drivers/parport/parport_serial.c | 2 +-
+ drivers/pcmcia/vrc4173_cardu.c | 2 +-
+ drivers/serial/serial_txx9.c | 2 +-
+ drivers/video/cyblafb.c | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+--- gregkh-2.6.orig/drivers/serial/serial_txx9.c
++++ gregkh-2.6/drivers/serial/serial_txx9.c
+@@ -1195,7 +1195,7 @@ static int __init serial_txx9_init(void)
+ serial_txx9_register_ports(&serial_txx9_reg);
+
+ #ifdef ENABLE_SERIAL_TXX9_PCI
+- ret = pci_module_init(&serial_txx9_pci_driver);
++ ret = pci_register_driver(&serial_txx9_pci_driver);
+ #endif
+ }
+ return ret;
+--- gregkh-2.6.orig/drivers/video/cyblafb.c
++++ gregkh-2.6/drivers/video/cyblafb.c
+@@ -1440,7 +1440,7 @@ static int __devinit cyblafb_init(void)
+ }
+ #endif
+ output("CyblaFB version %s initializing\n",VERSION);
+- return pci_module_init(&cyblafb_pci_driver);
++ return pci_register_driver(&cyblafb_pci_driver);
+ }
+
+ static void __exit cyblafb_exit(void)
+--- gregkh-2.6.orig/drivers/parport/parport_serial.c
++++ gregkh-2.6/drivers/parport/parport_serial.c
+@@ -464,7 +464,7 @@ static struct pci_driver parport_serial_
+
+ static int __init parport_serial_init (void)
+ {
+- return pci_module_init (&parport_serial_pci_driver);
++ return pci_register_driver (&parport_serial_pci_driver);
+ }
+
+ static void __exit parport_serial_exit (void)
+--- gregkh-2.6.orig/drivers/pcmcia/vrc4173_cardu.c
++++ gregkh-2.6/drivers/pcmcia/vrc4173_cardu.c
+@@ -604,7 +604,7 @@ static int __devinit vrc4173_cardu_init(
+ {
+ vrc4173_cardu_slots = 0;
+
+- return pci_module_init(&vrc4173_cardu_driver);
++ return pci_register_driver(&vrc4173_cardu_driver);
+ }
+
+ static void __devexit vrc4173_cardu_exit(void)
+--- gregkh-2.6.orig/drivers/hwmon/vt8231.c
++++ gregkh-2.6/drivers/hwmon/vt8231.c
+@@ -841,7 +841,7 @@ static int __devinit vt8231_pci_probe(st
+
+ static int __init sm_vt8231_init(void)
+ {
+- return pci_module_init(&vt8231_pci_driver);
++ return pci_register_driver(&vt8231_pci_driver);
+ }
+
+ static void __exit sm_vt8231_exit(void)
diff --git a/pci/drivers-scsi-replace-pci_module_init-with-pci_register_driver.patch b/pci/drivers-scsi-replace-pci_module_init-with-pci_register_driver.patch
new file mode 100644
index 0000000000000..60854422c4a5b
--- /dev/null
+++ b/pci/drivers-scsi-replace-pci_module_init-with-pci_register_driver.patch
@@ -0,0 +1,439 @@
+From linux-kernel-owner+greg=40kroah.com-S1751414AbVK3AAU@vger.kernel.org Tue Nov 29 16:05:29 2005
+Date: Wed, 30 Nov 2005 01:00:15 +0100 (MET)
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+Cc: Richard Knutsson <ricknu-0@student.ltu.se>
+Message-Id: <20051130000525.1009.32824.sendpatchset@thinktank.campus.ltu.se>
+Subject: [PATCH 4/6] drivers/scsi: Replace pci_module_init() with pci_register_driver()
+
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+
+Replace obsolete pci_module_init() with pci_register_driver().
+
+Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/scsi/3w-9xxx.c | 2 +-
+ drivers/scsi/3w-xxxx.c | 2 +-
+ drivers/scsi/a100u2w.c | 2 +-
+ drivers/scsi/ahci.c | 2 +-
+ drivers/scsi/aic7xxx/aic79xx_osm_pci.c | 2 +-
+ drivers/scsi/aic7xxx/aic7xxx_osm_pci.c | 2 +-
+ drivers/scsi/ata_piix.c | 4 ++--
+ drivers/scsi/dc395x.c | 2 +-
+ drivers/scsi/dmx3191d.c | 2 +-
+ drivers/scsi/ipr.c | 2 +-
+ drivers/scsi/ips.c | 2 +-
+ drivers/scsi/megaraid.c | 2 +-
+ drivers/scsi/megaraid/megaraid_sas.c | 2 +-
+ drivers/scsi/nsp32.c | 2 +-
+ drivers/scsi/pdc_adma.c | 2 +-
+ drivers/scsi/qla1280.c | 2 +-
+ drivers/scsi/qla2xxx/ql2100.c | 2 +-
+ drivers/scsi/qla2xxx/ql2200.c | 2 +-
+ drivers/scsi/qla2xxx/ql2300.c | 2 +-
+ drivers/scsi/qla2xxx/ql2322.c | 2 +-
+ drivers/scsi/qla2xxx/ql6312.c | 2 +-
+ drivers/scsi/qla2xxx/qla_os.c | 2 +-
+ drivers/scsi/sata_mv.c | 2 +-
+ drivers/scsi/sata_nv.c | 2 +-
+ drivers/scsi/sata_promise.c | 2 +-
+ drivers/scsi/sata_qstor.c | 2 +-
+ drivers/scsi/sata_sil.c | 2 +-
+ drivers/scsi/sata_sil24.c | 2 +-
+ drivers/scsi/sata_sis.c | 2 +-
+ drivers/scsi/sata_svw.c | 2 +-
+ drivers/scsi/sata_sx4.c | 2 +-
+ drivers/scsi/sata_uli.c | 2 +-
+ drivers/scsi/sata_via.c | 2 +-
+ drivers/scsi/sata_vsc.c | 2 +-
+ drivers/scsi/tmscsim.c | 2 +-
+ 35 files changed, 36 insertions(+), 36 deletions(-)
+
+--- gregkh-2.6.orig/drivers/scsi/3w-9xxx.c
++++ gregkh-2.6/drivers/scsi/3w-9xxx.c
+@@ -2206,7 +2206,7 @@ static int __init twa_init(void)
+ {
+ printk(KERN_WARNING "3ware 9000 Storage Controller device driver for Linux v%s.\n", TW_DRIVER_VERSION);
+
+- return pci_module_init(&twa_driver);
++ return pci_register_driver(&twa_driver);
+ } /* End twa_init() */
+
+ /* This function is called on driver exit */
+--- gregkh-2.6.orig/drivers/scsi/3w-xxxx.c
++++ gregkh-2.6/drivers/scsi/3w-xxxx.c
+@@ -2482,7 +2482,7 @@ static int __init tw_init(void)
+ {
+ printk(KERN_WARNING "3ware Storage Controller device driver for Linux v%s.\n", TW_DRIVER_VERSION);
+
+- return pci_module_init(&tw_driver);
++ return pci_register_driver(&tw_driver);
+ } /* End tw_init() */
+
+ /* This function is called on driver exit */
+--- gregkh-2.6.orig/drivers/scsi/a100u2w.c
++++ gregkh-2.6/drivers/scsi/a100u2w.c
+@@ -1186,7 +1186,7 @@ static struct pci_driver inia100_pci_dri
+
+ static int __init inia100_init(void)
+ {
+- return pci_module_init(&inia100_pci_driver);
++ return pci_register_driver(&inia100_pci_driver);
+ }
+
+ static void __exit inia100_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/ahci.c
++++ gregkh-2.6/drivers/scsi/ahci.c
+@@ -1140,7 +1140,7 @@ static void ahci_remove_one (struct pci_
+
+ static int __init ahci_init(void)
+ {
+- return pci_module_init(&ahci_pci_driver);
++ return pci_register_driver(&ahci_pci_driver);
+ }
+
+ static void __exit ahci_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
++++ gregkh-2.6/drivers/scsi/aic7xxx/aic79xx_osm_pci.c
+@@ -198,7 +198,7 @@ ahd_linux_pci_dev_probe(struct pci_dev *
+ int
+ ahd_linux_pci_init(void)
+ {
+- return (pci_module_init(&aic79xx_pci_driver));
++ return (pci_register_driver(&aic79xx_pci_driver));
+ }
+
+ void
+--- gregkh-2.6.orig/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
++++ gregkh-2.6/drivers/scsi/aic7xxx/aic7xxx_osm_pci.c
+@@ -246,7 +246,7 @@ int
+ ahc_linux_pci_init(void)
+ {
+ /* Translate error or zero return into zero or one */
+- return pci_module_init(&aic7xxx_pci_driver) ? 0 : 1;
++ return pci_register_driver(&aic7xxx_pci_driver) ? 0 : 1;
+ }
+
+ void
+--- gregkh-2.6.orig/drivers/scsi/ata_piix.c
++++ gregkh-2.6/drivers/scsi/ata_piix.c
+@@ -684,8 +684,8 @@ static int __init piix_init(void)
+ {
+ int rc;
+
+- DPRINTK("pci_module_init\n");
+- rc = pci_module_init(&piix_pci_driver);
++ DPRINTK("pci_register_driver\n");
++ rc = pci_register_driver(&piix_pci_driver);
+ if (rc)
+ return rc;
+
+--- gregkh-2.6.orig/drivers/scsi/dc395x.c
++++ gregkh-2.6/drivers/scsi/dc395x.c
+@@ -4921,7 +4921,7 @@ static struct pci_driver dc395x_driver =
+ **/
+ static int __init dc395x_module_init(void)
+ {
+- return pci_module_init(&dc395x_driver);
++ return pci_register_driver(&dc395x_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/scsi/dmx3191d.c
++++ gregkh-2.6/drivers/scsi/dmx3191d.c
+@@ -155,7 +155,7 @@ static struct pci_driver dmx3191d_pci_dr
+
+ static int __init dmx3191d_init(void)
+ {
+- return pci_module_init(&dmx3191d_pci_driver);
++ return pci_register_driver(&dmx3191d_pci_driver);
+ }
+
+ static void __exit dmx3191d_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/ipr.c
++++ gregkh-2.6/drivers/scsi/ipr.c
+@@ -6736,7 +6736,7 @@ static int __init ipr_init(void)
+ ipr_info("IBM Power RAID SCSI Device Driver version: %s %s\n",
+ IPR_DRIVER_VERSION, IPR_DRIVER_DATE);
+
+- return pci_module_init(&ipr_driver);
++ return pci_register_driver(&ipr_driver);
+ }
+
+ /**
+--- gregkh-2.6.orig/drivers/scsi/ips.c
++++ gregkh-2.6/drivers/scsi/ips.c
+@@ -7073,7 +7073,7 @@ ips_remove_device(struct pci_dev *pci_de
+ static int __init
+ ips_module_init(void)
+ {
+- if (pci_module_init(&ips_pci_driver) < 0)
++ if (pci_register_driver(&ips_pci_driver) < 0)
+ return -ENODEV;
+ ips_driver_template.module = THIS_MODULE;
+ ips_order_controllers();
+--- gregkh-2.6.orig/drivers/scsi/megaraid/megaraid_sas.c
++++ gregkh-2.6/drivers/scsi/megaraid/megaraid_sas.c
+@@ -2768,7 +2768,7 @@ static int __init megasas_init(void)
+ /*
+ * Register ourselves as PCI hotplug module
+ */
+- rval = pci_module_init(&megasas_pci_driver);
++ rval = pci_register_driver(&megasas_pci_driver);
+
+ if (rval) {
+ printk(KERN_DEBUG "megasas: PCI hotplug regisration failed \n");
+--- gregkh-2.6.orig/drivers/scsi/megaraid.c
++++ gregkh-2.6/drivers/scsi/megaraid.c
+@@ -5081,7 +5081,7 @@ static int __init megaraid_init(void)
+ "megaraid: failed to create megaraid root\n");
+ }
+ #endif
+- error = pci_module_init(&megaraid_pci_driver);
++ error = pci_register_driver(&megaraid_pci_driver);
+ if (error) {
+ #ifdef CONFIG_PROC_FS
+ remove_proc_entry("megaraid", &proc_root);
+--- gregkh-2.6.orig/drivers/scsi/nsp32.c
++++ gregkh-2.6/drivers/scsi/nsp32.c
+@@ -3574,7 +3574,7 @@ static struct pci_driver nsp32_driver =
+ */
+ static int __init init_nsp32(void) {
+ nsp32_msg(KERN_INFO, "loading...");
+- return pci_module_init(&nsp32_driver);
++ return pci_register_driver(&nsp32_driver);
+ }
+
+ static void __exit exit_nsp32(void) {
+--- gregkh-2.6.orig/drivers/scsi/pdc_adma.c
++++ gregkh-2.6/drivers/scsi/pdc_adma.c
+@@ -722,7 +722,7 @@ err_out:
+
+ static int __init adma_ata_init(void)
+ {
+- return pci_module_init(&adma_ata_pci_driver);
++ return pci_register_driver(&adma_ata_pci_driver);
+ }
+
+ static void __exit adma_ata_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/qla1280.c
++++ gregkh-2.6/drivers/scsi/qla1280.c
+@@ -4772,7 +4772,7 @@ qla1280_init(void)
+ qla1280_setup(qla1280);
+ #endif
+
+- return pci_module_init(&qla1280_pci_driver);
++ return pci_register_driver(&qla1280_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/scsi/qla2xxx/ql2100.c
++++ gregkh-2.6/drivers/scsi/qla2xxx/ql2100.c
+@@ -73,7 +73,7 @@ static struct pci_driver qla2100_pci_dri
+ static int __init
+ qla2100_init(void)
+ {
+- return pci_module_init(&qla2100_pci_driver);
++ return pci_register_driver(&qla2100_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/scsi/qla2xxx/ql2200.c
++++ gregkh-2.6/drivers/scsi/qla2xxx/ql2200.c
+@@ -73,7 +73,7 @@ static struct pci_driver qla2200_pci_dri
+ static int __init
+ qla2200_init(void)
+ {
+- return pci_module_init(&qla2200_pci_driver);
++ return pci_register_driver(&qla2200_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/scsi/qla2xxx/ql2300.c
++++ gregkh-2.6/drivers/scsi/qla2xxx/ql2300.c
+@@ -84,7 +84,7 @@ static struct pci_driver qla2300_pci_dri
+ static int __init
+ qla2300_init(void)
+ {
+- return pci_module_init(&qla2300_pci_driver);
++ return pci_register_driver(&qla2300_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/scsi/qla2xxx/ql2322.c
++++ gregkh-2.6/drivers/scsi/qla2xxx/ql2322.c
+@@ -89,7 +89,7 @@ static struct pci_driver qla2322_pci_dri
+ static int __init
+ qla2322_init(void)
+ {
+- return pci_module_init(&qla2322_pci_driver);
++ return pci_register_driver(&qla2322_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/scsi/qla2xxx/ql6312.c
++++ gregkh-2.6/drivers/scsi/qla2xxx/ql6312.c
+@@ -83,7 +83,7 @@ static struct pci_driver qla6312_pci_dri
+ static int __init
+ qla6312_init(void)
+ {
+- return pci_module_init(&qla6312_pci_driver);
++ return pci_register_driver(&qla6312_pci_driver);
+ }
+
+ static void __exit
+--- gregkh-2.6.orig/drivers/scsi/qla2xxx/qla_os.c
++++ gregkh-2.6/drivers/scsi/qla2xxx/qla_os.c
+@@ -2565,7 +2565,7 @@ qla2x00_module_init(void)
+ return -ENODEV;
+
+ printk(KERN_INFO "QLogic Fibre Channel HBA Driver\n");
+- ret = pci_module_init(&qla2xxx_pci_driver);
++ ret = pci_register_driver(&qla2xxx_pci_driver);
+ if (ret) {
+ kmem_cache_destroy(srb_cachep);
+ fc_release_transport(qla2xxx_transport_template);
+--- gregkh-2.6.orig/drivers/scsi/sata_mv.c
++++ gregkh-2.6/drivers/scsi/sata_mv.c
+@@ -2229,7 +2229,7 @@ err_out:
+
+ static int __init mv_init(void)
+ {
+- return pci_module_init(&mv_pci_driver);
++ return pci_register_driver(&mv_pci_driver);
+ }
+
+ static void __exit mv_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_nv.c
++++ gregkh-2.6/drivers/scsi/sata_nv.c
+@@ -591,7 +591,7 @@ static void nv_check_hotplug_ck804(struc
+
+ static int __init nv_init(void)
+ {
+- return pci_module_init(&nv_pci_driver);
++ return pci_register_driver(&nv_pci_driver);
+ }
+
+ static void __exit nv_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_promise.c
++++ gregkh-2.6/drivers/scsi/sata_promise.c
+@@ -743,7 +743,7 @@ err_out:
+
+ static int __init pdc_ata_init(void)
+ {
+- return pci_module_init(&pdc_ata_pci_driver);
++ return pci_register_driver(&pdc_ata_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/scsi/sata_qstor.c
++++ gregkh-2.6/drivers/scsi/sata_qstor.c
+@@ -712,7 +712,7 @@ err_out:
+
+ static int __init qs_ata_init(void)
+ {
+- return pci_module_init(&qs_ata_pci_driver);
++ return pci_register_driver(&qs_ata_pci_driver);
+ }
+
+ static void __exit qs_ata_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_sil24.c
++++ gregkh-2.6/drivers/scsi/sata_sil24.c
+@@ -1017,7 +1017,7 @@ static int sil24_init_one(struct pci_dev
+
+ static int __init sil24_init(void)
+ {
+- return pci_module_init(&sil24_pci_driver);
++ return pci_register_driver(&sil24_pci_driver);
+ }
+
+ static void __exit sil24_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_sil.c
++++ gregkh-2.6/drivers/scsi/sata_sil.c
+@@ -512,7 +512,7 @@ err_out:
+
+ static int __init sil_init(void)
+ {
+- return pci_module_init(&sil_pci_driver);
++ return pci_register_driver(&sil_pci_driver);
+ }
+
+ static void __exit sil_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_sis.c
++++ gregkh-2.6/drivers/scsi/sata_sis.c
+@@ -335,7 +335,7 @@ err_out:
+
+ static int __init sis_init(void)
+ {
+- return pci_module_init(&sis_pci_driver);
++ return pci_register_driver(&sis_pci_driver);
+ }
+
+ static void __exit sis_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_svw.c
++++ gregkh-2.6/drivers/scsi/sata_svw.c
+@@ -485,7 +485,7 @@ static struct pci_driver k2_sata_pci_dri
+
+ static int __init k2_sata_init(void)
+ {
+- return pci_module_init(&k2_sata_pci_driver);
++ return pci_register_driver(&k2_sata_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/scsi/sata_sx4.c
++++ gregkh-2.6/drivers/scsi/sata_sx4.c
+@@ -1495,7 +1495,7 @@ err_out:
+
+ static int __init pdc_sata_init(void)
+ {
+- return pci_module_init(&pdc_sata_pci_driver);
++ return pci_register_driver(&pdc_sata_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/scsi/sata_uli.c
++++ gregkh-2.6/drivers/scsi/sata_uli.c
+@@ -272,7 +272,7 @@ err_out:
+
+ static int __init uli_init(void)
+ {
+- return pci_module_init(&uli_pci_driver);
++ return pci_register_driver(&uli_pci_driver);
+ }
+
+ static void __exit uli_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_via.c
++++ gregkh-2.6/drivers/scsi/sata_via.c
+@@ -382,7 +382,7 @@ err_out:
+
+ static int __init svia_init(void)
+ {
+- return pci_module_init(&svia_pci_driver);
++ return pci_register_driver(&svia_pci_driver);
+ }
+
+ static void __exit svia_exit(void)
+--- gregkh-2.6.orig/drivers/scsi/sata_vsc.c
++++ gregkh-2.6/drivers/scsi/sata_vsc.c
+@@ -417,7 +417,7 @@ static struct pci_driver vsc_sata_pci_dr
+
+ static int __init vsc_sata_init(void)
+ {
+- return pci_module_init(&vsc_sata_pci_driver);
++ return pci_register_driver(&vsc_sata_pci_driver);
+ }
+
+
+--- gregkh-2.6.orig/drivers/scsi/tmscsim.c
++++ gregkh-2.6/drivers/scsi/tmscsim.c
+@@ -2671,7 +2671,7 @@ static int __init dc390_module_init(void
+ printk (KERN_INFO "DC390: Using safe settings.\n");
+ }
+
+- return pci_module_init(&dc390_driver);
++ return pci_register_driver(&dc390_driver);
+ }
+
+ static void __exit dc390_module_exit(void)
diff --git a/pci/drivers-sound-oss-replace-pci_module_init-with-pci_register_driver.patch b/pci/drivers-sound-oss-replace-pci_module_init-with-pci_register_driver.patch
new file mode 100644
index 0000000000000..3fa1cb0794056
--- /dev/null
+++ b/pci/drivers-sound-oss-replace-pci_module_init-with-pci_register_driver.patch
@@ -0,0 +1,204 @@
+From foo@baz Tue Dec 6 15:35:16 2005
+Date: Tue, 6 Dec 2005 15:33:15 -0800
+From: Greg Kroah-Hartman <gregkh@suse.de>
+Subject: drivers/sound/oss: Replace pci_module_init() with pci_register_driver()
+
+Replace obsolete pci_module_init() with pci_register_driver().
+
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+Cc: Richard Knutsson <ricknu-0@student.ltu.se>
+---
+ sound/oss/ad1889.c | 2 +-
+ sound/oss/btaudio.c | 2 +-
+ sound/oss/cmpci.c | 2 +-
+ sound/oss/cs4281/cs4281m.c | 2 +-
+ sound/oss/cs46xx.c | 2 +-
+ sound/oss/emu10k1/main.c | 2 +-
+ sound/oss/es1370.c | 2 +-
+ sound/oss/es1371.c | 2 +-
+ sound/oss/ite8172.c | 2 +-
+ sound/oss/kahlua.c | 2 +-
+ sound/oss/maestro.c | 2 +-
+ sound/oss/nec_vrc5477.c | 2 +-
+ sound/oss/nm256_audio.c | 2 +-
+ sound/oss/rme96xx.c | 2 +-
+ sound/oss/sonicvibes.c | 2 +-
+ sound/oss/ymfpci.c | 2 +-
+ 16 files changed, 16 insertions(+), 16 deletions(-)
+
+--- gregkh-2.6.orig/sound/oss/ad1889.c
++++ gregkh-2.6/sound/oss/ad1889.c
+@@ -1089,7 +1089,7 @@ static struct pci_driver ad1889_driver =
+
+ static int __init ad1889_init_module(void)
+ {
+- return pci_module_init(&ad1889_driver);
++ return pci_register_driver(&ad1889_driver);
+ }
+
+ static void ad1889_exit_module(void)
+--- gregkh-2.6.orig/sound/oss/btaudio.c
++++ gregkh-2.6/sound/oss/btaudio.c
+@@ -1101,7 +1101,7 @@ static int btaudio_init_module(void)
+ digital ? "digital" : "",
+ analog && digital ? "+" : "",
+ analog ? "analog" : "");
+- return pci_module_init(&btaudio_pci_driver);
++ return pci_register_driver(&btaudio_pci_driver);
+ }
+
+ static void btaudio_cleanup_module(void)
+--- gregkh-2.6.orig/sound/oss/cmpci.c
++++ gregkh-2.6/sound/oss/cmpci.c
+@@ -3366,7 +3366,7 @@ static struct pci_driver cm_driver = {
+ static int __init init_cmpci(void)
+ {
+ printk(KERN_INFO "cmpci: version $Revision: 6.82 $ time " __TIME__ " " __DATE__ "\n");
+- return pci_module_init(&cm_driver);
++ return pci_register_driver(&cm_driver);
+ }
+
+ static void __exit cleanup_cmpci(void)
+--- gregkh-2.6.orig/sound/oss/cs4281/cs4281m.c
++++ gregkh-2.6/sound/oss/cs4281/cs4281m.c
+@@ -4477,7 +4477,7 @@ static int __init cs4281_init_module(voi
+ printk(KERN_INFO "cs4281: version v%d.%02d.%d time " __TIME__ " "
+ __DATE__ "\n", CS4281_MAJOR_VERSION, CS4281_MINOR_VERSION,
+ CS4281_ARCH);
+- rtn = pci_module_init(&cs4281_pci_driver);
++ rtn = pci_register_driver(&cs4281_pci_driver);
+
+ CS_DBGOUT(CS_INIT | CS_FUNCTION, 2,
+ printk(KERN_INFO "cs4281: cs4281_init_module()- (%d)\n",rtn));
+--- gregkh-2.6.orig/sound/oss/cs46xx.c
++++ gregkh-2.6/sound/oss/cs46xx.c
+@@ -5711,7 +5711,7 @@ static int __init cs46xx_init_module(voi
+ int rtn = 0;
+ CS_DBGOUT(CS_INIT | CS_FUNCTION, 2, printk(KERN_INFO
+ "cs46xx: cs46xx_init_module()+ \n"));
+- rtn = pci_module_init(&cs46xx_pci_driver);
++ rtn = pci_register_driver(&cs46xx_pci_driver);
+
+ if(rtn == -ENODEV)
+ {
+--- gregkh-2.6.orig/sound/oss/emu10k1/main.c
++++ gregkh-2.6/sound/oss/emu10k1/main.c
+@@ -1428,7 +1428,7 @@ static int __init emu10k1_init_module(vo
+ {
+ printk(KERN_INFO "Creative EMU10K1 PCI Audio Driver, version " DRIVER_VERSION ", " __TIME__ " " __DATE__ "\n");
+
+- return pci_module_init(&emu10k1_pci_driver);
++ return pci_register_driver(&emu10k1_pci_driver);
+ }
+
+ static void __exit emu10k1_cleanup_module(void)
+--- gregkh-2.6.orig/sound/oss/es1370.c
++++ gregkh-2.6/sound/oss/es1370.c
+@@ -2779,7 +2779,7 @@ static struct pci_driver es1370_driver =
+ static int __init init_es1370(void)
+ {
+ printk(KERN_INFO "es1370: version v0.38 time " __TIME__ " " __DATE__ "\n");
+- return pci_module_init(&es1370_driver);
++ return pci_register_driver(&es1370_driver);
+ }
+
+ static void __exit cleanup_es1370(void)
+--- gregkh-2.6.orig/sound/oss/es1371.c
++++ gregkh-2.6/sound/oss/es1371.c
+@@ -3090,7 +3090,7 @@ static struct pci_driver es1371_driver =
+ static int __init init_es1371(void)
+ {
+ printk(KERN_INFO PFX "version v0.32 time " __TIME__ " " __DATE__ "\n");
+- return pci_module_init(&es1371_driver);
++ return pci_register_driver(&es1371_driver);
+ }
+
+ static void __exit cleanup_es1371(void)
+--- gregkh-2.6.orig/sound/oss/ite8172.c
++++ gregkh-2.6/sound/oss/ite8172.c
+@@ -2206,7 +2206,7 @@ static struct pci_driver it8172_driver =
+ static int __init init_it8172(void)
+ {
+ info("version v0.5 time " __TIME__ " " __DATE__);
+- return pci_module_init(&it8172_driver);
++ return pci_register_driver(&it8172_driver);
+ }
+
+ static void __exit cleanup_it8172(void)
+--- gregkh-2.6.orig/sound/oss/kahlua.c
++++ gregkh-2.6/sound/oss/kahlua.c
+@@ -218,7 +218,7 @@ static struct pci_driver kahlua_driver =
+ static int __init kahlua_init_module(void)
+ {
+ printk(KERN_INFO "Cyrix Kahlua VSA1 XpressAudio support (c) Copyright 2003 Red Hat Inc\n");
+- return pci_module_init(&kahlua_driver);
++ return pci_register_driver(&kahlua_driver);
+ }
+
+ static void __devexit kahlua_cleanup_module(void)
+--- gregkh-2.6.orig/sound/oss/maestro.c
++++ gregkh-2.6/sound/oss/maestro.c
+@@ -3634,7 +3634,7 @@ static int __init init_maestro(void)
+ {
+ int rc;
+
+- rc = pci_module_init(&maestro_pci_driver);
++ rc = pci_register_driver(&maestro_pci_driver);
+ if (rc < 0)
+ return rc;
+
+--- gregkh-2.6.orig/sound/oss/nec_vrc5477.c
++++ gregkh-2.6/sound/oss/nec_vrc5477.c
+@@ -2045,7 +2045,7 @@ static struct pci_driver vrc5477_ac97_dr
+ static int __init init_vrc5477_ac97(void)
+ {
+ printk("Vrc5477 AC97 driver: version v0.2 time " __TIME__ " " __DATE__ " by Jun Sun\n");
+- return pci_module_init(&vrc5477_ac97_driver);
++ return pci_register_driver(&vrc5477_ac97_driver);
+ }
+
+ static void __exit cleanup_vrc5477_ac97(void)
+--- gregkh-2.6.orig/sound/oss/nm256_audio.c
++++ gregkh-2.6/sound/oss/nm256_audio.c
+@@ -1690,7 +1690,7 @@ module_param(force_load, bool, 0);
+ static int __init do_init_nm256(void)
+ {
+ printk (KERN_INFO "NeoMagic 256AV/256ZX audio driver, version 1.1p\n");
+- return pci_module_init(&nm256_pci_driver);
++ return pci_register_driver(&nm256_pci_driver);
+ }
+
+ static void __exit cleanup_nm256 (void)
+--- gregkh-2.6.orig/sound/oss/rme96xx.c
++++ gregkh-2.6/sound/oss/rme96xx.c
+@@ -1095,7 +1095,7 @@ static int __init init_rme96xx(void)
+ devices = ((devices-1) & RME96xx_MASK_DEVS) + 1;
+ printk(KERN_INFO RME_MESS" reserving %d dsp device(s)\n",devices);
+ numcards = 0;
+- return pci_module_init(&rme96xx_driver);
++ return pci_register_driver(&rme96xx_driver);
+ }
+
+ static void __exit cleanup_rme96xx(void)
+--- gregkh-2.6.orig/sound/oss/sonicvibes.c
++++ gregkh-2.6/sound/oss/sonicvibes.c
+@@ -2765,7 +2765,7 @@ static int __init init_sonicvibes(void)
+ if (!(wavetable_mem = __get_free_pages(GFP_KERNEL, 20-PAGE_SHIFT)))
+ printk(KERN_INFO "sv: cannot allocate 1MB of contiguous nonpageable memory for wavetable data\n");
+ #endif
+- return pci_module_init(&sv_driver);
++ return pci_register_driver(&sv_driver);
+ }
+
+ static void __exit cleanup_sonicvibes(void)
+--- gregkh-2.6.orig/sound/oss/ymfpci.c
++++ gregkh-2.6/sound/oss/ymfpci.c
+@@ -2680,7 +2680,7 @@ static struct pci_driver ymfpci_driver =
+
+ static int __init ymf_init_module(void)
+ {
+- return pci_module_init(&ymfpci_driver);
++ return pci_register_driver(&ymfpci_driver);
+ }
+
+ static void __exit ymf_cleanup_module (void)
diff --git a/pci/pci-hotplug-powerpc-more-removal-of-duplicated-code.patch b/pci/pci-hotplug-powerpc-more-removal-of-duplicated-code.patch
new file mode 100644
index 0000000000000..4373e9994e5f2
--- /dev/null
+++ b/pci/pci-hotplug-powerpc-more-removal-of-duplicated-code.patch
@@ -0,0 +1,109 @@
+From linas@austin.ibm.com Thu Dec 1 17:04:51 2005
+Date: Thu, 1 Dec 2005 18:59:58 -0600
+From: <linas@austin.ibm.com>
+To: greg@kroah.com
+Cc: johnrose@us.ibm.com
+Subject: PCI Hotplug/powerpc: more removal of duplicated code
+Message-ID: <20051202005957.GP31651@austin.ibm.com>
+Content-Disposition: inline
+
+The RPAPHP code contains two routines that appear to be gratuitous copies
+of very similar pci code. In particular,
+
+ rpaphp_claim_resource ~~ pci_claim_resource
+ (there is a minor, non-functional difference)
+
+ rpadlpar_claim_one_bus == pcibios_claim_one_bus
+ (the code is identical)
+
+This patch removes the rpaphp versions of the code.
+
+Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
+Acked-by: John Rose <johnrose@austin.ibm.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ drivers/pci/hotplug/rpadlpar_core.c | 24 +-----------------------
+ drivers/pci/hotplug/rpaphp_pci.c | 24 +-----------------------
+ 2 files changed, 2 insertions(+), 46 deletions(-)
+
+--- gregkh-2.6.orig/drivers/pci/hotplug/rpaphp_pci.c
++++ gregkh-2.6/drivers/pci/hotplug/rpaphp_pci.c
+@@ -62,28 +62,6 @@ struct pci_bus *rpaphp_find_pci_bus(stru
+ }
+ EXPORT_SYMBOL_GPL(rpaphp_find_pci_bus);
+
+-int rpaphp_claim_resource(struct pci_dev *dev, int resource)
+-{
+- struct resource *res = &dev->resource[resource];
+- struct resource *root = pci_find_parent_resource(dev, res);
+- char *dtype = resource < PCI_BRIDGE_RESOURCES ? "device" : "bridge";
+- int err = -EINVAL;
+-
+- if (root != NULL) {
+- err = request_resource(root, res);
+- }
+-
+- if (err) {
+- err("PCI: %s region %d of %s %s [%lx:%lx]\n",
+- root ? "Address space collision on" :
+- "No parent found for",
+- resource, dtype, pci_name(dev), res->start, res->end);
+- }
+- return err;
+-}
+-
+-EXPORT_SYMBOL_GPL(rpaphp_claim_resource);
+-
+ static int rpaphp_get_sensor_state(struct slot *slot, int *state)
+ {
+ int rc;
+@@ -177,7 +155,7 @@ void rpaphp_fixup_new_pci_devices(struct
+
+ if (r->parent || !r->start || !r->flags)
+ continue;
+- rpaphp_claim_resource(dev, i);
++ pci_claim_resource(dev, i);
+ }
+ }
+ }
+--- gregkh-2.6.orig/drivers/pci/hotplug/rpadlpar_core.c
++++ gregkh-2.6/drivers/pci/hotplug/rpadlpar_core.c
+@@ -112,28 +112,6 @@ static struct slot *find_slot(struct dev
+ return NULL;
+ }
+
+-static void rpadlpar_claim_one_bus(struct pci_bus *b)
+-{
+- struct list_head *ld;
+- struct pci_bus *child_bus;
+-
+- for (ld = b->devices.next; ld != &b->devices; ld = ld->next) {
+- struct pci_dev *dev = pci_dev_b(ld);
+- int i;
+-
+- for (i = 0; i < PCI_NUM_RESOURCES; i++) {
+- struct resource *r = &dev->resource[i];
+-
+- if (r->parent || !r->start || !r->flags)
+- continue;
+- rpaphp_claim_resource(dev, i);
+- }
+- }
+-
+- list_for_each_entry(child_bus, &b->children, node)
+- rpadlpar_claim_one_bus(child_bus);
+-}
+-
+ static struct pci_dev *dlpar_find_new_dev(struct pci_bus *parent,
+ struct device_node *dev_dn)
+ {
+@@ -171,7 +149,7 @@ static struct pci_dev *dlpar_pci_add_bus
+ rpaphp_init_new_devs(dev->subordinate);
+
+ /* Claim new bus resources */
+- rpadlpar_claim_one_bus(dev->bus);
++ pcibios_claim_one_bus(dev->bus);
+
+ /* ioremap() for child bus, which may or may not succeed */
+ (void) remap_bus_range(dev->bus);
diff --git a/pci/pci-hotplug-powerpc-remove-duplicated-code.patch b/pci/pci-hotplug-powerpc-remove-duplicated-code.patch
new file mode 100644
index 0000000000000..c454b8039ce89
--- /dev/null
+++ b/pci/pci-hotplug-powerpc-remove-duplicated-code.patch
@@ -0,0 +1,65 @@
+From linas@austin.ibm.com Thu Dec 1 16:59:38 2005
+Date: Thu, 1 Dec 2005 18:56:14 -0600
+From: <linas@austin.ibm.com>
+To: greg@kroah.com
+Cc: johnrose@us.ibm.com
+Subject: PCI Hotplug/powerpc: remove duplicated code
+Message-ID: <20051202005614.GO31651@austin.ibm.com>
+Content-Disposition: inline
+
+
+The RPAPHP code contains a routine that duplicates some existing code.
+This patch removes the rpaphp version of the code.
+
+Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
+Acked-by: John Rose <johnrose@austin.ibm.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+
+---
+ drivers/pci/hotplug/rpadlpar_core.c | 3 ++-
+ drivers/pci/hotplug/rpaphp_pci.c | 14 +-------------
+ 2 files changed, 3 insertions(+), 14 deletions(-)
+
+--- gregkh-2.6.orig/drivers/pci/hotplug/rpaphp_pci.c
++++ gregkh-2.6/drivers/pci/hotplug/rpaphp_pci.c
+@@ -287,18 +287,6 @@ rpaphp_pci_config_slot(struct pci_bus *b
+ return dev;
+ }
+
+-void rpaphp_eeh_init_nodes(struct device_node *dn)
+-{
+- struct device_node *sib;
+-
+- for (sib = dn->child; sib; sib = sib->sibling)
+- rpaphp_eeh_init_nodes(sib);
+- eeh_add_device_early(dn);
+- return;
+-
+-}
+-EXPORT_SYMBOL_GPL(rpaphp_eeh_init_nodes);
+-
+ static void print_slot_pci_funcs(struct pci_bus *bus)
+ {
+ struct device_node *dn;
+@@ -324,7 +312,7 @@ int rpaphp_config_pci_adapter(struct pci
+ if (!dn)
+ goto exit;
+
+- rpaphp_eeh_init_nodes(dn);
++ eeh_add_device_tree_early(dn);
+ dev = rpaphp_pci_config_slot(bus);
+ if (!dev) {
+ err("%s: can't find any devices.\n", __FUNCTION__);
+--- gregkh-2.6.orig/drivers/pci/hotplug/rpadlpar_core.c
++++ gregkh-2.6/drivers/pci/hotplug/rpadlpar_core.c
+@@ -154,7 +154,8 @@ static struct pci_dev *dlpar_pci_add_bus
+ struct pci_controller *phb = pdn->phb;
+ struct pci_dev *dev = NULL;
+
+- rpaphp_eeh_init_nodes(dn);
++ eeh_add_device_tree_early(dn);
++
+ /* Add EADS device to PHB bus, adding new entry to bus->devices */
+ dev = of_create_pci_dev(dn, phb->bus, pdn->devfn);
+ if (!dev) {
diff --git a/pci/pci-schedule-removal-of-pci_module_init.patch b/pci/pci-schedule-removal-of-pci_module_init.patch
new file mode 100644
index 0000000000000..a9a410ecff7aa
--- /dev/null
+++ b/pci/pci-schedule-removal-of-pci_module_init.patch
@@ -0,0 +1,67 @@
+From ricknu-0@student.ltu.se Fri Dec 2 17:29:36 2005
+Message-ID: <4390F614.7060202@student.ltu.se>
+Date: Sat, 03 Dec 2005 02:34:12 +0100
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+To: Andrew Morton <akpm@osdl.org>
+CC: Greg KH <greg@kroah.com>
+Subject: [PATCH] pci: Schedule removal of pci_module_init
+
+From: Richard Knutsson <ricknu-0@student.ltu.se>
+
+Scheduled the removal of pci_module_init and __deprecated the function,
+as suggested by Andrew.
+
+Signed-off-by: Richard Knutsson <ricknu-0@student.ltu.se>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+---
+ Documentation/feature-removal-schedule.txt | 7 +++++++
+ include/linux/pci.h | 11 +++++------
+ 2 files changed, 12 insertions(+), 6 deletions(-)
+
+--- gregkh-2.6.orig/Documentation/feature-removal-schedule.txt
++++ gregkh-2.6/Documentation/feature-removal-schedule.txt
+@@ -150,3 +150,10 @@ Why: The 8250 serial driver now has the
+ brother on Alchemy SOCs. The loss of features is not considered an
+ issue.
+ Who: Ralf Baechle <ralf@linux-mips.org>
++
++---------------------------
++
++What: pci_module_init(driver)
++When: April 2006
++Why: Is replaced by pci_register_driver(pci_driver).
++Who: Richard Knutsson <ricknu-0@student.ltu.se>
+--- gregkh-2.6.orig/include/linux/pci.h
++++ gregkh-2.6/include/linux/pci.h
+@@ -345,12 +345,6 @@ struct pci_driver {
+ .vendor = PCI_ANY_ID, .device = PCI_ANY_ID, \
+ .subvendor = PCI_ANY_ID, .subdevice = PCI_ANY_ID
+
+-/*
+- * pci_module_init is obsolete, this stays here till we fix up all usages of it
+- * in the tree.
+- */
+-#define pci_module_init pci_register_driver
+-
+ /* these external functions are only available when PCI support is enabled */
+ #ifdef CONFIG_PCI
+
+@@ -502,6 +496,10 @@ void pci_enable_bridges(struct pci_bus *
+
+ /* Proper probing supporting hot-pluggable devices */
+ int __pci_register_driver(struct pci_driver *, struct module *);
++static inline int __deprecated pci_module_init(struct pci_driver *driver)
++{
++ return __pci_register_driver(driver, THIS_MODULE);
++}
+ static inline int pci_register_driver(struct pci_driver *driver)
+ {
+ return __pci_register_driver(driver, THIS_MODULE);
+@@ -621,6 +619,7 @@ static inline void pci_disable_device(st
+ static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask) { return -EIO; }
+ static inline int pci_assign_resource(struct pci_dev *dev, int i) { return -EBUSY;}
+ static inline int __pci_register_driver(struct pci_driver *drv, struct module *owner) { return 0;}
++static inline int __deprecated pci_module_init(struct pci_driver *driver) { return 0; }
+ static inline int pci_register_driver(struct pci_driver *drv) { return 0;}
+ static inline void pci_unregister_driver(struct pci_driver *drv) { }
+ static inline int pci_find_capability (struct pci_dev *dev, int cap) {return 0; }