* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc. *
+ * along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifdef HAVE_CONFIG_H
enum mqx_arch arch_type = ((struct mqx_params *)rtos->rtos_specific_params)->target_arch;
const char * targetname = ((struct mqx_params *)rtos->rtos_specific_params)->target_name;
- /* Cortex M address range */
+ /* Cortex-M address range */
if (arch_type == mqx_arch_cortexm) {
if (
/* code and sram area */
{
int status = mqx_valid_address_check(target->rtos, address);
if (status != ERROR_OK) {
- LOG_WARNING("MQX RTOS - target address 0x%X is not allowed to read", address);
+ LOG_WARNING("MQX RTOS - target address 0x%" PRIx32 " is not allowed to read", address);
return status;
}
status = target_read_buffer(target, address, size, buffer);
if (status != ERROR_OK) {
- LOG_ERROR("MQX RTOS - reading target address 0x%X failed", address);
+ LOG_ERROR("MQX RTOS - reading target address 0x%" PRIx32" failed", address);
return status;
}
return ERROR_OK;
rtos->target, base_address + member_offset, member_width, result
);
if (status != ERROR_OK)
- LOG_WARNING("MQX RTOS - cannot read \"%s\" at address 0x%X", member_name, base_address + member_offset);
+ LOG_WARNING("MQX RTOS - cannot read \"%s\" at address 0x%" PRIx32,
+ member_name, (uint32_t)(base_address + member_offset));
return status;
}
uint16_t task_queue_size = 0;
uint32_t active_td_addr = 0;
+ if (!rtos->rtos_specific_params)
+ return -3;
+
+ if (!rtos->symbols)
+ return -4;
+
/* clear old data */
rtos_free_threadlist(rtos);
/* check scheduler */
if (NULL == rtos->thread_details[i].extra_info_str)
return ERROR_FAIL;
snprintf(
- rtos->thread_details[i].extra_info_str, extra_info_length, "%s : 0x%x : %u",
+ rtos->thread_details[i].extra_info_str, extra_info_length, "%s : 0x%"PRIx32 " : %" PRIu32,
state_name, task_addr, task_errno
);
/* set active thread */
/* API function, export list of required symbols */
static int mqx_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[])
{
- *symbol_list = malloc(sizeof(symbol_table_elem_t) * ARRAY_SIZE(mqx_symbol_list));
+ *symbol_list = calloc(ARRAY_SIZE(mqx_symbol_list), sizeof(symbol_table_elem_t));
if (NULL == *symbol_list)
return ERROR_FAIL;
/* export required symbols */