CVSROOT:        /cvs
Module name:    src
Changes by:     m...@cvs.openbsd.org    2012/04/18 04:56:55

Modified files:
        sys/arch/sgi/localbus: imc.c 

Log message:
Reading the IMC bus arbitration register is not reliable, at least on IP20,
and can return completely bogus values; writing these values back to the
register can have unexpected and hilarious side effects, such as disabling the
frame buffer.

Workaround this `feature' by reading the register in a loop until we read
twice the same value, and the value looks legit; then cache this value in a
global variable and handle the register from now on, as a write-only register.

Reply via email to