aboutsummaryrefslogtreecommitdiff
path: root/gdb/ser-ocd.c
AgeCommit message (Collapse)AuthorFilesLines
1998-03-06PR 15068Fred Fish1-0/+1
* utils.c (quit): Call SERIAL_DRAIN_OUTPUT rather than SERIAL_FLUSH_OUTPUT. * serial.h (struct serial_ops): Add drain_output, pointer to function that waits for output to drain. (SERIAL_DRAIN_OUTPUT): Macro to wait for output to drain. * ser-unix.c (hardwire_drain_output): New function and prototype. * ser-unix.c (hardwire_ops): Add entry for drain_output function. * ser-tcp.c (tcp_ops): Ditto. * ser-ocd.c (ocd_ops): Ditto. * ser-mac.c (mac_ops): Ditto. * ser-go32.c (dos_ops): Ditto. * ser-e7kpc.c (e7000pc_ops): Ditto.
1997-08-21Thu Aug 21 14:56:04 1997 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-5/+10
* ppc-bdm.c (bdm_ppc_wait): stop printfing ecr, der * ocd.c: initialize remote_timeout (ocd_wait): while looping, call ocd_do_command with OCD_AYT (ocd_get_packet): remove find_packet goto. If there isn't an 0x55 at the start, something is quite wrong so error out instead of advancing in the packet and trying again. If checksum is invalid, print error message instead of trying again. * ser-ocd.c (ocd_readchar): error if we attempt to read past the end of the from_wiggler_buffer.
1997-08-11Mon Aug 11 16:22:36 1997 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-1/+1
* ocd.c (ocd_insert_breakpoint, ocd_remove_breakpoint): macro BDM_BREAKPOINT already has braces around it, remove erroneous ones. * ser-ocd.c (ocd_write): conditionalize on _WIN32 instead of __CYGWIN32__ * config/powerpc/tm-ppc-eabi.h: remove BDM_NUM_REGS, BDM_REGMAP * ppc-bdm.c: move BDM_NUM_REGS, BDM_REGMAP here from tm.h file, fill in doc fields of bdm_ppc_ops. (bdm_ppc_fetch_registers): don't ask for invalid registers such as the MQ or floating point regs not present on ppc 8xx boards (bdm_ppc_store_registers): don't write those same invalid registers * config/i386/cygwin32.mh: stop including ocd.o ser-ocd.o * config/powerpc/ppc-eabi.mt: * config/powerpc/ppcle-eabi.mt: * config/powerpc/ppc-sim.mt: * config/powerpc/ppcle-sim.mt: include ser-ocd.o
1997-08-09 * ser-ocd.c: If _WIN32, include <windows.h>.Ian Lance Taylor1-7/+29
(dll_do_command): New static variable if _WIN32. (ocd_open): Set dll_do_command if _WIN32. (ocd_write): Use dll_do_command rather than do_command. * config/i386/cygwin32.mh (XDEPFILES): Remove libwigglers.a. (BDM_DLLNAME, BDM_LIBNAME, BDM_DEFFILE): Don't define. ($(BDM_LIBNAME)): Remove target. * wigglers.def: Remove.
1997-08-08Thu Aug 7 19:40:52 1997 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-7/+12
Changes to OCD support to support wiggler box as well as target boxes: * ocd.c: change speed in init command to 0 from 80, add (temporary) logging commands to help debugging, (ocd_open): if "target ocd wiggler lpt" then use special ser-ocd.c serial interface which communicates with Wigglers.dll, otherwise do as we did before (ocd_get_packet): add OCD_LOG_FILE and OCD_SET_CONNECTION to switch of known commands of len 0 * ocd.h: add OCD_LOG_FILE * serial.c (serial_open): do serial_interface_lookup on ocd in the case of ocd * ser-ocd.c: add buffer to contain responses from sending a command to the Wigglers.dll. (ocd_readchar): return curr char from buffer and increment ptr (ocd_write): send buffer to Wigglers.dll, storing response in return buffer and initializing curr location ptr to start of buffer.
1997-08-07Thu Aug 7 13:09:17 1997 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-1/+1
Nomenclature change. BDM is a specific type of OCD (On chip debugging). Wiggler is the parallel port box controlled by Wigglers.dll. The faster target box from Macraigor Systems is not a wiggler. * ocd.c: * ocd.h: * ppc-bdm.c: * ser-ocd.c: Replace all instances of "wiggler_" with "ocd_" and change most other instances of "wiggler" to "ocd" or "ocd device" depending on context. * config/m68k/monitor.mt: remove remote-wiggler.o from TDEPFILES until OCD with that target is supported again.
1997-08-07Wed Aug 6 16:15:31 1997 Geoffrey Noer <noer@cygnus.com>Geoffrey Noer1-0/+174
* Makefile.in: add DLLTOOL = @DLLTOOL@, pass on DLLTOOL to sub makes, change clean rule to also remove *.a to remove libwigglers.a, in dependencies: add ppc-bdm.o ocd.o ser-ocd.o and remove remote-wiggler.o * configure.in: add DLLTOOL support * configure: regenerate * wigglers.def: new file for imports for wigglers.dll * ser-ocd.c: new file which is layer between ocd.c and either the wigglers.dll or the target box, only stub so far * config/powerpc/ppc-eabi.mt: add ppc-bdm.o to TDEPFILES * config/powerpc/ppc-sim.mt: add ppc-bdm.o to TDEPFILES * config/i386/cygwin32.mh: add ocd.o ser-ocd.o libwigglers.a to XDEPFILES, add rules to build libwigglers.a checking in changes of Stu Grossman <grossman@cygnus.com>: * remote-wiggler.c: delete * ocd.c: new, was remote-wiggler.c always include sys/types.h, include ocd.h, move WIGGLER commands and many wiggler prototypes to ocd.h, make wiggler_desc static, stop making local wiggler functions static, define write_mem_command for wiggler_write_bytes (wiggler_start_remote): stop hardcoding the target type, instead set and use a target_type variable. (wiggler_open): add new target_type and ops args (wiggler_wait): now no longer takes pid and target_status as args, stop trying to set target_status struct, remove BGND insn checks (read_bdm_registers): renamed to wiggler_read_bdm_registers (wiggler_read_bdm_registers): numregs arg changed to reglen arg, remove pktlen check, set reglen instead of numregs (dump_all_bdm_regs): delete (wiggler_fetch_registers): delete (wiggler_prepare_to_store): now just an empty function (wiggler_store_registers): delete (wiggler_read_bdm_register): new (wiggler_write_bdm_registers): new (wiggler_write_bdm_register): new (wiggler_write_bytes): use write_mem_command variable instead of WIGGLER_WRITE_MEM (get_packet): renamed to wiggler_get_packet, change refs throughout (put_packet): renamed to wiggler_put_packet, change refs throughout (wiggler_get_packet): add break to default case of switch, change length of WIGGLER_GET_VERSION len to 10 from 4 to match specs (wiggler_mourn): unpush_target with current_ops, not &wiggler_ops (flash_xfer_memory): delete (noop_store_registers): new placeholder replacement for target_store_registers() which prevents generic_load from trying to set up the PC. (bdm_update_flash_command): add store_registers_tmp variable, make handling of wiggler_ops more generic -- define wiggler_ops in a target-specific file instead (such as ppc-bdm.c in the case of the ppc), use current_target to deal with registers again making this file less target-specific. (bdm_read_register_command): new (_initialize_remote_wiggler): stop doing add_target (&wiggler_ops), comment out add_cmd ("read-register", ...) * ocd.h: new, contains common wiggler prototypes, command definitions * ppc-bdm.c: file for ppc-specific OCD code, including target_ops structure for ppc bdm (bdm_ppc_open): new (bdm_ppc_wait): new (bdm_ppc_fetch_registers): new (bdm_ppc_store_registers_: new (_initialize_bdm_ppc): new * config/powerpc/tm-ppc-eabi.h: add necessary CPU32 BDM defines