gdb_server: support File-I/O Remote Protocol Extension
The File I/O remote protocol extension allows the target to use the host's file system and console I/O to perform various system calls. To use the function, targets need to prepare two callback functions: * get_gdb_finish_info: to get file I/O parameters from target * gdb_fileio_end: pass file I/O response to target As target is halted, gdb_server will try to get file-I/O information from target through target_get_gdb_fileio_info(). If the callback function returns ERROR_OK, gdb_server will initiate a file-I/O request to gdb. After gdb finishes system call, gdb will pass response of the system call to target through target_gdb_fileio_end() and continue to run(continue or step). To implement the function, I add a new data structure in struct target, called struct gdb_fileio_info, to record file I/O name and parameters. Details refer to GDB manual "File-I/O Remote Protocol Extension" Change-Id: I7f4d45e7c9e967b6d898dc79ba01d86bc46315d3 Signed-off-by: Hsiangkai Wang <hsiangkai@gmail.com> Reviewed-on: http://openocd.zylin.com/1102 Tested-by: jenkins Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
This commit is contained in:
committed by
Spencer Oliver
parent
80d412bafc
commit
0a4c8990c2
@@ -520,4 +520,7 @@ struct target_type nds32_v3_target = {
|
||||
.target_create = nds32_v3_target_create,
|
||||
.init_target = nds32_v3_init_target,
|
||||
.examine = nds32_v3_examine,
|
||||
|
||||
.get_gdb_fileio_info = nds32_get_gdb_fileio_info,
|
||||
.gdb_fileio_end = nds32_gdb_fileio_end,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user