* dsrec.c (load_srec): Add WAITACK parameter, for machines

like EST visionICE that send back an ACK after each S-record.
	* monitor.c (monitor_wait_srec_ack): New function.
	(monitor_load): Pass monitor_wait_srec_ack to load_srec
	if the monitor's MO_SREC_ACK flag is set.
	* monitor.h: Define MO_SREC_ACK flag.
	* remote-est.c (est_cmds): Add MO_SREC_ACK flag.
	* sh3-rom.c (sh3_load): Accomodate change in load_srec prototype.
	* srec.h: Add WAITACK parameter to load_srec prototype.
This commit is contained in:
Mark Alexander 1996-05-21 06:09:23 +00:00
parent 5fdebee306
commit c92f31c6e5
5 changed files with 21 additions and 4 deletions

View File

@ -1,3 +1,15 @@
Mon May 20 22:52:00 1996 Mark Alexander <marka@cygnus.com>
* dsrec.c (load_srec): Add WAITACK parameter, for machines
like EST visionICE that send back an ACK after each S-record.
* monitor.c (monitor_wait_srec_ack): New function.
(monitor_load): Pass monitor_wait_srec_ack to load_srec
if the monitor's MO_SREC_ACK flag is set.
* monitor.h: Define MO_SREC_ACK flag.
* remote-est.c (est_cmds): Add MO_SREC_ACK flag.
* sh3-rom.c (sh3_load): Accomodate change in load_srec prototype.
* srec.h: Add WAITACK parameter to load_srec prototype.
Sun May 19 21:22:00 1996 Rob Savoye <rob@chinadoll>
* config/sparc/sparclite.mt: Add the sparc simulator.

View File

@ -148,6 +148,10 @@ struct monitor_ops
#define MO_SEND_BREAK_ON_STOP 0x80
/* If set, target sends an ACK after each S-record */
#define MO_SREC_ACK 0x100
#define SREC_SIZE 160
extern void monitor_open PARAMS ((char *args, struct monitor_ops *ops,

View File

@ -97,7 +97,8 @@ static char *est_inits[] = {"he\r", /* Resets the prompt, and clears repeated cm
static struct monitor_ops est_cmds =
{
MO_CLR_BREAK_USES_ADDR | MO_FILL_USES_ADDR | MO_NEED_REGDUMP_AFTER_CONT,
MO_CLR_BREAK_USES_ADDR | MO_FILL_USES_ADDR | MO_NEED_REGDUMP_AFTER_CONT |
MO_SREC_ACK,
est_inits, /* Init strings */
"go\r", /* continue command */
"sidr\r", /* single step */

View File

@ -123,7 +123,7 @@ sh3_load (desc, file, hashmark)
if (parallel_in_use)
{
monitor_printf("pl;s\r");
load_srec (parallel, file, 80, SREC_ALL, hashmark);
load_srec (parallel, file, 80, SREC_ALL, hashmark, NULL);
monitor_expect_prompt (NULL, 0);
}
else
@ -133,7 +133,7 @@ sh3_load (desc, file, hashmark)
SERIAL_WRITE (desc, "\006", 1); /* Send ACK */
monitor_expect ("LO x\r", NULL, 0); /* Look for filename */
load_srec (desc, file, 80, SREC_ALL, hashmark);
load_srec (desc, file, 80, SREC_ALL, hashmark, NULL);
monitor_expect ("\005", NULL, 0); /* Look for ENQ */
SERIAL_WRITE (desc, "\006", 1); /* Send ACK */

View File

@ -18,7 +18,7 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
void load_srec PARAMS ((serial_t desc, const char *file, int maxrecsize,
int flags, int hashmark));
int flags, int hashmark, int (*waitack)(void)));
/* S-record capability flags */