?? wdb.pcl
字號:
** `context' specifies the context for which the* event should be detected. Currently, `contextType' can* be WDB_CTX_SYSTEM (for a system mode breakpoint), WDB_CTX_TASK* (for a task-specific eventpoint), or WDB_CTX_ANY_TASK for* a tasking breakpoint that applies to any task.** `numArgs' and `args' specify* arguments to pass to the eventpoint. For WDB_EVT_CTX_EXIT and * WDB_EVT_CTX_START eventpoints, `numArgs' should be zero. For WDB_EVT_BP,* `numArgs' should be one or two, `args[0]' should be the breakpoint address* and `args[1]' (optional) should be the breakpoint count. For WDB_EVT_HW_BP,* `numArgs' should be three, `args[0]' should be the breakpoint address,* `args[1]' should be the breakpoint count and `args[2]' should be the * hardware breakpoint access type. For more informations on hardware* breakpoint access type, refer to the `WTX_EVENTPOINT_ADD_2' documentation.** `action' is set to the appropriate action to perform when the breakpoint* is hit as defined by the structures WDB_ACTION and WDB_ACTION_TYPE in * wdb.h.** The return value is an eventpoint ID, which is a handle to the eventpoint.** NOTES* .IP 1. 4* Context-specific eventpoints are automatically deleted when* the context exits. Otherwise eventpoints are persistent until* WDB_EVENTPOINT_DELETE is called to delete them.* .IP 2.* Tasking breakpoints are disabled if the agent switches to* external mode (by way of WDB_MODE_SET), but are reenabled if the agent* switches back again to tasking mode. Similarly, external-mode breakpoints* are disabled if the agent switches to tasking mode and reenabled if* the agent switches back again.* .IP 3.* When the eventpoint is hit, notification occurs as described in* the "ASYNCHRONOUS NOTIFICATION SENT BY THE AGENT" section of the WDB* man page. After being notified, the host uploads the event with* the WDB_EVENT_GET procedure.* .IP 4.* A hardware breakpoints can generate WDB_EVT_BP if it is an instruction * hardware breakpoint or WDB_EVT_WP if it is a data access breakpoint.** ERRORS:* .iP WDB_ERR_INVALID_EVENT * There is no handler for the specified event type.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/UINT32 WDB_EVENTPOINT_ADD ( WDB_EVTPT_ADD_DESC * ) { ... }/*************************************************************************** WDB_EVENTPOINT_DELETE - delete an eventpoint** This routine deletes the eventpoint specified by WDB_EVTPT_DEL_DESC:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_EVTPT_DEL_DESC* * `evtType' specifies the type of eventpoint to delete.* `evtptId' specifies the eventpoint to delete. (`-1'* means delete all eventpoints of the given type.)** NOTE: Context-specific eventpoints are automatically deleted when the* context exits. Otherwise eventpoints are persistent * until WDB_EVENTPOINT_DELETE is called to delete them.** ERRORS:* .iP WDB_ERR_INVALID_EVENTPOINT * The eventpoint specified does not exist.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/(none) WDB_EVENTPOINT_DELETE ( WDB_EVTPT_DEL_DESC * ) { ... }/*************************************************************************** WDB_EVENT_GET - upload an event from the target** This routine uploads an asynchronous target event to the host.* The return value, WDB_EVT_DATA, is:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_EVT_DATA** The type of event uploaded can be determined by the* value of `evtType'.** NOTE: It is not necessary to poll for target events. Notification* of events is given as described in the "ASYNCHRONOUS NOTIFICATION SENT BY* THE AGENT" section of the WDB man page. Call WDB_EVENT_GET to retrieve * the event data after being notified that an event has occurred.** ERRORS:* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/WDB_EVT_DATA WDB_EVENT_GET ( (none) * ) { ... }/*************************************************************************** WDB_FUNC_CALL - call a function on the target** This routine calls a function on the target. * The call is not made directly by the WDB agent, but* rather from a task created for the purpose.* The WDB_CTX_CREATE_DESC structure describes how to create the context for* invoking the function:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_CTX_CREATE_DESC** The return value is the task ID of the task which executes the* function.* The actual return value of the function is passed back to the host as* an asynchronous event of event type WDB_EVT_CALL_RET. See WDB_EVENT_GET* for details.** ERRORS:* .iP WDB_ERR_AGENT_MODE * This command cannot be executed in system mode.* .iP WDB_ERR_NO_RT_PROC * The agent does not support this service.* .iP WDB_ERR_RT_ERROR * The runtime callouts failed.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/UINT32 WDB_FUNC_CALL ( WDB_CTX_CREATE_DESC * ) { ... }/*************************************************************************** WDB_MEM_CACHE_TEXT_UPDATE - synchronize cache after writing to the target** This routine is used to synchronize the data and instruction caches after* writing text to the target. WDB_MEM_REGION defines the input parameters:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_REGION** `baseAddr' and `numBytes' specify the* region of memory to update.** ERRORS:* .iP WDB_ERR_MEM_ACCES * The memory region is invalid.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/(none) WDB_MEM_CACHE_TEXT_UPDATE ( WDB_MEM_REGION * ) { ... }/*************************************************************************** WDB_MEM_CHECKSUM - checksum a block of target memory** This request performs a standard TCP/IP checksum (it sums 16-bit words * using one-compliment arithmetic and returns the one-compliment of the result).* * EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_REGION** where `baseAddr' and `numBytes' specify the source region. The checksum * is returned as a 32-bit integer.* * ERRORS:* .iP WDB_ERR_MEM_ACCES * The target memory cannot be read.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/UINT32 WDB_MEM_CHECKSUM ( WDB_MEM_REGION * ) { ... }/*************************************************************************** WDB_MEM_FILL - fill target memory with a pattern** This request fills the specified area of target memory with a pattern. * The input parameter is WDB_MEM_REGION:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_REGION** `baseAddr' and `numBytes' specify the region of target memory to fill.* `param' specifies the 4-byte pattern used to fill the region.** ERRORS:* .iP WDB_ERR_MEM_ACCES * The target memory cannot be written.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/(none) WDB_MEM_FILL ( WDB_MEM_REGION * ) { ... }/*************************************************************************** WDB_MEM_MOVE - move memory on the target** This routine requests the agent to move the contents of the specified * area of memory to another memory location. WDB_MEM_REGION specifies * the various parameters:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_REGION** where `baseAddr' and `numBytes' specify the source region and `param'* specifies where to move the contents to.** ERRORS: * .iP WDB_ERR_MEM_ACCES * The target memory cannot be read/written.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/(none) * WDB_MEM_MOVE ( WDB_MEM_REGION * ) { ... }/*************************************************************************** WDB_MEM_PROTECT - write enable/disable a region of target memory** This request enables or disables write protection for a region of target* memory. The input parameters are contained in WDB_MEM_REGION:* * EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_REGION** `baseAddr' and `numBytes' specify the region of target memory affected. * To write-enable the region, set `param' to 0. To write-protect the* region, set `param' to a non-zero value.** NOTE: This routine will affect an entire MMU page on the target.** ERRORS: * .iP WDB_ERR_NO_RT_PROC * The target runtime has no procedure to support write protection.* .iP WDB_ERR_MEM_ACCES * The protection routine failed.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.* **/(none) * WDB_MEM_PROTECT ( WDB_MEM_REGION * ) { ... }/*************************************************************************** WDB_MEM_READ - read memory from the target** This request reads the contents of a specified target memory region* to a host buffer. The region to read is specified by WDB_MEM_REGION:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_REGION** where `baseAddr' is the starting address and `numBytes' is the number* of bytes to read.** The memory is returned in WDB_MEM_XFER:** EXPAND ../../../../../share/src/agents/wdb/wdb.h WDB_MEM_XFER** This structure should be initialized to point to a host buffer (or * zero to malloc).** ERRORS:* .iP WDB_ERR_MEM_ACCES * The target memory cannot be read.* .iP "WDB and RPC errors"* As described in the "REPLY ERRORS" section of the WDB* man page.***/WDB_MEM_XFER * WDB_MEM_READ ( WDB_MEM_REGION * ) { ... }/*************************************************************************** WDB_MEM_SCAN - scan a block of target memory for a pattern** This routine scans a block of target memory for a pattern. The input * parameters are specified in WDB_MEM_SCAN_DESC:*
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -