OpenCores
URL https://opencores.org/ocsvn/s6soc/s6soc/trunk

Subversion Repositories s6soc

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /s6soc/trunk
    from Rev 43 to Rev 44
    Reverse comparison

Rev 43 → Rev 44

/sw/zipos/doorbell.c
482,7 → 482,7
wait(0,3);
key = keypadread();
keypad_wait_for_release();
clear(INT_KEYPAD);
clear(INT_KEYPAD,0);
return key;
}
 
534,7 → 534,7
// a millisecond to finish setting the clock ... but this is such a
// rare race condition, and the consequences so minor, that this will
// probably continue to work for now.
clear(SWINT_PPS);
clear(SWINT_PPS,0);
rtcclock = newclock;
if (wait(SWINT_PPS, 1))
rtcclock = newclock;
666,7 → 666,7
default:
unknown_menu();
wait(0,3000);
} clear(INT_KEYPAD);
} clear(INT_KEYPAD,0);
}
}
}
/sw/zipos/ktraps.h
93,8 → 93,8
syscall(TRAPID_YIELD, 0, 0, 0);
} static inline int wait(unsigned event_mask, int timeout) {
return syscall(TRAPID_WAIT, (int)event_mask, timeout, 0);
} static inline void clear(unsigned event) {
syscall(TRAPID_CLEAR, (int)event, 0, 0);
} static inline int clear(unsigned event, int timeout) {
return syscall(TRAPID_CLEAR, (int)event, timeout, 0);
} static inline void post(unsigned event) {
syscall(TRAPID_POST, (int)event, 0, 0);
}
/sw/zipos/kernel.c
262,8 → 262,8
int ilist, timeout;
ilist = last_context[2];
timeout= last_context[3];
last_context[1] = ilist & current->pending;
if (current->pending & ilist) {
last_context[1] = ilist & current->pending;
// Clear upon any read
current->pending &= (~last_context[1]);
} else {
288,8 → 288,11
timeout = (unsigned)last_context[2];
if (timeout) {
if ((int)timeout < 0)
// Turn off any pending timeout
current->pending &= (~SWINT_TIMEOUT);
else
// Otherwise, start a timeout
// counter
current->timeout = milliseconds+timeout;
}} break;
case TRAPID_POST:

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.