URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 600 |
Rev 611 |
Line 65... |
Line 65... |
return;
|
return;
|
|
|
if ((ttcr & SPR_TTCR_PERIOD) == (ttmr & SPR_TTMR_PERIOD)) {
|
if ((ttcr & SPR_TTCR_PERIOD) == (ttmr & SPR_TTMR_PERIOD)) {
|
int mode = (ttmr & SPR_TTMR_M) >> 30; /* CZ 04/09/01 */
|
int mode = (ttmr & SPR_TTMR_M) >> 30; /* CZ 04/09/01 */
|
|
|
if (ttmr & SPR_TTMR_IE) {
|
if (ttmr & SPR_TTMR_IE)
|
setsprbits(SPR_TTMR, SPR_TTMR_IP, 1);
|
setsprbits(SPR_TTMR, SPR_TTMR_IP, 1);
|
if ((mfspr(SPR_SR) & SPR_SR_TEE) == SPR_SR_TEE)
|
|
except_handle(EXCEPT_TICK, 0);
|
|
}
|
|
|
|
/* Handle the modes properly.. CZ 04/09/01 */
|
/* Handle the modes properly.. CZ 04/09/01 */
|
switch(mode)
|
switch(mode)
|
{
|
{
|
case 0: /* Timer is disabled */
|
case 0: /* Timer is disabled */
|
Line 88... |
Line 85... |
break;
|
break;
|
case 3: /* Timer keeps running */
|
case 3: /* Timer keeps running */
|
break;
|
break;
|
}
|
}
|
}
|
}
|
|
|
|
if ((ttmr & SPR_TTMR_IP) && ((mfspr(SPR_SR) & SPR_SR_TEE) == SPR_SR_TEE))
|
|
except_handle(EXCEPT_TICK, mfspr(SPR_EEAR_BASE));
|
|
|
if (!tt_stopped)
|
if (!tt_stopped)
|
ttcr++;
|
ttcr++;
|
mtspr(SPR_TTCR, ttcr);
|
mtspr(SPR_TTCR, ttcr);
|
}
|
}
|
|
|
No newline at end of file
|
No newline at end of file
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.