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] [xen-unstable] [IA64] Implemented PAL_FIXED_ADDR

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] Implemented PAL_FIXED_ADDR
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 04 Jun 2007 03:14:58 -0700
Delivery-date: Mon, 04 Jun 2007 03:34:19 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/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 Alex Williamson <alex.williamson@xxxxxx>
# Date 1178651572 21600
# Node ID eabda101b0c54ac51d4a7d335e45144425ca2fda
# Parent  c4755f85662753f41afac3b05606d7edb4f74900
[IA64] Implemented PAL_FIXED_ADDR

The Intel GFW still calls this, so we might as well implemented it.
Based on patch from Anthony and Wing, adds additional cleanups and
toning down of some of the error messages.

Signed-off-by: Alex Williamson <alex.williamson@xxxxxx>
---
 xen/arch/ia64/xen/fw_emul.c |   32 +++++++++++++++++---------------
 1 files changed, 17 insertions(+), 15 deletions(-)

diff -r c4755f856627 -r eabda101b0c5 xen/arch/ia64/xen/fw_emul.c
--- a/xen/arch/ia64/xen/fw_emul.c       Tue May 08 10:51:05 2007 -0600
+++ b/xen/arch/ia64/xen/fw_emul.c       Tue May 08 13:12:52 2007 -0600
@@ -512,12 +512,13 @@ xen_pal_emulator(unsigned long index, u6
                                (struct pal_freq_ratio *) &r11);
                break;
            case PAL_PTCE_INFO:
-               {
-                       // return hard-coded xen-specific values because ptc.e
-                       // is emulated on xen to always flush everything
-                       // these values result in only one ptc.e instruction
-                       status = 0; r9 = 0; r10 = (1L << 32) | 1L; r11 = 0;
-               }
+               /*
+                * return hard-coded xen-specific values because ptc.e
+                * is emulated on xen to always flush everything
+                * these values result in only one ptc.e instruction
+                */
+               status = PAL_STATUS_SUCCESS;
+               r10 = (1L << 32) | 1L;
                break;
            case PAL_VERSION:
                status = ia64_pal_version(
@@ -620,14 +621,11 @@ xen_pal_emulator(unsigned long index, u6
                        /* Only support PAGE_SIZE tc.  */
                        r10 = PAGE_SIZE;
                        status = PAL_STATUS_SUCCESS;
-               }
-               else
+               } else
                        status = PAL_STATUS_EINVAL;
                break;
            case PAL_RSE_INFO:
-               status = ia64_pal_rse_info(
-                               &r9,
-                               (pal_hints_u_t *) &r10);
+               status = ia64_pal_rse_info(&r9, (pal_hints_u_t *)&r10);
                break;
            case PAL_REGISTER_INFO:
                status = ia64_pal_register_info(in1, &r9, &r10);
@@ -699,13 +697,14 @@ xen_pal_emulator(unsigned long index, u6
                {
                        pal_cache_config_info_t ci;
                        status = ia64_pal_cache_config_info(in1,in2,&ci);
-                       if (status != 0) break;
+                       if (status != 0)
+                               break;
                        r9 = ci.pcci_info_1.pcci1_data;
                        r10 = ci.pcci_info_2.pcci2_data;
                }
                break;
            case PAL_VM_TR_READ:        /* FIXME: vcpu_get_tr?? */
-               printk("PAL_VM_TR_READ NOT IMPLEMENTED, IGNORED!\n");
+               printk("%s: PAL_VM_TR_READ unimplmented, ignored\n", __func__);
                break;
            case PAL_HALT_INFO:
                {
@@ -744,12 +743,15 @@ xen_pal_emulator(unsigned long index, u6
                if (VMX_DOMAIN(current))
                        status = PAL_STATUS_SUCCESS;
                break;
+           case PAL_FIXED_ADDR:
+               status = PAL_STATUS_SUCCESS;
+               r9 = current->vcpu_id;
+               break;
            case PAL_LOGICAL_TO_PHYSICAL:
                /* Optional, no need to complain about being unimplemented */
                break;
            default:
-               printk("xen_pal_emulator: UNIMPLEMENTED PAL CALL %lu!!!!\n",
-                               index);
+               printk("%s: Unimplemented PAL Call %lu\n", __func__, index);
                break;
        }
        return ((struct ia64_pal_retval) {status, r9, r10, r11});

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] Implemented PAL_FIXED_ADDR, Xen patchbot-unstable <=