[vbox-dev] vbox-dev Digest, Vol 81, Issue 26
李明
451105605 at qq.com
Sun Jul 28 23:11:55 PDT 2013
yes , my host is windows ,guest is linux 。 i want to transfer data between guest and host , and i use code blow 。the same if guest is windows and in windows driver is work ok , but ,why can't use it in linux driver the same way 。
int vpaudio_call_hgcm(struct minivosc_device *mydev,struct hgcm_call_struct *param)
{
int rc = VINF_SUCCESS;
RM_HGCM_CALL_REQUEST_SINGLE sinreq ={0};
RM_HGCM_CALL_REQUEST_DUAL dualreq ={0};
if (param->function_code == HGCM_FN_DUAL_BUFFER_REQUEST)
{
dualreq.InParam.type = VMMDevHGCMParmType_LinAddr_In;
dualreq.OutParam.type = VMMDevHGCMParmType_LinAddr_Out;
dualreq.callinfo.u32Function = HGCM_FN_DUAL_BUFFER_REQUEST;
dualreq.callinfo.u32ClientID = mydev->ulClientID;
dualreq.callinfo.cParms = 2;
dualreq.InParam.u.Pointer.u.linearAddr = (RTGCPTR32)param->in_data;
dualreq.InParam.u.Pointer.size = param->in_size;
dualreq.OutParam.u.Pointer.u.linearAddr = (RTGCPTR32)param->out_data;
dualreq.OutParam.u.Pointer.size = param->out_size;
return vPVbglHGCMCall (mydev->handle,&dualreq.callinfo,sizeof(dualreq));
}
switch (param->function_code)
{
case HGCM_FN_OUT_REQUEST:
sinreq.Param.type = VMMDevHGCMParmType_LinAddr_Out;
sinreq.Param.u.Pointer.u.linearAddr = (RTGCPTR32)param->out_data;
sinreq.Param.u.Pointer.size = param->out_size;
break;
case HGCM_FN_IN_REQUEST:
sinreq.Param.type = VMMDevHGCMParmType_LinAddr_In;
sinreq.Param.u.Pointer.u.linearAddr = (RTGCPTR32)param->in_data;
sinreq.Param.u.Pointer.size = param->in_size;
break;
default:
sinreq.Param.type = VMMDevHGCMParmType_LinAddr;
sinreq.Param.u.Pointer.u.linearAddr = (RTGCPTR32)param->in_data;
sinreq.Param.u.Pointer.size = param->in_size;
}
sinreq.callinfo.u32Function = param->function_code;
sinreq.callinfo.u32ClientID = mydev->ulClientID;
sinreq.callinfo.cParms = 1;
rc = vPVbglHGCMCall (mydev->handle,&sinreq.callinfo,sizeof(sinreq));
if (RT_SUCCESS (rc)){
rc = sinreq.callinfo.result;
}
return rc;
}
------------------ Original ------------------
From: "vbox-dev-request";
Date: 2013年7月28日(星期天) 凌晨3:00
To: "vbox-dev";
Subject: vbox-dev Digest, Vol 81, Issue 26
Send vbox-dev mailing list submissions to
vbox-dev at virtualbox.org
To subscribe or unsubscribe via the World Wide Web, visit
https://www.virtualbox.org/mailman/listinfo/vbox-dev
or, via email, send a message with subject or body 'help' to
vbox-dev-request at virtualbox.org
You can reach the person managing the list at
vbox-dev-owner at virtualbox.org
When replying, please edit your Subject line so it is more specific
than "Re: Contents of vbox-dev digest..."
Today's Topics:
1. about hgcm in linux ( ?? )
----------------------------------------------------------------------
Message: 1
Date: Sat, 27 Jul 2013 14:11:57 +0800
From: " ?? " <451105605 at qq.com>
Subject: [vbox-dev] about hgcm in linux
To: " vbox-dev " <vbox-dev at virtualbox.org>
Message-ID: <tencent_742AB1EF5BD288B30A1344E8 at qq.com>
Content-Type: text/plain; charset="gb18030"
Hi, i have a problem ? in windows ?i can send data to host in guest by use hgcm in drivers ? but ,in linux ,i can't use it in the same way ? why ?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.virtualbox.org/pipermail/vbox-dev/attachments/20130727/ffa5d42e/attachment-0001.html
------------------------------
_______________________________________________
vbox-dev mailing list
vbox-dev at virtualbox.org
https://www.virtualbox.org/mailman/listinfo/vbox-dev
End of vbox-dev Digest, Vol 81, Issue 26
****************************************
.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.virtualbox.org/pipermail/vbox-dev/attachments/20130729/f89c1e18/attachment.html
More information about the vbox-dev
mailing list