📄 vm_8h.html
字号:
<tr><td></td><td valign=top><em>prim</em> </td><td>A pointer to the primative to send. The memory must have been dynamically allocated. </td></tr> </table></dl> </td> </tr></table><a class="anchor" name="a10" doxytag="vm.h::VmSendL2capPrim" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void VmSendL2capPrim </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void * </td> <td class="mdname1" valign="top" nowrap> <em>prim</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Sends an L2CAP Bluestack primative. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>prim</em> </td><td>A pointer to the primative to send. The memory must have been dynamically allocated. </td></tr> </table></dl> </td> </tr></table><a class="anchor" name="a11" doxytag="vm.h::VmSendDmPrim" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void VmSendDmPrim </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void * </td> <td class="mdname1" valign="top" nowrap> <em>prim</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Sends a DM Bluestack primative. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>prim</em> </td><td>A pointer to the primative to send. The memory must have been dynamically allocated. </td></tr> </table></dl> </td> </tr></table><a class="anchor" name="a12" doxytag="vm.h::VmSendSdpPrim" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void VmSendSdpPrim </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void * </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Sends an SDP Bluestack primative. <p> </td> </tr></table><a class="anchor" name="a13" doxytag="vm.h::VmGetHandleFromPointer" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void* VmGetHandleFromPointer </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void * </td> <td class="mdname1" valign="top" nowrap> <em>pointer</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Converts a VM address space pointer to a handle. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>pointer</em> </td><td>The pointer to convert.</td></tr> </table></dl>When assembling a primative which includes indirect blocks, the application must:<ul><li>Allocate a block</li><li>Convert it to a handle</li><li>Store the handle in the primative rather than storing the pointer itself </li></ul> </td> </tr></table><a class="anchor" name="a14" doxytag="vm.h::VmGetPointerFromHandle" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void* VmGetPointerFromHandle </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void * </td> <td class="mdname1" valign="top" nowrap> <em>handle</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Converts a handle to a VM address space pointer. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>handle</em> </td><td>The handle to convert.</td></tr> </table></dl>If a Bluestack primative refers to indirect blocks of memory, those are presented in the primative as handles rather than real pointers. To access the data an application must pass the handle to VmGetPointerFromHandle which will make the indirect block visible to the application. The application must call this exactly once for each such indirect block, and the resulting pointers must all be passed to free. Failure to perform this procedure will result in a resource leak. </td> </tr></table><a class="anchor" name="a15" doxytag="vm.h::VmUseExtendedBluestackPrimitives" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void VmUseExtendedBluestackPrimitives </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Enable extended Bluestack primitives. <p> </td> </tr></table><a class="anchor" name="a16" doxytag="vm.h::VmTransmitEnable" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a9">bool</a> VmTransmitEnable </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="csrtypes_8h.html#a9">bool</a> </td> <td class="mdname1" valign="top" nowrap> <em>enabled</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Request that the radio transmitter be enabled or disabled. <p>Returns TRUE if the request was satisfied, FALSE if it was not possible.<p>Equivalent to using ENABLE_TX and DISABLE_TX over BCCMD from off-chip. </td> </tr></table><a class="anchor" name="a17" doxytag="vm.h::VmAmuxClockEnable" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void VmAmuxClockEnable </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="csrtypes_8h.html#a9">bool</a> </td> <td class="mdname1" valign="top" nowrap> <em>enabled</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Enables the amux clock output on AIO0. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>enabled</em> </td><td>Whether the clock is enabled.</td></tr> </table></dl>Note that this is only available on BC4 parts, excluding BC4-external.<p>Note that PSKEY_AMUX_CLOCK must be have been set correctly, and PSKEY_AMUX_AIO0 must be set to ANA_AMUX_A_SEL_DIG_OUT_CLK_AMUX. </td> </tr></table><a class="anchor" name="a18" doxytag="vm.h::VmGetAvailableAllocations" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a4">uint16</a> VmGetAvailableAllocations </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Counts the maximum number of additional memory blocks which can be allocated. <p> </td> </tr></table><a class="anchor" name="a19" doxytag="vm.h::VmGetTemperature" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="csrtypes_8h.html#a6">int16</a> VmGetTemperature </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">void </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Reads the internal temperature of BlueCore. <p>Returns approximate temperate in centigrade, or -32768 if it could not be read. </td> </tr></table><a class="anchor" name="a20" doxytag="vm.h::VmChecksum" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="vm__if_8h.html#a66">vm_checksum_result</a> VmChecksum </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="vm__if_8h.html#a65">vm_checksum_region</a> </td> <td class="mdname1" valign="top" nowrap> <em>region</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Checksum various parts of the BlueCore flash. <p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign=top><em>region</em> </td><td>The region of flash to checksum</td></tr> </table></dl>Returns VM_CHECKSUM_FAIL, VM_CHECKSUM_OKAY, or VM_CHECKSUM_NOT_PRESENT if the region is not present in the flash on this device. </td> </tr></table></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -