target/riscv: fix 'reset run' after 'reset halt'
[fw/openocd] / src / target / openrisc / jsp_server.c
index b4b25665dae598269323ea3f26e88b553e6e1c63..54c9694243b7a5779171f0681f573c288c31db9e 100644 (file)
@@ -103,7 +103,7 @@ static int jsp_new_connection(struct connection *connection)
 
        int retval = target_register_timer_callback(&jsp_poll_read, 1,
                TARGET_TIMER_TYPE_PERIODIC, jsp_service);
-       if (ERROR_OK != retval)
+       if (retval != ERROR_OK)
                return retval;
 
        return ERROR_OK;
@@ -187,7 +187,7 @@ static int jsp_connection_closed(struct connection *connection)
        struct jsp_service *jsp_service = connection->service->priv;
 
        int retval = target_unregister_timer_callback(&jsp_poll_read, jsp_service);
-       if (ERROR_OK != retval)
+       if (retval != ERROR_OK)
                return retval;
 
        free(connection->priv);
@@ -195,20 +195,22 @@ static int jsp_connection_closed(struct connection *connection)
        return ERROR_OK;
 }
 
+static const struct service_driver jsp_service_driver = {
+       .name = "jsp",
+       .new_connection_during_keep_alive_handler = NULL,
+       .new_connection_handler = jsp_new_connection,
+       .input_handler = jsp_input,
+       .connection_closed_handler = jsp_connection_closed,
+       .keep_client_alive_handler = NULL,
+};
+
 int jsp_init(struct or1k_jtag *jtag_info, char *banner)
 {
        struct jsp_service *jsp_service = malloc(sizeof(struct jsp_service));
        jsp_service->banner = banner;
        jsp_service->jtag_info = jtag_info;
 
-       return add_service("jsp",
-               jsp_port,
-               1,
-               jsp_new_connection,
-               jsp_input,
-               jsp_connection_closed,
-               jsp_service,
-               NULL);
+       return add_service(&jsp_service_driver, jsp_port, 1, jsp_service);
 }
 
 COMMAND_HANDLER(handle_jsp_port_command)