/* * This is called early during startup to find the * diag register (LEDs) and turn on the light(s). */ void leds_init() { #ifdef _SUN3X_ diagreg = obio_find_mapping(OBIO_DIAGREG, 1); if (cpu_machine_id == SUN3X_MACH_80) ledpat.patlen = 1; #endif /* SUN3X */ /* Turn on some lights. */ leds_intr(); }
/* * Clock interrupt handler. * This is called by the "custom" interrupt handler. * * from sun3/sun3x/clock.c -tsutsui */ void clock_intr(struct clockframe *cf) { #ifdef LED_IDLE_CHECK extern char _Idle[]; /* locore.s */ #endif /* Pulse the clock intr. enable low. */ *ctrl_timer = 0; *ctrl_timer = 1; intrcnt[TIMER_LEVEL]++; /* Entertainment! */ #ifdef LED_IDLE_CHECK if (cf.cf_pc == (long)_Idle) #endif leds_intr(); /* Call common clock interrupt handler. */ hardclock(cf); curcpu()->ci_data.cpu_nintr++; }