WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [linux-2.6.18-xen] x86: restrict keyboard io ports reser

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [linux-2.6.18-xen] x86: restrict keyboard io ports reservation to make ipmi driver work
From: "Xen patchbot-linux-2.6.18-xen" <patchbot-linux-2.6.18-xen@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 25 Jul 2008 05:50:09 -0700
Delivery-date: Fri, 25 Jul 2008 05:49:57 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1216975349 -3600
# Node ID 6d9e4b02bba47b9bf4d62ac46a0d4f7827542b80
# Parent  57ccd252e855b3aa941efcd7c797bb38dccf50bf
x86: restrict keyboard io ports reservation to make ipmi driver work

Straightforward port of
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9096bd7a66efbe406910365c5206a32eed3875af

Quoting its commit message:

    x86: restrict keyboard io ports reservation to make ipmi driver
    work

    On some of our (single board computer) boards (x86) we are using
    an IPMI controller that uses I/O ports 0x62 and 0x66 for a KCS
    (keyboard controller style) IPMI system interface.

    Trying to load the openipmi driver fails, because the ports
    (0x62/0x66) are reserved for keyboard. keyboard reserves the full
    range 0x60-0x6F while it doesn't need to.

    Reserve only ports 0x60 and 0x64 for the legacy PS/2 i8042 keyboad
    controller instead of 0x60-0x6F to allow the openipmi driver to
    work.

    Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
    Acked-by: H. Peter Anvin <hpa@xxxxxxxxx>
    Signed-off-by: Ingo Molnar <mingo@xxxxxxx>

Signed-off-by: Markus Armbruster <armbru@xxxxxxxxxx>
---
 arch/i386/kernel/setup-xen.c   |    7 ++++++-
 arch/i386/kernel/setup.c       |    7 ++++++-
 arch/x86_64/kernel/setup-xen.c |    4 +++-
 arch/x86_64/kernel/setup.c     |    4 +++-
 4 files changed, 18 insertions(+), 4 deletions(-)

diff -r 57ccd252e855 -r 6d9e4b02bba4 arch/i386/kernel/setup-xen.c
--- a/arch/i386/kernel/setup-xen.c      Thu Jul 24 14:16:04 2008 +0100
+++ b/arch/i386/kernel/setup-xen.c      Fri Jul 25 09:42:29 2008 +0100
@@ -283,7 +283,12 @@ static struct resource standard_io_resou
 }, {
        .name   = "keyboard",
        .start  = 0x0060,
-       .end    = 0x006f,
+       .end    = 0x0060,
+       .flags  = IORESOURCE_BUSY | IORESOURCE_IO
+}, {
+       .name   = "keyboard",
+       .start  = 0x0064,
+       .end    = 0x0064,
        .flags  = IORESOURCE_BUSY | IORESOURCE_IO
 }, {
        .name   = "dma page reg",
diff -r 57ccd252e855 -r 6d9e4b02bba4 arch/i386/kernel/setup.c
--- a/arch/i386/kernel/setup.c  Thu Jul 24 14:16:04 2008 +0100
+++ b/arch/i386/kernel/setup.c  Fri Jul 25 09:42:29 2008 +0100
@@ -261,7 +261,12 @@ static struct resource standard_io_resou
 }, {
        .name   = "keyboard",
        .start  = 0x0060,
-       .end    = 0x006f,
+       .end    = 0x0060,
+       .flags  = IORESOURCE_BUSY | IORESOURCE_IO
+}, {
+       .name   = "keyboard",
+       .start  = 0x0064,
+       .end    = 0x0064,
        .flags  = IORESOURCE_BUSY | IORESOURCE_IO
 }, {
        .name   = "dma page reg",
diff -r 57ccd252e855 -r 6d9e4b02bba4 arch/x86_64/kernel/setup-xen.c
--- a/arch/x86_64/kernel/setup-xen.c    Thu Jul 24 14:16:04 2008 +0100
+++ b/arch/x86_64/kernel/setup-xen.c    Fri Jul 25 09:42:29 2008 +0100
@@ -169,7 +169,9 @@ struct resource standard_io_resources[] 
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
        { .name = "timer1", .start = 0x50, .end = 0x53,
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
-       { .name = "keyboard", .start = 0x60, .end = 0x6f,
+       { .name = "keyboard", .start = 0x60, .end = 0x60,
+               .flags = IORESOURCE_BUSY | IORESOURCE_IO },
+       { .name = "keyboard", .start = 0x64, .end = 0x64,
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
        { .name = "dma page reg", .start = 0x80, .end = 0x8f,
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
diff -r 57ccd252e855 -r 6d9e4b02bba4 arch/x86_64/kernel/setup.c
--- a/arch/x86_64/kernel/setup.c        Thu Jul 24 14:16:04 2008 +0100
+++ b/arch/x86_64/kernel/setup.c        Fri Jul 25 09:42:29 2008 +0100
@@ -122,7 +122,9 @@ struct resource standard_io_resources[] 
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
        { .name = "timer1", .start = 0x50, .end = 0x53,
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
-       { .name = "keyboard", .start = 0x60, .end = 0x6f,
+       { .name = "keyboard", .start = 0x60, .end = 0x60,
+               .flags = IORESOURCE_BUSY | IORESOURCE_IO },
+       { .name = "keyboard", .start = 0x64, .end = 0x64,
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },
        { .name = "dma page reg", .start = 0x80, .end = 0x8f,
                .flags = IORESOURCE_BUSY | IORESOURCE_IO },

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [linux-2.6.18-xen] x86: restrict keyboard io ports reservation to make ipmi driver work, Xen patchbot-linux-2.6.18-xen <=