Mike,
Looks good.
Tor
--- Tor Jeremiassen, Ph.D. Senior Member Technical Staff SDO Foundational Tools Texas Instruments Ph: 832 939 2356 13905 University Lane Fax: 832 939 2015 Sugar Land, TX 77479 Email: tor@ti.com
-----Original Message----- From: Mike Leach [mailto:Mike.Leach@arm.com] Sent: Tuesday, December 08, 2015 10:46 AM To: Jeremiassen, Tor; coresight@lists.linaro.org Subject: RE: Trace Decoder Memory Accessor
Hi Tor,
Looking at the C API it looks like the two alternatives for providing access to the image of the code that was traced is either through in-memory buffers or as binary files. I currently don't see a way to remove the accessors should the memory locations be "invalidated".
You are right, there isn't, it needs adding (to the C++ side too).
RCTDL_C_API rctdl_err_t rctdl_dt_remove_mem_acc(const dcd_tree_handle_t handle, const rctdl_vaddr_t start_address, const rctdl_mem_space_acc_t mem_space);
Would remove the accessor matching on address and memory space (accessors are not allowed to overlap so this should suffice).
Would it be possible to add the ability to remove accessors and also to add a third type of accessor, a pointer to a function that will access the requisite locations when called?
Yes - a function such as:-
RCTDL_C_API rctdl_err_t rctdl_dt_add_callback_mem_acc(const dcd_tree_handle_t handle, const rctdl_vaddr_t start_address, const rctdl_mem_space_acc_t mem_space, const uint32_t mem_length, const PMEMACCFN pFn);
with
PMEMACCFN defined as something like:-
typedef rctdl_err_t (* PMEMACCFN) ( const rctdl_vaddr_t address, const rctdl_mem_space_acc_t mem_space, uint32_t *num_bytes, uint8_t *p_buffer); would be sufficient?
Again would need adding to C++ side.
The memory accessor interface is quite immature at the moment. The only examples we are currently using are snapshots and thus fixed - no need to remove memory areas, and everything is files or buffers.
Regards
Mike
---------------------------------------------------------------- Mike Leach +44 (0)1254 893911 (Direct) Principal Engineer +44 (0)1254 893900 (Main) Arm Blackburn Design Centre +44 (0)1254 893901 (Fax) Belthorn House Walker Rd mailto:mike.leach@arm.com Guide Blackburn BB1 2QE ----------------------------------------------------------------
-----Original Message----- From: CoreSight [mailto:coresight-bounces@lists.linaro.org] On Behalf Of Jeremiassen, Tor Sent: 08 December 2015 16:19 To: coresight@lists.linaro.org Subject: Trace Decoder Memory Accessor
I think is this mostly a question for Mike, but I'll send it more broadly.
Looking at the C API it looks like the two alternatives for providing access to the image of the code that was traced is either through in-memory buffers or as binary files. I currently don't see a way to remove the accessors should the memory locations be "invalidated".
Would it be possible to add the ability to remove accessors and also to add a third type of accessor, a pointer to a function that will access the requisite locations when called?
Tor Jeremiassen, Ph.D. Senior Member Technical Staff SDO Foundational Tools Texas Instruments Ph: 832 939 2356 13905 University Lane Fax: 832 939 2015 Sugar Land, TX 77479 Email: tor@ti.com _______________________________________________ CoreSight mailing list CoreSight@lists.linaro.org https://lists.linaro.org/mailman/listinfo/coresight
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.