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] Dom0 ACPI: handle I/O access width th

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [linux-2.6.18-xen] Dom0 ACPI: handle I/O access width that are not a multiple of 8 bits
From: "Xen patchbot-linux-2.6.18-xen" <patchbot-linux-2.6.18-xen@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 18 Sep 2008 10:30:08 -0700
Delivery-date: Thu, 18 Sep 2008 10:29:52 -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 1221731055 -3600
# Node ID 5f3c40a4c21491b311b9837c0990ff833d4bf62b
# Parent  3161879fdf229fe9893e5dea7089aa0a926e86d0
Dom0 ACPI: handle I/O access width that are not a multiple of 8 bits

Back ported following patch from upstream to support 4-bit access
width which is required by T-state control.
Below are original commit comments from upstream.

commit 49fbabf56dc715bbb51e59742e82ba762790aac0
Author: Zhao Yakui <yakui.zhao@xxxxxxxxx>
Date:   Thu Nov 15 17:01:06 2007 +0800

    ACPI: Handle I/O access width requestst that are not a multiple of
    8 bits.

    We've run into BIOS that hand us 4-bit access width requests
    for T-state control when the code expected only multipls of
    8-bits.
    Round up.

    Signed-off-by: Zhao Yakui <yakui.zhao@xxxxxxxxx>
    Signed-off-by: Li Shaohua <shaohua.li@xxxxxxxxx>
    Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

Signed-off-by: Wei Gang <gang.wei@xxxxxxxxx>
---
 drivers/acpi/osl.c |   25 +++++++++----------------
 1 files changed, 9 insertions(+), 16 deletions(-)

diff -r 3161879fdf22 -r 5f3c40a4c214 drivers/acpi/osl.c
--- a/drivers/acpi/osl.c        Tue Sep 16 21:26:15 2008 +0900
+++ b/drivers/acpi/osl.c        Thu Sep 18 10:44:15 2008 +0100
@@ -337,17 +337,14 @@ acpi_status acpi_os_read_port(acpi_io_ad
        if (!value)
                value = &dummy;
 
-       switch (width) {
-       case 8:
+       *value = 0;
+       if (width <= 8) {
                *(u8 *) value = inb(port);
-               break;
-       case 16:
+       } else if (width <= 16) {
                *(u16 *) value = inw(port);
-               break;
-       case 32:
+       } else if (width <= 32) {
                *(u32 *) value = inl(port);
-               break;
-       default:
+       } else {
                BUG();
        }
 
@@ -358,17 +355,13 @@ EXPORT_SYMBOL(acpi_os_read_port);
 
 acpi_status acpi_os_write_port(acpi_io_address port, u32 value, u32 width)
 {
-       switch (width) {
-       case 8:
+       if (width <= 8) {
                outb(value, port);
-               break;
-       case 16:
+       } else if (width <= 16) {
                outw(value, port);
-               break;
-       case 32:
+       } else if (width <= 32) {
                outl(value, port);
-               break;
-       default:
+       } else {
                BUG();
        }
 

_______________________________________________
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] Dom0 ACPI: handle I/O access width that are not a multiple of 8 bits, Xen patchbot-linux-2.6.18-xen <=