[<prev] [next>] [day] [month] [year] [list]
Message-id: <20080509012210.GA7305@minyard.local>
Date: Thu, 08 May 2008 20:22:10 -0500
From: Corey Minyard <minyard@....org>
To: Andrew Morton <akpm@...l.org>
Cc: Linux Kernel <linux-kernel@...r.kernel.org>,
Nate Case <ncase@...-inc.com>,
OpenIPMI Developers <openipmi-developer@...ts.sourceforge.net>
Subject: [PATCH] IPMI: Support I/O resources in OF driver
From: Nate Case <ncase@...-inc.com>
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 <ncase@...-inc.com>
Signed-off-by: Corey Minyard <cminyard@...sta.com>
---
drivers/char/ipmi/ipmi_si_intf.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
Seems reasonable to me, though I have no way to test this. -corey
Index: linux-2.6.25/drivers/char/ipmi/ipmi_si_intf.c
===================================================================
--- linux-2.6.25.orig/drivers/char/ipmi/ipmi_si_intf.c
+++ linux-2.6.25/drivers/char/ipmi/ipmi_si_intf.c
@@ -2353,10 +2353,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;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists