rtos: constify symbol names and lists
[fw/openocd] / src / rtos / ChibiOS.c
index c54f43053f04fce5d4f2e083ce7d32243ed2a9f6..46fdca323fcdf7ec1bb3bb80288a0d4c427931b4 100644 (file)
@@ -36,7 +36,6 @@
 #include "helper/types.h"
 #include "rtos_chibios_stackings.h"
 
-
 /**
  * @brief   ChibiOS/RT memory signature record.
  *
@@ -72,7 +71,7 @@ struct ChibiOS_chdebug {
 /**
  * @brief ChibiOS thread states.
  */
-const char *ChibiOS_thread_states[] = {
+static const char * const ChibiOS_thread_states[] = {
        "READY", "CURRENT", "SUSPENDED", "WTSEM", "WTMTX", "WTCOND", "SLEEPING",
        "WTEXIT", "WTOREVT", "WTANDEVT", "SNDMSGQ", "SNDMSG", "WTMSG", "WTQUEUE",
        "FINAL"
@@ -92,7 +91,7 @@ struct ChibiOS_params {
        const struct rtos_register_stacking *stacking_info;
 };
 
-struct ChibiOS_params ChibiOS_params_list[] = {
+static const struct ChibiOS_params ChibiOS_params_list[] = {
        {
        "cortex_m",                                                     /* target_name */
        0,
@@ -128,7 +127,7 @@ enum ChibiOS_symbol_values {
        ChibiOS_VAL_chSysInit = 2
 };
 
-static char *ChibiOS_symbol_list[] = {
+static const char * const ChibiOS_symbol_list[] = {
        "rlist",                /* Thread ready list*/
        "ch_debug",             /* Memory Signatur containing offsets of fields in rlist*/
        "chSysInit",    /* Necessary part of API, used for ChibiOS detection*/
@@ -347,17 +346,17 @@ static int ChibiOS_update_threads(struct rtos *rtos)
                const char tmp_thread_name[] = "Current Execution";
                const char tmp_thread_extra_info[] = "No RTOS thread";
 
-               rtos->thread_details = (struct thread_detail *) malloc(
+               rtos->thread_details = malloc(
                                sizeof(struct thread_detail));
                rtos->thread_details->threadid = 1;
                rtos->thread_details->exists = true;
                rtos->thread_details->display_str = NULL;
 
-               rtos->thread_details->extra_info_str = (char *) malloc(
+               rtos->thread_details->extra_info_str = malloc(
                                sizeof(tmp_thread_extra_info));
                strcpy(rtos->thread_details->extra_info_str, tmp_thread_extra_info);
 
-               rtos->thread_details->thread_name_str = (char *) malloc(
+               rtos->thread_details->thread_name_str = malloc(
                                sizeof(tmp_thread_name));
                strcpy(rtos->thread_details->thread_name_str, tmp_thread_name);
 
@@ -367,7 +366,7 @@ static int ChibiOS_update_threads(struct rtos *rtos)
        }
 
        /* create space for new thread details */
-       rtos->thread_details = (struct thread_detail *) malloc(
+       rtos->thread_details = malloc(
                        sizeof(struct thread_detail) * tasks_found);
        if (!rtos->thread_details) {
                LOG_ERROR("Could not allocate space for thread details");
@@ -416,7 +415,7 @@ static int ChibiOS_update_threads(struct rtos *rtos)
                if (tmp_str[0] == '\x00')
                        strcpy(tmp_str, "No Name");
 
-               curr_thrd_details->thread_name_str = (char *)malloc(
+               curr_thrd_details->thread_name_str = malloc(
                                strlen(tmp_str) + 1);
                strcpy(curr_thrd_details->thread_name_str, tmp_str);
 
@@ -437,7 +436,7 @@ static int ChibiOS_update_threads(struct rtos *rtos)
                else
                        state_desc = "Unknown state";
 
-               curr_thrd_details->extra_info_str = (char *)malloc(strlen(
+               curr_thrd_details->extra_info_str = malloc(strlen(
                                        state_desc)+1);
                strcpy(curr_thrd_details->extra_info_str, state_desc);
 
@@ -498,7 +497,7 @@ static int ChibiOS_get_thread_reg_list(struct rtos *rtos, int64_t thread_id, cha
 static int ChibiOS_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[])
 {
        unsigned int i;
-       *symbol_list = (symbol_table_elem_t *) malloc(
+       *symbol_list = malloc(
                        sizeof(symbol_table_elem_t) * ARRAY_SIZE(ChibiOS_symbol_list));
 
        for (i = 0; i < ARRAY_SIZE(ChibiOS_symbol_list); i++)
@@ -539,6 +538,6 @@ static int ChibiOS_create(struct target *target)
                return -1;
        }
 
-       target->rtos->rtos_specific_params = &ChibiOS_params_list[i];
+       target->rtos->rtos_specific_params = (void *) &ChibiOS_params_list[i];
        return 0;
 }