summaryrefslogtreecommitdiffstats
path: root/drivers/pci
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pci')
-rw-r--r--drivers/pci/oldproc.c5
-rw-r--r--drivers/pci/pci.c18
2 files changed, 18 insertions, 5 deletions
diff --git a/drivers/pci/oldproc.c b/drivers/pci/oldproc.c
index 9352a498b..a175eaa07 100644
--- a/drivers/pci/oldproc.c
+++ b/drivers/pci/oldproc.c
@@ -309,6 +309,7 @@ struct pci_dev_info dev_info[] = {
DEVICE( NEOMAGIC, NEOMAGIC_MAGICGRAPH_128V, "MagicGraph 128V"),
DEVICE( NEOMAGIC, NEOMAGIC_MAGICGRAPH_128ZV, "MagicGraph 128ZV"),
DEVICE( NEOMAGIC, NEOMAGIC_MAGICGRAPH_NM2160, "MagicGraph NM2160"),
+ DEVICE( NEOMAGIC, NEOMAGIC_MAGICGRAPH_128ZVPLUS, "MagicGraph 128ZV+"),
DEVICE( ASP, ASP_ABP940, "ABP940"),
DEVICE( ASP, ASP_ABP940U, "ABP940U"),
DEVICE( ASP, ASP_ABP940UW, "ABP940UW"),
@@ -466,6 +467,7 @@ struct pci_dev_info dev_info[] = {
DEVICE( SATSAGEM, SATSAGEM_PCR2101,"PCR2101 DVB receiver"),
DEVICE( SATSAGEM, SATSAGEM_TELSATTURBO,"Telsat Turbo DVB"),
DEVICE( HUGHES, HUGHES_DIRECPC, "DirecPC"),
+ DEVICE( ENSONIQ, ENSONIQ_ES1371, "ES1371"),
DEVICE( ENSONIQ, ENSONIQ_AUDIOPCI,"AudioPCI"),
DEVICE( ALTEON, ALTEON_ACENIC, "AceNIC"),
DEVICE( PICTUREL, PICTUREL_PCIVST,"PCIVST"),
@@ -543,6 +545,7 @@ struct pci_dev_info dev_info[] = {
DEVICE( KTI, KTI_ET32P2, "ET32P2"),
DEVICE( ADAPTEC, ADAPTEC_7810, "AIC-7810 RAID"),
DEVICE( ADAPTEC, ADAPTEC_7821, "AIC-7860"),
+ DEVICE( ADAPTEC, ADAPTEC_38602, "AIC-7860"),
DEVICE( ADAPTEC, ADAPTEC_7850, "AIC-7850"),
DEVICE( ADAPTEC, ADAPTEC_7855, "AIC-7855"),
DEVICE( ADAPTEC, ADAPTEC_5800, "AIC-5800"),
@@ -1030,7 +1033,7 @@ static struct proc_dir_entry proc_old_pci = {
0, &proc_array_inode_operations
};
-__initfunc(void proc_old_pci_init(void))
+void __init proc_old_pci_init(void)
{
proc_register(&proc_root, &proc_old_pci);
}
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 9f5ecd98d..3d92293bd 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -138,7 +138,7 @@ pci_set_master(struct pci_dev *dev)
}
}
-__initfunc(void pci_read_bases(struct pci_dev *dev, unsigned int howmany))
+void __init pci_read_bases(struct pci_dev *dev, unsigned int howmany)
{
unsigned int reg;
u32 l;
@@ -166,7 +166,7 @@ __initfunc(void pci_read_bases(struct pci_dev *dev, unsigned int howmany))
}
-__initfunc(unsigned int pci_scan_bus(struct pci_bus *bus))
+unsigned int __init pci_scan_bus(struct pci_bus *bus)
{
unsigned int devfn, l, max, class;
unsigned char cmd, irq, tmp, hdr_type, is_multi = 0;
@@ -192,6 +192,11 @@ __initfunc(unsigned int pci_scan_bus(struct pci_bus *bus))
continue;
dev = kmalloc(sizeof(*dev), GFP_ATOMIC);
+ if(dev==NULL)
+ {
+ printk(KERN_ERR "pci: out of memory.\n");
+ continue;
+ }
memset(dev, 0, sizeof(*dev));
dev->bus = bus;
dev->devfn = devfn;
@@ -300,6 +305,11 @@ __initfunc(unsigned int pci_scan_bus(struct pci_bus *bus))
* Insert it into the tree of buses.
*/
child = kmalloc(sizeof(*child), GFP_ATOMIC);
+ if(child==NULL)
+ {
+ printk(KERN_ERR "pci: out of memory for bridge.\n");
+ continue;
+ }
memset(child, 0, sizeof(*child));
child->next = bus->children;
bus->children = child;
@@ -389,7 +399,7 @@ struct pci_bus * __init pci_scan_peer_bridge(int bus)
return b;
}
-__initfunc(void pci_init(void))
+void __init pci_init(void)
{
pcibios_init();
@@ -415,7 +425,7 @@ __initfunc(void pci_init(void))
#endif
}
-__initfunc(void pci_setup (char *str, int *ints))
+void __init pci_setup (char *str, int *ints)
{
while (str) {
char *k = strchr(str, ',');