| 308 | } |
| 309 | |
| 310 | static void |
| 311 | mv_delay(int usec, void* arg) |
| 312 | { |
| 313 | uint32_t val, val_temp; |
| 314 | int32_t nticks; |
| 315 | |
| 316 | val = mv_get_timer(1); |
| 317 | nticks = ((timer_softc->config->clock_src / 1000000 + 1) * usec); |
| 318 | |
| 319 | while (nticks > 0) { |
| 320 | val_temp = mv_get_timer(1); |
| 321 | if (val > val_temp) |
| 322 | nticks -= (val - val_temp); |
| 323 | else |
| 324 | nticks -= (val + (INITIAL_TIMECOUNTER - val_temp)); |
| 325 | |
| 326 | val = val_temp; |
| 327 | } |
| 328 | } |
| 329 | |
| 330 | #ifndef PLATFORM |
| 331 | void |