LM-Sensors TODO list Contact us if you have comments or wish to help. ------------------------------------------------ I2C CODE CHANGES ================ See TODO in the i2c package. KERNEL MODULES ============== * Harmonize 'smart fan' support. The following drivers support pwm. The ones that support automatic or smart fan support are identified. We have a /proc standard for manual PWM support that allows for /proc based applications like pwmconfig and fancontrol in our package. Without a /proc standard for smart fan support such applications are much more difficult. Driver Manual PWM Smart fan adm1026 standard not supported asb100 standard ?? it87 non-std yes lm85 standard yes vt1211 doesn't work not supported w83627hf standard not supported w83781d standard not supported (791 only) The following drivers are for chips that have manual PWM only. Driver Manual PWM mtp008 standard smsc47m1 standard vt8231 standard w83781d (except 791d) standard * Assistance on how to fix module refcounting is welcome. To my understanding, it does not handle client->adapter->owner correctly now, and it is possible to rmmod adapter while one of its clients is in use. * "uninstall" Makefile target. * mkpatch. Trace back Configure changes from 2.5 tree and have it make clean diffs. Applies to both i2c and sensors. * ACPI and SMBus host - ACPI subsystem may access SMBus host too. Locks? - On my ancient board using i2c-via, suspend and power switch status seems to be in the same register with SCL and SDA. * Suspend-to-disk, losing Vcc - Reset i2c client to avoid alarms and SCI interrupts. Currently sensors do not create interrupt with alarms. * Return from suspend - Reinitialize i2c client. * Handle -1 returns from i2c layer rather than just delivering 0xFF to /proc and libsensors; report errors through /proc 'alarms' or new 'fail' entry? See adm1021 for a partial example. * Add string function in sensors.o * ALL: cleanup_module is void; check also that cleaning up is done properly, now we know that the module will be unloaded whatever we do. * ALL chip drivers: add a readonly insmod option so we don't cause APM/ACPI to go insane. * gl518sm: using iterate==2 causes a tread to be started. this thread remains even after setting iterate==1 and/or removing the gl518sm module * LM78 detection: Tom Webster has proven that the reset bit in the id register can be one (strange!) * maxilife.c: Introduce new insmod variables * maxilife.c: Round REG_TO_VID correctly * icspll.c: Rewrite. The current implementation simply can't work at all. It needs i2c-level access (too bad for SMBus-only adapters). * w83781d: Some features are still unsupported for the W8378[23]. Also, alarms seem to give strange results sometimes, and there are some other minor problems, as indicated by Jonathan Bradshaw * Support 10-bit addresses. At this moment, they are supported nowhere, except in Simon Vogl's i2c modules. * Better general locking, or at least a once-over to check no race-conditions remain. This is part of the SMP-safeness, and can better be done at once. * adm9240: check whether the current voltage computations are correct. Probably not, as they are different from the datasheet specifications. Also check for the supported dallas chip. * lm80: Check how OS alarms work. At page 17 of the sheet, it tells something completely different from the description at page 25. * gl518sm: Assume that new values are close to old values, so start with trying to use a small range near the old values (already partially done) * Add MTP006F chip: http://www.myson.com/Pcd/MTP006/Mtp006.pdf gfiala@s.netic.de (Guido Fiala) has one on his mainboard LIBRARY ======= * Easier use of /proc and libsensors without knowing the chip type At the moment a programmer wishing to use the lm_sensors package needs to know what chips are supported and needs to add all those chips into his package. If you were to add a field or function to your structures to the effect of sensor-function a programmer could use the package a lot more simply. For values you could do something like - enum sensor-type { volt, fan, temp, volt_min, volt_max, fan_div, fan_min, temp_over, temp_hyst } * reload does not work (Bison/Flex problem?). * Some library routines are pretty inefficient right now. * Library should be split in more separate files, for better linking behaviour. * Some adm9240 labels start with a digit; change this, it leads to confusing syntax in the conf file (they have to be quoted) PROGRAMS ======== * Sensors program needs to print a + before lm75 temperatures OTHERS ====== * Examine watchdog-4.3 or later of meskes@debian.org (Michael Meskes) tsx-11.mit.edu /pub/linux/sources/sbin or sunsite.unc.edu /pub/linux/system/daemons/watchdog