hwmon: (w83781d) Fix W83782D support (NULL pointer dereference)
[linux-2.6] / drivers / parport / ChangeLog
1 2001-10-11  Tim Waugh  <twaugh@redhat.com>
2         * parport_pc.c, parport_serial.c: Support for NetMos cards.
3         + Patch originally from Michael Reinelt <reinelt@eunet.at>.
4
5 2002-04-25  Tim Waugh  <twaugh@redhat.com>
6
7         * parport_serial.c, parport_pc.c: Move some SIIG cards around.
8         Patch from Andrey Panin.
9
10 2002-01-20  Tim Waugh  <twaugh@redhat.com>
11
12         * parport_pc.c (parport_pc_compat_write_block_pio,
13         parport_pc_ecp_write_block_pio, parport_pc_ecp_read_block_pio):
14         Use the default implementations if the caller wants to use
15         O_NONBLOCK.
16
17 2002-02-25  Tim Waugh  <twaugh@redhat.com>
18
19         * parport_pc.c: Make sure that priv->ctr_writable includes IntEn
20         even if IRQ is given as a parameter.
21
22 2002-01-21  Tim Waugh  <twaugh@redhat.com>
23
24         * daisy.c: Apply patch from Max Vorobiev to make parport_daisy_select
25         work for ECP/EPP modes.
26
27 2002-01-13  Niels Kristian Bech Jensen  <nkbj@image.dk>
28
29         * parport_pc.c: Change some occurrences of frob_set_mode to
30         ECR_WRITE.  This fixes PLIP.
31
32 2002-01-04  Tim Waugh  <twaugh@redhat.com>
33
34         * share.c (parport_claim_or_block): Sleep interruptibly to prevent
35         a possible deadlock.
36
37 2001-12-07  Damian Gruszka  <damian.gruszka@VisionSystems.de>
38
39         * parport_pc.c (ECR_WRITE): Define.  If there are forbidden bits
40         in the ECR register for some chips, this will be a useful place to
41         put that knowledge.
42         (change_mode): Use ECR_WRITE.
43         (parport_pc_restore_state): Likewise.
44         (parport_ECPPS2_supported): Likewise.
45         (parport_ECPEPP_supported): Likewise.
46         (irq_probe_EPP): Likewise.
47         (programmable_irq_support): Likewise.
48         (programmable_dma_support): Likewise.
49         (parport_pc_probe_port): Likewise.
50
51         (frob_set_mode): New function.  Set the mode bits of the ECR.
52         (get_fifo_residue): Use frob_set_mode.
53         (parport_pc_ecpepp_read_data): Likewise.
54         (parport_pc_ecpepp_write_data): Likewise.
55         (parport_pc_ecpepp_read_addr): Likewise.
56         (parport_pc_ecpepp_write_addr): Likewise.
57         (parport_pc_compat_write_block_pio): Likewise.
58         (parport_pc_ecp_write_block_pio): Likewise.
59         (parport_ECR_present): Likewise.
60         (parport_ECP_supported): Likewise.
61         (parport_EPP_supported): Likewise.
62         (parport_ECPEPP_supported): Likewise.
63         (programmable_irq_support): Likewise.
64         (irq_probe_ECP): Likewise.
65         (programmable_dma_support): Likewise.
66
67         (parport_pc_enable_irq): Only enable interrupts if we know which
68         IRQ line they will come from.
69         (parport_pc_init_state): Set nErrIntrEn at initialisation.
70         (parport_pc_restore_state): Only write writable bits of CTR.
71         (parport_irq_probe): If no IRQ is found, take ackIntEn out of the
72         writable bit set.
73
74 2001-12-07  Tim Waugh  <twaugh@redhat.com>
75
76         * parport_pc.c (parport_pc_fifo_write_block_pio): Correct typo.
77         (parport_pc_init_state): Only set ackIntEn if we know which IRQ
78         line the interrupts will come from.
79
80 2001-12-07  Tim Waugh  <twaugh@redhat.com>
81
82         * ieee1284_ops.c (parport_ieee1284_epp_write_addr,
83         parport_ieee1284_epp_read_addr): Actually do something useful.
84
85 2001-12-07  Tim Waugh  <twaugh@redhat.com>
86
87         * parport_pc.c (dmaval): Don't use DMA by default.  It seems to be
88         too buggy at the moment.  Use 'dma=auto' to restore the previous
89         behaviour.
90
91 2001-12-07  Tim Waugh  <twaugh@redhat.com>
92
93         * daisy.c (DEBUG): Undefine.
94
95 2001-12-06  Tim Waugh  <twaugh@redhat.com>
96
97         * ieee1284_ops.c (parport_ieee1284_ecp_read_data): Mask off
98         PARPORT_CONTROL_AUTOFD as well.  Bug spotted by Joe
99         <joeja@mindspring.com>.
100
101 2001-12-03  Rich Liu  <Rich.Liu@ite.com.tw>
102
103         * parport_pc.c (sio_ite_8872_probe): ITE8873 is a single-port
104         serial board, not a serial+parallel.
105
106 2001-11-30  Niels Kristian Bech Jensen  <nkbj@image.dk>
107
108         * parport_pc.c: Fix compiler warning.
109
110 2001-11-14  Tim Waugh  <twaugh@redhat.com>
111
112         * parport_pc.c (parport_pc_pci_probe): Hooks for PCI cards before
113         and after probing for ports.
114         * parport_serial.c (parport_register): Likewise.
115
116 2001-11-12  Tim Waugh  <twaugh@redhat.com>
117
118         * parport_pc.c (init_module): Warn when parameters are ignored.
119
120 2001-11-01  Damian Gruszka  <damian.gruszka@VisionSystems.de>
121
122         * parport_serial.c (serial_register): Set base_baud before
123         calling register_serial.
124
125 2001-10-26  Tim Waugh  <twaugh@redhat.com>
126
127         * parport_pc.c (parport_irq_probe): When ECR programmable IRQ
128         support fails, generate interrupts using the FIFO even if we don't
129         want to use the FIFO for real data transfers.
130         (parport_pc_probe_port): Display the ECR address if we have an
131         ECR, not just if we will use the FIFO.
132
133 2001-10-24  Dave Strauss  <D.Strauss@motorola.com>
134
135         * parport_pc.c (parport_pc_compat_write_block_pio,
136         parport_pc_ecp_write_block_pio): Allow a few seconds for an ECP
137         transfer to finish up.
138
139 2001-10-11  Tim Waugh  <twaugh@redhat.com>
140
141         * parport_pc (sio_ite_8872_probe): New function, submitted by Rich
142         Liu from ITE.  Cleaned up, removed bogus phys_to_virt calls.
143
144 2001-10-24  Tim Waugh  <twaugh@redhat.com>
145
146         * parport_pc.c: Support for AKS AladdinCARD.  Patch from
147         Aladdin Knowledge Systems (Christian Groessler).
148
149 2001-10-24  Tim Waugh  <twaugh@redhat.com>
150         
151         * ieee1284_ops.c (parport_ieee1284_ecp_read_data): Try to minimise
152         turnaround time.
153
154         * ieee1284.c (parport_poll_peripheral): Try a couple of times
155         first without delaying.
156
157 2001-10-10  Tim Waugh  <twaugh@redhat.com>
158
159         * parport_pc.c: Support for OX16PCI954 PCI card.
160
161 2001-10-10  Tim Waugh  <twaugh@redhat.com>
162
163         * parport_pc.c: Support for OX12PCI840 PCI card (reported by
164         mk@daveg.com).  Lock-ups diagnosed by Ronnie Arosa (and now we
165         just don't trust its ECR).
166
167 2001-10-10  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
168
169         * parport_pc.c: Support for AVLAB cards.
170
171 2001-10-10  Tim Waugh  <twaugh@redhat.com>
172
173         * ieee1284_ops.c (ecp_forward_to_reverse, ecp_reverse_to_forward):
174         Remember to retry direction switch if it fails.  Patch from David
175         Lambert.
176
177 2001-10-08  David C. Hansen  <haveblue@us.ibm.com>
178
179         * share.c: Make driverlist_lock and parportlist_lock static.
180
181 2001-10-08  Philip Blundell  <philb@gnu.org>
182
183         * parport_pc.c: New modular parameter verbose_logging.
184         Make port->modes indicate the modes that we are prepared to use,
185         rather than the modes that are available.
186
187 2001-10-07  Tim Waugh  <twaugh@redhat.com>
188
189         * parport_pc.c (parport_pc_probe_port): Fix memory leak spotted by
190         Kipp Cannon.
191
192 2001-10-07  Tim Waugh  <twaugh@redhat.com>
193
194         * parport_serial.c: Remove NetMos support, since it causes problems
195         for some people.
196
197 2001-08-30  Tim Waugh  <twaugh@redhat.com>
198
199         * parport_serial.c (parport_serial_pci_probe): Clean-up on partial
200         registration failure.
201
202 2001-08-14  Tim Waugh  <twaugh@redhat.com>
203
204         * parport_pc.c (parport_pc_init_superio): Allow for more than one
205         SuperIO device.  Patch from Rich Lio (ITE).
206
207 2001-08-11  Tim Waugh  <twaugh@redhat.com>
208
209         * parport_pc.c: Support for Titan Electronics cards.
210
211 2001-08-08  Tim Waugh  <twaugh@redhat.com>
212
213         * share.c (parport_unregister_device): Remove device from wait list
214         too.
215
216 2001-06-20  Tim Waugh  <twaugh@redhat.com>
217
218         * parport_pc.c: Make 'io_hi=0' work.
219
220 2001-05-31  Tim Waugh  <twaugh@redhat.com>
221
222         * parport_serial.c: New file.
223
224 2001-06-05  Tim Waugh  <twaugh@redhat.com>
225
226         * parport_pc.c (parport_pc_unregister_port): New exported function.
227         Do the opposite of parport_pc_probe_port.
228         (cleanup_module): Use it.
229
230 2001-05-22  Juan Quintela  <quintela@mandrakesoft.com>
231
232         * parport_amiga.c: Set printk levels.
233         * parport_gsc.c: Likewise.
234         * parport_mfc3.c: Likewise.
235         * parport_pc.c: Likewise.
236         * parport_sunbpp.c: Likewise.
237         * probe.c: Likewise.
238         * share.c: Likewise.
239
240 2001-05-10  Fred Barnes  <frmb2@ukc.ac.uk>
241
242        * parport_pc.c (parport_pc_epp_read_data): added support for
243        reading from a w91284pic peripheral, flag is PARPORT_W91284PIC.
244
245 2001-05-07  Fred Barnes  <frmb2@ukc.ac.uk>
246  
247         * parport_pc.c (parport_pc_epp_read_data,
248         parport_pc_epp_write_data, parport_pc_epp_read_addr,
249         parport_pc_epp_write_addr): support for fast reads/writes using
250         the PARPORT_EPP_FAST flag.
251  
252         * ieee1284.c (parport_read, parport_write): added code to handle
253         software EPP mode (IEEE1284_MODE_EPPSWE).  Added code to allow
254         BYTE mode reverse transfers (previously always went for NIBBLE
255         mode).
256  
257         * ieee1284_ops.c (parport_ieee1284_epp_read_data,
258         parport_ieee1284_epp_write_data): fixed various polarity problems.
259         Also (theoretically) fixed address versions (.._addr), but no
260         hardware to test this on.
261  
262         * parport_pc.h: added parport_dump_state() function for debugging.
263         Needs to have DEBUG_PARPORT to be defined for it to be included.
264  
265 2001-05-03  Tim Waugh  <twaugh@redhat.com>
266
267         * parport_pc.c: Fix the compile problem I introduce from the last
268         change.
269
270 2001-04-20  Paul Gortmaker  <p_gortmaker@yahoo.com>
271
272         * parport_pc.c: Cut down the size quite a bit (more than 4k off
273         the object, about 1k off the zImage) for the older non-PCI
274         machines which are typically resource starved anyway...
275
276 2001-03-26  R Horn  <rjh@world.std.com>
277
278         * parport_pc.c: Some commentary changes.
279
280 2001-04-19  Tim Waugh  <twaugh@redhat.com>
281
282         * parport_pc.c (parport_pc_probe_port): Remove __devinit
283         attribute.  Export unconditionally.
284
285 2001-04-14  Jeff Garzik  <jgarzik@pobox.com>
286
287         Merged:  2001-03-30  Tim Waugh  <twaugh@redhat.com>
288
289         * drivers/parport/parport_pc.c: Make Via SuperIO chipsets behave
290         like everything else with respect to irq= and dma= parameters.
291
292 2001-04-08  Tim Waugh  <twaugh@redhat.com>
293
294       * parport_pc.c (parport_pc_save_state): Read from the soft copy of
295       the control port.
296       (parport_pc_restore_state): Update the soft copy of the control
297       port.
298
299 2001-03-26  Tim Waugh  <twaugh@redhat.com>
300
301         * share.c (parport_find_number, parport_find_base): Trigger
302         a lowlevel driver load if there are no ports yet.
303
304 2001-03-26  Tim Waugh  <twaugh@redhat.com>
305
306         * parport_pc.c (parport_ECP_supported): Remove the IRQ conflict
307         check since it seems totally unreliable.
308
309 2001-03-02  Tim Waugh  <twaugh@redhat.com>
310
311         * ieee1284_ops.c (parport_ieee1284_read_nibble): Reset nAutoFd
312         on timeout.  Matches 2.2.x behaviour.
313
314 2001-03-02  Andrew Morton
315
316         * parport_pc.c (registered_parport): New static variable.
317         (parport_pc_find_ports): Set it when we register PCI driver.
318         (init_module): Unregister PCI driver if necessary when we
319         fail.
320
321 2001-03-02  Tim Waugh  <twaugh@redhat.com>
322
323         * ieee1284_ops.c (parport_ieee1284_write_compat): Don't use
324         down_trylock to reset the IRQ count.  Don't even use sema_init,
325         because it's not even necessary to reset the count.  I can't
326         remember why we ever did.
327
328 2001-01-04  Peter Osterlund  <peter.osterlund@mailbox.swipnet.se>
329
330         * ieee1284.c (parport_negotiate): Fix missing printk argument.
331
332 2001-01-03  Paul Schleger  <Paul.Schleger@t-online.de>
333
334         * probe.c (parse_data): Get rid of trailing blanks in values.
335         Needed for XEROX XJ8C printer.
336
337 2001-01-03  Tim Waugh  <twaugh@redhat.com>
338
339         * parport_pc.c (parport_pc_probe_port): Say something when probes
340         are omitted.
341
342 2001-01-03  Tim Waugh  <twaugh@redhat.com>
343
344         * parport_pc.c (sio_via_686a_probe): Correct dma=255 fix.
345
346 2000-11-21  Tim Waugh  <twaugh@redhat.com>
347
348         * parport_pc.c (parport_pc_ecp_write_block_pio): Fix
349         reverse-to-forward logic.  Spotted by Roland Kuck
350         <rci@cityweb.de>.
351
352 2000-09-16  Cesar Eduardo Barros  <cesarb@nitnet.com.br>
353
354         * parport_pc.c (sio_via_686a_probe): Handle case
355         where hardware returns 255 for IRQ or DMA.
356
357 2000-07-20  Eddie C. Dost  <ecd@skynet.be>
358
359         * share.c (attach_driver_chain): attach[i](port) needs to be
360         replaced by attach[count](port).
361
362 2000-07-20  Eddie C. Dost  <ecd@skynet.be>
363
364         * daisy.c (add_dev): kmalloc args are in wrong order.
365
366 2000-07-12  Tim Waugh  <twaugh@redhat.com>
367
368         * share.c: Documentation for parport_{get,port}_port,
369         parport_find_{number,base}.
370
371 2000-07-12  Tim Waugh  <twaugh@redhat.com>
372
373         * share.c (parport_unregister_device): Remove unneeded locking
374         (test cad==dev).
375         (parport_claim): Likewise.
376         (parport_find_number): New function.
377
378 2000-07-12  Tim Waugh  <twaugh@redhat.com>
379
380         * share.c (parport_register_port): Hold the parportlist_lock while
381         looking for a free parport number.
382         (parport_register_driver): Make sure that attach can block.
383         (attach_driver_chain): Likewise.
384
385 2000-07-12  Tim Waugh  <twaugh@redhat.com>
386
387         * share.c (call_driver_chain): Do reference counting things.
388         (parport_get_port): New function.
389         (parport_put_port): New function.
390         (parport_register_port): Initialise reference count to zero.
391         (parport_unregister_port): Check reference count rather than
392         driver list to see if we can free the port.
393
394 2000-07-12  Tim Waugh  <twaugh@redhat.com>
395
396         * share.c: Clarifications in doc comments.
397
398 2000-07-12  Tim Waugh  <twaugh@redhat.com>
399
400         * share.c (parport_unregister_port): Fix typo in comment.
401
402 2000-07-11  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
403
404         * parport_pc.c: Support for the full range of Timedia cards.
405
406 2000-07-08  Tim Waugh  <twaugh@redhat.com>
407
408         * daisy.c: License block comments as part of parportbook.
409         * ieee1284.c: Likewise.
410         * share.c: Likewise.
411
412 2000-06-30  Petr Vandrovec  <vandrove@vc.cvut.cz>
413
414         * procfs.c (do_hardware_modes): Generated string can be up to 34
415         chars long.
416
417 2000-06-20  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
418
419         * parport_pc.c (parport_pc_compat_write_block_pio): Warn about
420         change_mode failures.
421         (parport_pc_ecp_write_block_pio): Likewise.
422         (parport_pc_ecp_read_block_pio): Likewise.
423
424 2000-06-20  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
425
426         * parport_pc.c (parport_SPP_supported): Warn more about possibly
427         incorrect parameters.
428
429 2000-06-15  Tim Waugh  <twaugh@redhat.com>
430
431         * parport_pc.c (parport_ECP_supported): Set PARPORT_MODE_COMPAT
432         for ECP ports, since they can all do hardware accelerated
433         compatibility mode (I assume).
434
435 2000-06-13  Tim Waugh  <twaugh@redhat.com>
436
437         * parport_pc.c (cleanup_module): Remark about possible bugs.
438
439 2000-06-13  Tim Waugh  <twaugh@redhat.com>
440
441         * procfs.c: Break 'hardware' out into separate files.
442
443 2000-05-28  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
444
445         * Fix PCI ID printk for non-superio PCI cards.
446
447 2000-05-28  Tim Waugh  <twaugh@redhat.com>
448
449         * share.c (call_driver_chain): Get the driverlist_lock.
450         (parport_register_device): Make sure that port->devices always
451         looks consistent.
452         (parport_register_driver): Ensure that parport drivers are given
453         parameters that are valid for the duration of the callback by
454         locking the portlist against changes.
455         (parport_unregister_driver): Likewise.
456         (parport_claim): Don't overwrite flags.
457
458 2000-05-28  Tim Waugh  <twaugh@redhat.com>
459
460         * daisy.c (assign_addrs): Avoid double-probing daisy-chain devices
461         if the first probe succeeds.
462
463 2000-05-16  Tim Waugh  <twaugh@redhat.com>
464
465         * share.c (parport_claim): Fix SMP race.
466
467 2000-05-15  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
468
469         * parport_pc.c (parport_pc_compat_write_block_pio): Check for
470         timeouts.
471         (parport_pc_ecp_write_block_pio): Likewise.
472         (parport_pc_ecp_read_block_pio): Likewise.
473
474 2000-05-02  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
475
476         * parport_pc.c: PCI SYBA patch and verbose PCI detection.
477
478 2000-05-02  Gunther Mayer  <gunther.mayer@braunschweig.okersurf.de>
479
480         * parport_pc.c (decode_smsc): Fix SMSC 665/666 identification.
481
482 2000-04-28  Tim Waugh  <twaugh@redhat.com>
483
484         * ieee1284.c: Short function descriptions can't be multiline.
485
486         * daisy.c: Short function descriptions can't be multiline.
487
488 2000-04-19  Tim Waugh  <twaugh@redhat.com>
489
490         * parport_pc.c (parport_pc_fifo_write_block_dma): Make maxlen
491         calculation a bit clearer.
492
493         * ieee1284.c (parport_negotiate): Turn on data line drivers.
494
495         * ieee1284_ops.c (parport_ieee1284_read_byte): Turn off data line
496         drivers.
497         (parport_ieee1284_write_compat): Turn on data line drivers.
498
499         * daisy.c (assign_addrs): Turn on data line drivers.
500         (cpp_mux): Likewise.
501         (cpp_daisy): Likewise.
502
503 2000-04-04  Tim Waugh  <twaugh@redhat.com>
504
505         * parport_pc.c: Add support for another PCI card.
506
507 2000-04-04  Tim Waugh  <twaugh@redhat.com>
508
509         * daisy.c: Documentation in kernel-doc format.
510
511         * ieee1284.c: Likewise.
512
513         * share.c: Likewise.
514
515 2000-04-01  Tim Waugh  <twaugh@redhat.com>
516
517         * share.c (parport_register_device): Need to hold the module
518         reference counts before sleeping.
519
520 2000-03-27  Tim Waugh  <twaugh@redhat.com>
521
522         * parport_pc.c (parport_pc_ecp_read_block_pio): Correct operation
523         when peripheral is trying to send data when we stop listening.
524
525 2000-03-22  Tim Waugh  <twaugh@redhat.com>
526
527         * init.c (parport_setup): Fix return value.
528
529 2000-03-21  Tim Waugh  <twaugh@redhat.com>
530
531         * parport_pc.c (parport_pc_pci_probe): Fix return value; call
532         pci_enable_device.
533
534 2000-03-16  Tim Waugh  <twaugh@redhat.com>
535
536         * parport_pc.c (parport_ECP_supported): This seems to trigger on
537         machines that don't have an IRQ conflict; toned down the warning
538         message accordingly.
539
540 2000-03-16  Gunther Mayer  <gunther.mayer@braunschweig.netsurf.de>
541
542         * parport_pc.c (show_parconfig_smsc37c669): Fix typo.
543         (decode_winbond): More IDs.
544         (winbond_check): Protect against false positives.
545         (winbond_check2): Likewise.
546         (smsc_check): Likewise.
547
548 2000-03-15  Tim Waugh  <twaugh@redhat.com>
549
550         * parport_pc.c (cleanup_module): Don't call pci_unregister_driver
551         if we didn't call pci_register_driver first.
552
553 2000-03-13  Tim Waugh  <twaugh@redhat.com>
554
555         * parport_pc.c (parport_pc_init): Moved from asm/parport.h.
556
557         * Config.in: CONFIG_PARPORT_PC_SUPERIO: new option.
558
559         * parport_pc.c (show_parconfig_smsc37c669): Make __devinit.
560         (show_parconfig_winbond): Likewise.
561         (decode_winbond): Likewise.
562         (decode_smsc): Likewise.
563         (winbond_check): Likewise.
564         (winbond_check2): Likewise.
565         (smsc_check): Likewise.
566         (detect_and_report_winbond): Likewise.
567         (detect_and_report_smsc): Likewise.
568         (get_superio_dma): Likewise.
569         (get_superio_irq): Likewise.
570         (parport_pc_find_isa_ports): New function.
571         (parport_pc_find_ports): New function.
572         (init_module): Make superio a config option, not a parameter.
573
574 2000-03-10  Tim Waugh  <twaugh@redhat.com>
575
576         * parport_pc.c (decode_winbond): Use correct 83877ATF chip ID.
577         (decode_winbond): Fix typo.
578
579 2000-03-09  Tim Waugh  <twaugh@redhat.com>
580
581         * parport_pc.c: Integrate SuperIO PCI probe with normal PCI card
582         probe, so that the MODULE_DEVICE_TABLE is complete.
583