Hi,
I have a pointer to an L3 memory location which is initialized in the dss subsystem. I wish to write to that memory directly from mss (without using mailbox or hsram), but all of my l3 heap is allocated by dss.
I see that there exists a function in C:/ti/mmwave_sdk_03_03_00_03/packages/ti/drivers/soc/docs/doxygen/html/group___s_o_c___d_r_i_v_e_r___e_x_t_e_r_n_a_l___f_u_n_c_t_i_o_n.html called SOC_translateAddress, which has as possible directions SOC_TranslateAddr_Dir_TO_OTHER_CPU and SOC_TranslateAddr_Dir_FROM_OTHER_CPU, but I am not sure how to use it. Can I call it from mss to get an address of a buffer in dss? And how would I do that, if the pointer to that buffer exists only in dss (the variable *buffPtr in dss for example can't be reached from mss) ? I also don't understand how this function even returns the translated address and where, so I would be grateful for an explanation.
My current idea, without using this function, is to send the offset of the buffer from the start of l3 heap in dss to mss using mailbox, and then add the offset to the start of l3 in mss (I know it's 0x51000000) and get the address I need. But this way seems too messy.
I would appreciate any useful advice, thanks.
Jovana