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