root/i2c/trunk/CHANGES

Revision 5295, 14.8 kB (checked in by khali, 1 week ago)

Fallback to simple depmod if System.map can't be found.

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