Rename assembly cpu_exit to cpu_do_exit and make a C version of
cpu_exit() to do proper locking. While here, g/c switch_exit entry
point and don't call lwp_exit2 from cpu_exit.
From ad@
Completes PR port-sh3/35971 - my Jornada now boots to multiuser with a
LOCKDEBUG kernel.
Also pass "-ppax" in an attempt to get improved performance,
but this doesn't really work in the typical case, because the
install ramdisk image contains a version of pax(1) that doesn't
support the -M flag. (MAKEDEV detects the failure and falls back
to using mknod(8) as usual.)
is@. Even though the argument type changes as an effect of the
caddr_t removal, there really is no need to indirect where we didn't
before. Instead, add the appropriate cast.
instead of one by one using mknod. This is much faster (speed
increases of up to 20 times have been observed, but 3 to 5 times is
more common).
* One "-M" flag will create the mfs file system but not redirect output
to a temporary console; "-M -M" will also redirect output.
* Change the way we accumulate options to pass to MAKEDEV.local.
* For each supported chip, there's a struct lm_sensor array
that specifies the sensor data, like reg, bank, descr, rfact.
* Rather than having 3 functions to setup the voltage, temp and fan
sensors, just have one that will do all the three steps looking at
its struct lm_sensor members, simplifying a lot the code.
and more things that I can remember, our code now is synced with
OpenBSD, IMHO much better to understand and maintain in the future.
Supported chips added with the new code include:
* Winbond: W83627EHF, W83627DHG, W83637HF, W83783S, W83791D, W83791SD,
W83792D.
* Asus AS9912F.
My new mobo with the Winbond W83627DHG chip correctly reports
the values now:
lm0 at isa0 port 0x290-0x297: Winbond W83627DHG Hardware monitor
[juan@nocturno][~]> envstat -r
VCore: 1.232 V
+12V: 12.091 V
+3.3V: 3.264 V
+5V: 4.945 V
VBAT: 3.728 V
System Temp: 36.000 degC
CPU Temp: 29.500 degC
Aux Temp: 22.000 degC
CPU Fan: 1591 RPM
[juan@nocturno][~]>