Kill off poll_interruptions(); it is lethal when we're acting as a PXE

stack or INT 13 emulator etc.
pull/1/head
Michael Brown 2006-08-14 22:29:51 +00:00
parent 562ab6d65c
commit 97439cb6eb
7 changed files with 0 additions and 26 deletions

View File

@ -72,20 +72,6 @@ int32_t random(void)
return seed; return seed;
} }
/**************************************************************************
POLL INTERRUPTIONS
**************************************************************************/
void poll_interruptions(void)
{
int ch;
if ( ! as_main_program ) return;
/* If an interruption has occured restart etherboot */
if (iskey() && (ch = getchar(), (ch == K_ESC) || (ch == K_EOF) || (ch == K_INTR))) {
int state = (ch != K_INTR)? -1 : -3;
longjmp(restart_etherboot, state);
}
}
/************************************************************************** /**************************************************************************
SLEEP SLEEP
**************************************************************************/ **************************************************************************/
@ -94,7 +80,6 @@ void sleep(int secs)
unsigned long tmo; unsigned long tmo;
for (tmo = currticks()+secs*TICKS_PER_SEC; currticks() < tmo; ) { for (tmo = currticks()+secs*TICKS_PER_SEC; currticks() < tmo; ) {
poll_interruptions();
} }
} }

View File

@ -883,11 +883,6 @@ int await_reply(reply_t reply, int ival, void *ptr, long timeout)
if (result == 0) { if (result == 0) {
/* We don't have anything */ /* We don't have anything */
/* Check for abort key only if the Rx queue is empty -
* as long as we have something to process, don't
* assume that something failed. It is unlikely that
* we have no processing time left between packets. */
poll_interruptions();
/* Do the timeout after at least a full queue walk. */ /* Do the timeout after at least a full queue walk. */
if ((timeout == 0) || (currticks() > time)) { if ((timeout == 0) || (currticks() > time)) {
break; break;

View File

@ -48,7 +48,6 @@ struct driver_interact_t driver[] = {
void sleepticks(int numticks ) { void sleepticks(int numticks ) {
u_int tmo; u_int tmo;
for (tmo = currticks()+numticks; currticks() < tmo; ) { for (tmo = currticks()+numticks; currticks() < tmo; ) {
poll_interruptions();
} }
return; return;
} }

View File

@ -17,7 +17,6 @@ void mdelay(unsigned int msecs)
unsigned int i; unsigned int i;
for(i = 0; i < msecs; i++) { for(i = 0; i < msecs; i++) {
udelay(1000); udelay(1000);
poll_interruptions();
} }
} }
@ -25,6 +24,5 @@ void waiton_timer2(unsigned int ticks)
{ {
load_timer2(ticks); load_timer2(ticks);
while(timer2_running()) { while(timer2_running()) {
poll_interruptions();
} }
} }

View File

@ -3536,7 +3536,6 @@ e1000_transmit (struct nic *nic, const char *d, /* Destination */
E1000_WRITE_REG (&hw, TDT, tx_tail); E1000_WRITE_REG (&hw, TDT, tx_tail);
while (!(txp->upper.data & E1000_TXD_STAT_DD)) { while (!(txp->upper.data & E1000_TXD_STAT_DD)) {
udelay(10); /* give the nic a chance to write to the register */ udelay(10); /* give the nic a chance to write to the register */
poll_interruptions();
} }
DEBUGFUNC("send end"); DEBUGFUNC("send end");
} }

View File

@ -3153,7 +3153,6 @@ static void tg3_transmit(struct nic *nic, const char *dst_addr,
while((tp->hw_status->idx[0].tx_consumer != entry) && while((tp->hw_status->idx[0].tx_consumer != entry) &&
(tp->hw_status->idx[0].tx_consumer != PREV_TX(entry))) { (tp->hw_status->idx[0].tx_consumer != PREV_TX(entry))) {
mdelay(10); /* give the nick a chance */ mdelay(10); /* give the nick a chance */
poll_interruptions();
if (++i > 500) { /* timeout 5s for transmit */ if (++i > 500) { /* timeout 5s for transmit */
printf("transmit timed out\n"); printf("transmit timed out\n");
tg3_halt(tp); tg3_halt(tp);

View File

@ -222,7 +222,6 @@ extern int load_block P((unsigned char *, unsigned int, unsigned int, int ));
extern void twiddle P((void)); extern void twiddle P((void));
extern void sleep P((int secs)); extern void sleep P((int secs));
extern void interruptible_sleep P((int secs)); extern void interruptible_sleep P((int secs));
extern void poll_interruptions P((void));
extern int strcasecmp P((const char *a, const char *b)); extern int strcasecmp P((const char *a, const char *b));
extern char *substr P((const char *a, const char *b)); extern char *substr P((const char *a, const char *b));