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: Thu, 24 Mar 2011 11:49:22 +0000
Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
Delivery-date: Thu, 24 Mar 2011 04:53:58 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <patchbomb.1300967360@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 1300967090 0
# Node ID b92430e690860cfac8f243ee9cff47351ad6fbbb
# Parent  3462e0f1f0c1efe035f4d1d24d3659431a6c62c0
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 3462e0f1f0c1 -r b92430e69086 tools/ocaml/libs/xl/xl.ml
--- a/tools/ocaml/libs/xl/xl.ml Thu Mar 24 11:44:50 2011 +0000
+++ b/tools/ocaml/libs/xl/xl.ml Thu Mar 24 11:44:50 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 3462e0f1f0c1 -r b92430e69086 tools/ocaml/libs/xl/xl.mli
--- a/tools/ocaml/libs/xl/xl.mli        Thu Mar 24 11:44:50 2011 +0000
+++ b/tools/ocaml/libs/xl/xl.mli        Thu Mar 24 11:44:50 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 3462e0f1f0c1 -r b92430e69086 tools/ocaml/libs/xl/xl_stubs.c
--- a/tools/ocaml/libs/xl/xl_stubs.c    Thu Mar 24 11:44:50 2011 +0000
+++ b/tools/ocaml/libs/xl/xl_stubs.c    Thu Mar 24 11:44:50 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>