summaryrefslogtreecommitdiffstats
path: root/drivers/input/serio/i8042-sparcio.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.osdl.org>2006-12-31 14:24:58 -0800
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-31 14:24:58 -0800
commit9d572ecbd81b9ff6e6a9bc0d2598212a59eb738a (patch)
treeb59b6610928accc3289f7d142319bb19342eee98 /drivers/input/serio/i8042-sparcio.h
parentb836267aa79c1c5e23e00d9cec047b6870ae0db1 (diff)
parentf4060c0dbbe9ad7b8c0aeefa142398c8d3468bac (diff)
downloadop-kernel-dev-9d572ecbd81b9ff6e6a9bc0d2598212a59eb738a.zip
op-kernel-dev-9d572ecbd81b9ff6e6a9bc0d2598212a59eb738a.tar.gz
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Handle ISA devices with no 'regs' property. [SPARC64]: Update defconfig. [SPARC64]: Fix of_iounmap() region release. [SPARC64]: Fix "mem=xxx" handling.
Diffstat (limited to 'drivers/input/serio/i8042-sparcio.h')
-rw-r--r--drivers/input/serio/i8042-sparcio.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/input/serio/i8042-sparcio.h b/drivers/input/serio/i8042-sparcio.h
index 54adba2..d9ca558 100644
--- a/drivers/input/serio/i8042-sparcio.h
+++ b/drivers/input/serio/i8042-sparcio.h
@@ -16,6 +16,7 @@ static int i8042_aux_irq = -1;
#define I8042_MUX_PHYS_DESC "sparcps2/serio%d"
static void __iomem *kbd_iobase;
+static struct resource *kbd_res;
#define I8042_COMMAND_REG (kbd_iobase + 0x64UL)
#define I8042_DATA_REG (kbd_iobase + 0x60UL)
@@ -60,6 +61,7 @@ static int __devinit sparc_i8042_probe(struct of_device *op, const struct of_dev
i8042_kbd_irq = irq;
kbd_iobase = of_ioremap(&kbd->resource[0],
0, 8, "kbd");
+ kbd_res = &kbd->resource[0];
} else if (!strcmp(dp->name, OBP_PS2MS_NAME1) ||
!strcmp(dp->name, OBP_PS2MS_NAME2)) {
struct of_device *ms = of_find_device_by_node(dp);
@@ -77,7 +79,7 @@ static int __devinit sparc_i8042_probe(struct of_device *op, const struct of_dev
static int __devexit sparc_i8042_remove(struct of_device *op)
{
- of_iounmap(kbd_iobase, 8);
+ of_iounmap(kbd_res, kbd_iobase, 8);
return 0;
}
@@ -119,7 +121,7 @@ static int __init i8042_platform_init(void)
if (i8042_kbd_irq == -1 ||
i8042_aux_irq == -1) {
if (kbd_iobase) {
- of_iounmap(kbd_iobase, 8);
+ of_iounmap(kbd_res, kbd_iobase, 8);
kbd_iobase = (void __iomem *) NULL;
}
return -ENODEV;
OpenPOWER on IntegriCloud