root/lm-sensors/trunk/TODO @ 1703

Revision 1703, 4.7 KB (checked in by mds, 10 years ago)

add suggestion on libsensors for unknown chips

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1LM-Sensors TODO list
2Contact us if you have comments or wish to help.
3------------------------------------------------
4
5I2C CODE CHANGES
6================
7
8See TODO in the i2c package.
9
10
11KERNEL MODULES
12==============
13
14* Assistance on how to fix module refcounting is welcome.
15  To my understanding, it does not handle client->adapter->owner
16  correctly now, and it is possible to rmmod adapter while one of its
17  clients is in use.
18
19* mkpatch. Trace back Configure changes from 2.5 tree and
20  have it make clean diffs.
21  Applies to both i2c and sensors.
22
23* ACPI and SMBus host
24 - ACPI subsystem may access SMBus host too. Locks?
25 - On my ancient board using i2c-via, suspend and power switch status
26   seems to be in the same register with SCL and SDA.
27
28* Suspend-to-disk, losing Vcc
29 - Reset i2c client to avoid alarms and SCI interrupts. Currently
30   sensors do not create interrupt with alarms.
31
32* Return from suspend
33 - Reinitialize i2c client.
34
35* 2.4 / 2.5 cleanup
36  See adm1021, lm75, i2c-amd756, and i2c-amd8111 in kernel 2.5.54 for examples
37        - Remove inc_use and dec_use in adapters and chips, convert to owner.
38          Modules shouldn't adjust their own refcounts.
39        - Convert PCI drivers to use pci_driver structs,
40          registration, etc.
41        - Use module_init and module_exit
42        - Check return value of request_region(), don't use check_region()
43        - C99 initializers
44        - Remove excess #includes
45        - interrupts/locking
46        - Remove #ifdef MODULE, THIS_MODULE, MODULE_LICENSE, etc.
47        - Remove EXPORT_NO_SYMBOLS
48        - Remove other 2.1/2.2 #ifdefs
49
50* Handle -1 returns from i2c layer rather than just delivering 0xFF to
51  /proc and libsensors; report errors through /proc 'alarms' or
52  new 'fail' entry?
53* Add string function in sensors.o
54* ALL: cleanup_module is void; check also that cleaning up is done
55  properly, now we know that the module will be unloaded whatever we
56  do.
57* ALL chip drivers: add a readonly insmod option so we don't cause APM/ACPI
58  to go insane.
59* gl518sm: using iterate==2 causes a tread to be started. this thread remains
60  even after setting iterate==1 and/or removing the gl518sm module
61  <koenig@uranus.tat.physik.uni-tuebingen.de>
62* LM78 detection: Tom Webster has proven that the reset bit in the
63  id register can be one (strange!)
64* maxilife.c: Introduce new insmod variables
65* maxilife.c: Round REG_TO_VID correctly
66* icspll.c: Rewrite. The current implementation simply can't work at all.
67  It needs i2c-level access (too bad for SMBus-only adapters).
68* w83781d: Some features are still unsupported for the W8378[23].
69  Also, alarms seem to give strange results
70  sometimes, and there are some other minor problems, as indicated by
71  Jonathan Bradshaw <jonathan@NrgUp.Com>
72* Support 10-bit addresses. At this moment, they are supported nowhere, except
73  in Simon Vogl's i2c modules.
74* Better general locking, or at least a once-over to check no race-conditions
75  remain. This is part of the SMP-safeness, and can better be done at once.
76* adm9240: check whether the current voltage computations are correct.
77  Probably not, as they are different from the datasheet specifications.
78  Also check for the supported dallas chip.
79* lm80: Check how OS alarms work. At page 17 of the sheet, it tells
80  something completely different from the description at page 25.
81* gl518sm: Assume that new values are close to old values, so start with
82  trying to use a small range near the old values (already partially done)
83* lm77: Add detection in lm75.c and sensors-detect to distinguish from
84  an lm75. Add support for the two new registers.
85* Add MTP006F chip: http://www.myson.com/Pcd/MTP006/Mtp006.pdf
86  gfiala@s.netic.de (Guido Fiala) has one on his mainboard
87
88
89LIBRARY
90=======
91
92* Easier use of /proc and libsensors without knowing the chip type
93  At the moment a programmer wishing to use the lm_sensors package needs to know
94  what chips are supported and needs to add all those chips into his package.
95  If you were to add a field or function to your structures to the effect of
96  sensor-function a programmer could use the package a lot more simply.
97  For values you could do something like -
98    enum sensor-type { volt, fan, temp, volt_min, volt_max, fan_div, fan_min,
99    temp_over, temp_hyst }
100
101* reload does not work (Bison/Flex problem?).
102* Some library routines are pretty inefficient right now.
103* Library should be split in more separate files, for better linking
104  behaviour.
105* Some adm9240 labels start with a digit; change this, it leads to confusing
106  syntax in the conf file (they have to be quoted)
107
108
109PROGRAMS
110========
111
112* Sensors program needs to print a + before lm75 temperatures
113* Sensors program needs to be extended for many new chips
114
115
116OTHERS
117======
118
119* Examine watchdog-4.3 or later of meskes@debian.org (Michael Meskes)
120  tsx-11.mit.edu /pub/linux/sources/sbin or
121  sunsite.unc.edu /pub/linux/system/daemons/watchdog
122
Note: See TracBrowser for help on using the browser.