]> err.no Git - linux-2.6/blobdiff - drivers/char/ipmi/ipmi_si_intf.c
Merge branch 'linus' into x86/gart
[linux-2.6] / drivers / char / ipmi / ipmi_si_intf.c
index 97b6225c070b20cc1513d8e44dd5afc94abfef49..192688344ed2d628bc789fa85d9ba4cafcadf867 100644 (file)
@@ -2352,10 +2352,16 @@ static int __devinit ipmi_of_probe(struct of_device *dev,
 
        info->si_type           = (enum si_type) match->data;
        info->addr_source       = "device-tree";
-       info->io_setup          = mem_setup;
        info->irq_setup         = std_irq_setup;
 
-       info->io.addr_type      = IPMI_MEM_ADDR_SPACE;
+       if (resource.flags & IORESOURCE_IO) {
+               info->io_setup          = port_setup;
+               info->io.addr_type      = IPMI_IO_ADDR_SPACE;
+       } else {
+               info->io_setup          = mem_setup;
+               info->io.addr_type      = IPMI_MEM_ADDR_SPACE;
+       }
+
        info->io.addr_data      = resource.start;
 
        info->io.regsize        = regsize ? *regsize : DEFAULT_REGSIZE;
@@ -2892,7 +2898,7 @@ static int try_smi_init(struct smi_info *new_smi)
        }
 
        rv = ipmi_smi_add_proc_entry(new_smi->intf, "type",
-                                    type_file_read_proc, NULL,
+                                    type_file_read_proc,
                                     new_smi, THIS_MODULE);
        if (rv) {
                printk(KERN_ERR
@@ -2902,7 +2908,7 @@ static int try_smi_init(struct smi_info *new_smi)
        }
 
        rv = ipmi_smi_add_proc_entry(new_smi->intf, "si_stats",
-                                    stat_file_read_proc, NULL,
+                                    stat_file_read_proc,
                                     new_smi, THIS_MODULE);
        if (rv) {
                printk(KERN_ERR
@@ -2912,7 +2918,7 @@ static int try_smi_init(struct smi_info *new_smi)
        }
 
        rv = ipmi_smi_add_proc_entry(new_smi->intf, "params",
-                                    param_read_proc, NULL,
+                                    param_read_proc,
                                     new_smi, THIS_MODULE);
        if (rv) {
                printk(KERN_ERR