root/i2c/trunk/CHANGES @ 4022

Revision 4022, 14.2 KB (checked in by khali, 7 years ago)

Drop i2c-dev's empty command implementation. This is a backport
from Linux 2.6, original patch from Laurent Riffard. Also update the
documentation not to suggest an empty implementation of command.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1i2c CHANGES file
2-----------------------
3This is a list of the most important changes between 2.x versions. It is by
4no means complete, listing only user-visible changes which are interesting.
5The ultimate way to know what has changed is to run diff, or even neater,
6ask CVS about it:
7
8  * Checkout the archive (see doc/cvs for how you can do this)
9  * Determine which tags are valid, by running this command from the
10    project root directory:
11      cvs status -v -l Makefile
12    Valid tags are usually like form V2-1-0 for version 2.1.0
13  * Ask cvs for the difference between two versions:
14      cvs diff -r TAG1 -r TAG2 DIFF-OPTIONS
15    for example:
16      cvs diff -r V2-0-0 -r V2-0-1 -u
17
18-----------------------------------------------------------------------------
19
202.9.3 (2005????)
21  doc/functionality: Fix I2C_FUNC_PROTOCOL_MANGLING description (Hideki
22                     Iwamoto)
23  doc/writing-clients: New memory allocation model
24                       Drop empty command implementation example
25  i2c-core: Fix logic error in SMBus Write Word transaction with software
26            PEC (Hideki Iwamoto)
27            Fix temporary buffer size for SMBus Block Write transaction with
28            software PEC (Hideki Iwamoto)
29            Fix buffer overrun in SMBus Block Write and Block Process Call
30            transactions (Hideki Iwamoto)
31            Rewrite software PEC implementation (2.6 backport)
32            Improve debugging in i2c_transfer (2.6 backport)
33  i2c-dev: Drop empty command implementation (2.6 backport, Laurent Riffard)
34  i2c.h: Fix union i2c_smbus_data definition
35         Delete 2 out-of-date, colliding ioctl defines
36         Drop I2C_FUNC_SMBUS_*_PEC (2.6 backport)
37         Drop I2C_SMBUS_*_PEC (2.6 backport)
38
392.9.2 (20050906)
40  Makefile: Do not compile i2c-algo-biths by default
41            Detect 2.6+ kernels and stop
42  i2c-core, i2c-proc: Fix cast warnings on gcc 3.3
43  i2c.h: Drop additional members of struct i2c_msg, so as to
44         restore the binary compatibility with Linux 2.4
45  i2c-dev.h: Fix compilation problem (missing include)
46  i2c-algo-bit: Drop Linux 2.5+ compatibility code
47
48
492.9.1 (20050412)
50  Interface changes
51        - Restore binary compatibility with Linux 2.4
52  Makefile: Revert the header install removal
53            Support sparc64 (Nicolas Boullis)
54            Support mips and sparc32 (Aurelien Jarno)
55            Use -fno-strict-aliasing on all architectures
56  i2c-core: Unhide i2c_get_client
57            Fix force parameter loop iteration
58  i2c-id.h: Add ID for Marvell 64xxx
59            Sync IDs with Linux 2.6
60  i2c.h: Drop 2.4.9 compatibility define of MODULE_LICENSE
61         Fix defines lacking parentheses (Corey Minyard)
62  i2c-algo-bit, i2c-algo-biths, i2c-algo-pcf: Declare I2C_FUNC_I2C
63            as being supported
64  i2c-algo-biths: Replace assembly code by C (Aurelien Jarno)
65
662.9.0 (20041228)
67  Interface changes
68        - Struct i2c_adapter: restore inc_use() and dec_use(), remove owner
69        - Struct i2c_algorithm: remove owner
70        - Struct i2c_driver: restore inc_use() and dec_use(), remove owner
71        - Restore controlling_mod argument in i2c_register_entry()
72        These changes restore compatibility with pre-2.8.0 i2c, in
73        particular with the version of i2c present in the Linux 2.4 kernels.
74  Makefile: Do not export any kernel header
75  i2c-id.h: Add IDs for virtual adapter, lpc47b397
76  i2c-proc.c: Increase SENSORS_ENTRY_MAX to 24
77  i2c-proc.c: Fix a bug in the real parsing code
78  mkpatch: Generate diffs for drivers/i2c/Config.in and
79           drivers/i2c/Makefile again
80
812.8.8 (20041007)
82  Makefile: Do not export i2c-dev.h
83  i2c-pport.c: Code cleanups
84               Do not test lines, i2c-algo-bit already does
85  i2c-proc.c: Do not rely on procname but instead on ctl_name to determine
86              sysctl table lengths. (Louis-Martin Cote)
87
882.8.7 (20040611)
89  Makefile: Do not run depmod on staged installs (Peter Breitenlohner)
90  i2c-id.h: Add IDs for MAX6900, PCILYNX, SIBYTE, SGI_VINO, SGI_MACE
91  i2c-proc.c: Fail to compile if kernel lacks sysctl support
92
93NOTE: there was no 2.8.5 or 2.8.6 release
94
952.8.4 (20040207)
96  i2c-id.h: Add IDs for the OV511 project
97  i2c-philips-par.c: Fix bus reset with type!=0
98
992.8.3 (20040115)
100  File i2c-rh.spec: Updated
101  Makefile: Update Alpha CMODFLAGS (Daniel Nilsson)
102  Makefiles: Remove -o and -g arguments to install
103  i2c.h: Add I2C_M_RECV_LEN and I2C_M_RECV_PEC
104  i2c-algo-bit.c: Add SMBus block read and block process call emulation
105  i2c-core.c: Add SMBus block read and block process call emulation
106
1072.8.2 (20031211)
108  Makefiles: Fail if no kernel .config file exists
109  i2c-algo-bit: Fix sclhi() for adapters that do not have getscl();
110                Enable bit_test for adapters that do not have getscl();
111                Mostly rewrite test_bus(), cleaner and probably faster.
112  i2c-id.h:  Add IDs for FSC Hermes, usbvision, and
113             drivers found in the Linux 2.4.22 kernel.
114
1152.8.1 (20031005)
116  Modules (various): Fix includes for compilation on alpha
117  i2c.h: Add utility function i2c_delay(1)
118  i2c-algo-8xx.h: Header fix (Richard Laing)
119  i2c-core.c: Trivial bugfix to i2c_check_addr()
120  i2c-dev.c: Ioctl fixes: user/kernel bug, memory leak
121             (Robert T. Johnson, Sergey Vlasov)
122  i2c-elektor.c: Fix memory mapped I/O
123  i2c-id.h: Add IDs for the LM90, ASB100, Radeon, Xeon, MAX6650
124
1252.8.0 (20030714)
126  Interface changes:
127        - File i2c-dev.h: remove all userspace code, moved to
128                          i2c-dev.h in lm_sensors2 package
129        - Struct i2c_adapter: remove inc_use() and dec_use(), add owner,
130                              remove client_count, replace semaphore lock
131                              with semaphores bus and list.
132        - Struct i2c_algorithm: add owner
133        - Struct i2c_driver: remove inc_use() and dec_use()
134        - Struct i2c_msg: type changes; add err and done
135        - Struct i2c_smbus_ioctl_data, i2c_rdwr_ioctl_data: type changes
136        - Remove controlling_mod argument in i2c_register_entry()
137        - Remove i2c_inc_use_client() and i2c_dec_use_client()
138        - Add i2c_client_command()
139  Makefiles: Handle multiple UTS_RELEASE definitions in linux/version.h;
140             Remove old gzipped modules; remove old misc directory if empty;
141             Don't use /usr/include headers for modules;
142             Remove pre-2.4 installation method;
143             Run depmod after module installation
144  Modules (all): Cleanups including
145        - C99 initializers
146        - Remove #ifdef MODULE
147        - Remove #ifndef THIS_MODULE
148        - Remove #ifndef MODULE_LICENSE
149        - Remove init_MUTEX #define
150        - Remove EXPORT_NO_SYMBOLS
151        - Remove dummy xxx_command() definitions
152        - Use module_init() and module_exit()
153  drivers (several): make spinlock_t's static
154  i2c-algo-biths.[ch]: (new) Rewrite of i2c-algo-bit with improved
155                       bus timing and error handling.
156                       This is not a drop-in replacement for i2c-algo-bit.
157                       Interface subject to change.
158  i2c-core.c: Rewrite locking;
159              Remove initialization of other modules in i2c_init_all()
160  i2c-dev.c: Fixes from kernel 2.4.21-rc7
161  i2c-id.h: add IDs for i2c-algo-biths, W83627HF, LM85, nForce2, OMAHA, GUIDE,
162            MPC107, IXP2000, IXP425, IOP3XX, UDA1342, S3VIA
163  i2c-proc.c: Fix ignore and probe tests
164  mkpatch: Remove patching of drivers/char/mem.c
165
1662.7.0 (20021208)
167  drivers (several): C99 initializers (sync w/ kernel 2.5.49); HZ fixes
168  i2c.h: Add I2C_M_IGNORE_NAK, I2C_M_NO_RD_ACK to flags.
169  i2c-algo-bit.c: Support I2C_M_IGNORE_NAK. Use time_after() with jiffies.
170           Debug message improvements. Fix clock high time in sclhi().
171  i2c-algo-8xx.c: Several updates and cleanups
172  i2c-algo-ibm_ocp.[ch], i2c-adap-ibm_ocp.c: Rename i2c_iic_[add,del]_bus to
173           i2c_ocp... to avoid duplicate with i2c-algo-ite in kernel
174  i2c-core.c: Fix emulated i2c block writes
175  i2c-dev.c: Remove data copy limit
176  i2c-id.h: Add driver IDs for smart battery, IPMI, BMC, FS451, AMD8111,
177            SCx200
178  i2c-proc.h: Add SENSORS_INSMOD_8; add naming for new dummy adapters
179  mkpatch: Fix export-objs
180  doc/i2c-protocol: Comment new client flags, fix I2C_M_NOSTART samples.
181  Makefile: Take kernel source location from /lib/modules/x.x.x/build;
182            add flags for x86_64 compiles
183
1842.6.5 (20020915)
185  mkpatch: Fix i2c-algo-8xx.o target causing kernel to not compile;
186           add doc/i2c-old-porting, i2c-algo-8xx.[ch], i2c-adap-ibm_ocp.c,
187           i2c-algo-ibm_ocp.[ch], i2c-frodo, i2c-rpx,
188           i2c-pport, i2c-pcf-epp.
189  i2c-adap-ibm_ocp.c, i2c-elektor.c, i2c-pcf-epp.c : Replaced deprecated cli()
190           and sti() with spin_lock_irq(&driver_lock); and
191           spin_unlock_irq(&driver_lock);  Added spinlock_t driver_lock =
192           SPIN_LOCK_UNLOCKED
193  i2c-adap-ibm_ocp.c, i2c-elektor.c, i2c-pcf-epp.c : Moved driver_lock to
194           module level and renamed to irq_driver_lock to avoid conflict with
195           driver_lock semaphore in i2c-core.
196  i2c-algo-8xx.c: Replaced deprecated save_flags(flags); cli() with
197           local_irq_save(flags); and restore_flags(flags) with
198           local_irq_restore(flags);
199  i2c-core.c: Remove buffer size limit in i2cproc_bus_read();
200              add initializations for modules added to mkpatch.
201  i2c-id.h: Add driver IDs for MPC824X, SIS630, SIS645
202
2032.6.4 (20020719)        (in kernel 2.5.32)
204  doc/i2c-old-porting: New
205  i2c.h: Add defines for SMBus 2.0
206  i2c-algo-8xx.[ch]: Compile updates, Add GPL
207  i2c-algo-bit.c: Wait for clock low extension by slow devices;
208                  add cond_resched() for 2.5 kernels   
209  i2c-algo-ibm_ocp.[ch], i2c-adap-ibm_ocp.c: renamed from *ppc405*, rewritten
210                  to support the ppc4xx kernel and multiple 4xx devices
211  i2c-core.c: Add SMBus 2.0 PEC and Block Process Call support;
212              change back to 'old' CONFIG names;
213              fix i2c emulated process call
214  i2c-dev.c: Add SMBus 2.0 PEC and Block Process Call support
215  i2c-dev.h: Add SMBus 2.0 Block Process Call support
216  i2c-frodo.c: New. Support for I2C on Frodo (2d3D, Inc. SA-1110 Dev Board).
217  i2c-id.h: Add driver IDs for Savage 4, smbus-arp, smbus-alert, DS1307,
218            SA-1110, SMSC47M1, ADV717x, ZR36067, ZR36120, VT1211, LM92, Frodo.
219  i2c-pcf-epp.c: Remove compile warning
220  i2c-proc.c: Check kmalloc() return code (sync with kernel 2.4.18)
221  i2c-rpx.c: Compile updates
222  mkpatch: Change back to 'old' CONFIG names
223  Makefiles: For 2.4+ kernels, modules now install in
224             kernel/drivers/i2c , not misc/ , and
225             removes old versions in misc/ .
226             Don't compile i2c-philips-par if no CONFIG_PARPORT.
227             Change back to 'old' CONFIG names.
228
2292.6.3 (20020322)        (in kernel 2.5.24)
230  TODO: Many updates
231  Config.in: i2c-proc requires sysctl
232  doc/i2c-velleman: New
233  drivers (all): Add message loglevels to printk's
234  i2c.h: Add defines for 2-byte address block reads/writes, SAA7108
235  i2c-core.c, i2c-dev.h: Add SMBus emluated i2c block reads
236  i2c-core.c: Increase max buffer size for /proc/bus/i2c-x handler
237  i2c-pcf-epp.c: Fix so it compiles
238  i2c-philips-par.c: Check return code of parport_claim_or_block()
239  i2c-proc.[ch]: Change i2c_sysctl_real 3rd arg to unsigned for kernel 2.2.19;
240                 printk if no sysctl support in kernel
241  mkpatch: Sync with kernel 2.4.15 (Configure.help)
242  Module.mk: Add i2c-pcf-epp
243
2442.6.2 (20011118)
245  drivers (all): Add version to printk
246  drivers (all): sync with kernel 2.4.11 (Add MODULE_LICENSE("GPL"))
247  i2c-algo-8xx.c: Fix nasty cache problem
248  i2c-algo-pcf.c: Fix detection for some boards (PIN bit)
249  i2c-core.c: Don't redefine init_MUTEX() for kernels 2.2.18+;
250              fix CONFIG_xxx inconsistencies for i2c-elektor, i2c-elv,
251              i2c-philips-par, i2c-velleman
252  i2c-elektor.c: Fix segfault when module not inserted, and
253                 small IRQ issue.
254  i2c-id.h: Add device IDs for Fujitsu-Siemens Poseidon and Scylla;
255            sync with kernel 2.4.10 (ITE IIC id's); add SAA7134 ID;
256            add PCF8591 ID.
257  mkpatch: Fix CONFIG_xxx inconsistencies for i2c-elektor, i2c-elv,
258           i2c-philips-par, i2c-velleman
259
2602.6.1 (20010830)        (in kernel 2.4.13)
261  drivers (all): Sync with kernel 2.4.2 (malloc.h -> slab.h)
262  i2c-core.c: Fix iteration bug in i2c_get_client();
263              initialize i2c-proc if built-in.
264  i2c-dev.c: Sync with kernel 2.4.9 (i2cdev_lseek -> no_llseek)
265  i2c-id.h: Add device ID for Chrontel 700X driver;
266            add ID for primitive parallel port driver.
267  i2c-pport.c: New - not mkpatched by default
268  mkpatch/Config.in: PPC405 fix
269
2702.6.0 (20010612)
271  Makefile: Added support for alpha architecture
272  i2c.h: Add #defines from lm_sensors i2c-isa.h
273  i2c-algo-8xx.[ch]: New - not built or mkpatched by default
274  i2c-algo-pcf.c: Increase I2C clock speed from 6.25 kHz to 50 kHz;
275                  add detect code; remove test_bus function;
276                  add support for multiple messages (proper generation
277                  of stop/repstart sequences)
278  i2c-algo-ppc405.[ch]: New - not built or mkpatched by default
279  i2c-dev.c: Fix cleanup
280  i2c-elektor.c: Add Alpha detection; add support for memory mapped 8584
281                 behind a PCI bridge on Alphas; set interrupt bit correctly
282  i2c-elektor.h: Comment out unused structure for now
283  i2c-id.h: Add device ID's from lm_sensors sensors.h; add DEC Tsunami;
284            added ID's for VPX32XX, DRP3510, SP5055, STV0030.
285  i2c-ppc405.[ch]: New - not built or mkpatched by default
286  i2c-ppc405adap.h: New
287  i2c-proc.[ch]: New, from lm_sensors sensors.[ch]
288  i2c-rpx.c: New - not built or mkpatched by default
289  mkpatch: Add support for i2c-proc.[ch]
290
2912.5.5 (20010115)        (in kernel 2.4.0-prerelease)
292  mkpatch no longer supports 2.3 kernels
293  i2c-core.c: Fix SMBus emulated i2c block writes
294
2952.5.4 (20001012)
296  i2c-id.h: Add VES1893, VES1820, SAA7113, TDA8444
297  i2c-pcf-epp.c: New (no .h file, not compiled or patched to kernel)
298
2992.5.3 (20001008)
300  i2c-dev.c: Fix bug that MOD_COUNT was incremented instead of decremented
301             on close; add devfs support.
302  i2c-id.h: Add algorithms for ACPI and ACCESS.bus
303  i2c-id.h: Add smart battery devices
304  i2c-id.h: Add ALI 1535 device
305  i2c-core.c, i2c-dev.c, i2c-dev.h, i2c.h: Add i2c block write support
306
3072.5.2 (20000709)
308  i2c-philips-par: Now compiles on all 2.2 kernels
309  i2c-core: Corrected some SMBus block commands-related stuff
310  i2c-core: Much better error checking in (de)registering functions
311  i2c-core: Saner and now even documented handling of dummy drivers
312
3132.5.1 (20000618) and older:
314  No data available
315
Note: See TracBrowser for help on using the browser.