The current OF probing assumes that the resource is IORESOURCE_MEM.
This checks for the IORESOURCE_IO flag and behaves appropriately.
An I/O resource can exist with an ipmi device node on a legacy ISA bus.

Signed-off-by: Nate Case <[EMAIL PROTECTED]>
---
 drivers/char/ipmi/ipmi_si_intf.c |   12 +++++++++---
 1 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index 4f560d0..3205359 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -2352,10 +2352,16 @@ static int __devinit ipmi_of_probe(struc
 
        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;
-- 
1.5.4.4




-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft 
Defy all challenges. Microsoft(R) Visual Studio 2008. 
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to