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-devel

[Xen-devel] [PATCH 2 of 2] tools: ocaml: xl: propagate simplfied libxl i

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH 2 of 2] tools: ocaml: xl: propagate simplfied libxl interface to PCI BDFs to bindings
From: Ian Campbell <ian.campbell@xxxxxxxxxx>
Date: Mon, 21 Mar 2011 16:13:57 +0000
Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
Delivery-date: Mon, 21 Mar 2011 09:17:10 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <patchbomb.1300724035@xxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1300724005 0
# Node ID d6423527e5b8785a3b8425ea8d360e3e465115e7
# Parent  3c0d44a0d9a3f8adcc2e43a6610fc0fe5b012b3a
tools: ocaml: xl: propagate simplfied libxl interface to PCI BDFs to bindings.

22166:251694a87f1d changed the libxl interface to remove the need for
users to understand BDF encoding but did not propagate the change to
the ocaml bindings. Do that now.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

diff -r 3c0d44a0d9a3 -r d6423527e5b8 tools/ocaml/libs/xl/xl.ml
--- a/tools/ocaml/libs/xl/xl.ml Mon Mar 21 15:39:10 2011 +0000
+++ b/tools/ocaml/libs/xl/xl.ml Mon Mar 21 16:13:25 2011 +0000
@@ -145,7 +145,9 @@ type vfb_info =
 
 type pci_info =
 {
-       v : int; (* domain * bus * dev * func multiplexed *)
+       func : int;
+       dev : int;
+       bus : int;
        domain : int;
        vdevfn : int;
        msitranslate : bool;
diff -r 3c0d44a0d9a3 -r d6423527e5b8 tools/ocaml/libs/xl/xl.mli
--- a/tools/ocaml/libs/xl/xl.mli        Mon Mar 21 15:39:10 2011 +0000
+++ b/tools/ocaml/libs/xl/xl.mli        Mon Mar 21 16:13:25 2011 +0000
@@ -145,7 +145,9 @@ type vfb_info =
 
 type pci_info =
 {
-       v : int; (* domain * bus * dev * func multiplexed *)
+       func : int;
+       dev : int;
+       bus : int;
        domain : int;
        vdevfn : int;
        msitranslate : bool;
diff -r 3c0d44a0d9a3 -r d6423527e5b8 tools/ocaml/libs/xl/xl_stubs.c
--- a/tools/ocaml/libs/xl/xl_stubs.c    Mon Mar 21 15:39:10 2011 +0000
+++ b/tools/ocaml/libs/xl/xl_stubs.c    Mon Mar 21 16:13:25 2011 +0000
@@ -272,30 +272,16 @@ static int device_vfb_val(caml_gc *gc, l
 
 static int device_pci_val(caml_gc *gc, libxl_device_pci *c_val, value v)
 {
-       union {
-               unsigned int value;
-               struct {
-                       unsigned int reserved1:2;
-                       unsigned int reg:6;
-                       unsigned int func:3;
-                       unsigned int dev:5;
-                       unsigned int bus:8;
-                       unsigned int reserved2:7;
-                       unsigned int enable:1;
-               }fields;
-       }u;
        CAMLparam1(v);
 
-       /* FIXME: propagate API change to ocaml */
-       u.value = Int_val(Field(v, 0));
-       c_val->func = u.fields.func;
-       c_val->dev = u.fields.dev;
-       c_val->bus = u.fields.bus;
+       c_val->func = Int_val(Field(v, 0));
+       c_val->dev = Int_val(Field(v, 1));
+       c_val->bus = Int_val(Field(v, 2));
 
-       c_val->domain = Int_val(Field(v, 1));
-       c_val->vdevfn = Int_val(Field(v, 2));
-       c_val->msitranslate = Bool_val(Field(v, 3));
-       c_val->power_mgmt = Bool_val(Field(v, 4));
+       c_val->domain = Int_val(Field(v, 3));
+       c_val->vdevfn = Int_val(Field(v, 4));
+       c_val->msitranslate = Bool_val(Field(v, 5));
+       c_val->power_mgmt = Bool_val(Field(v, 6));
 
        CAMLreturn(0);
 }

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

<Prev in Thread] Current Thread [Next in Thread>