- } else if (strstr(packet, "qfThreadInfo")) {
- if (linux_os->thread_list == NULL) {
- retval = linux_gdb_thread_packet(target,
- connection,
- packet,
+ case 'H': /* Set current thread */
+ /* ( 'c' for step and continue, 'g' for all other operations )*/
+ /*LOG_INFO(" H packet received '%s'", packet);*/
+ linux_gdb_h_packet(connection, target, packet, packet_size);
+ break;
+ case 'q':
+
+ if ((strstr(packet, "qSymbol"))) {
+ if (rtos_qsymbol(connection, packet, packet_size) == 1) {
+ linux_compute_virt2phys(target,
+ target->rtos->
+ symbols[INIT_TASK].
+ address);
+ }
+
+ break;
+ } else if (strstr(packet, "qfThreadInfo")) {
+ if (linux_os->thread_list == NULL) {
+ retval = linux_gdb_thread_packet(target,
+ connection,
+ packet,
+ packet_size);
+ break;
+ } else {
+ retval = linux_gdb_thread_update(target,
+ connection,
+ packet,
+ packet_size);
+ break;
+ }
+ } else if (strstr(packet, "qsThreadInfo")) {
+ gdb_put_packet(connection, "l", 1);
+ break;
+ } else if (strstr(packet, "qThreadExtraInfo,")) {
+ linux_thread_extra_info(target, connection, packet,