CVSROOT:        /cvs
Module name:    src
Changes by:     chel...@cvs.openbsd.org 2022/12/05 18:56:44

Modified files:
        sys/arch/i386/i386: acpi_machdep.c apm.c cpu.c lapic.c 
        sys/arch/i386/isa: clock.c 
        sys/arch/i386/include: cpu.h _types.h 

Log message:
i386: switch to clockintr

In lapic timer mode:

- Rip out lapic_delay().  We can't use the lapic timer to delay(9) when
it's running in one-shot mode.
- Add a randomized statclock(), stathz = hz.
- Add profiling support, profhz = stathz * 10.
- Wire up lapic_intrclock.

In i8254-mode:

- i8254's clockintr() does not have a monopoly on hardclock(9).
- mc146818's rtcintr() does not have a monopoly on statclock().
- In profiling mode, the statclock() will drift very slightly
because (profhz = 1024) does not divide into 1 billion.  Need to
consider how best to fix this.

ACPI suspend/resume tested by mlarkin@ via ESXi.  Tons of testing by
Scott Bennett on a Pentium 4 machine; APM suspend/resume confirmed to
work there, too.

Link: https://marc.info/?l=openbsd-tech&m=166776370803446&w=2

ok mlarkin@

Reply via email to